agent-lab-sdk 0.1.58.dev1__tar.gz → 0.1.58.dev3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/PKG-INFO +1 -1
  2. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/agw_token_manager.py +5 -1
  3. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/gigachat_token_manager.py +3 -1
  4. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/ags_token_manager.py +3 -1
  5. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/search_plugin/tools/search_image.py +10 -4
  6. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk.egg-info/PKG-INFO +1 -1
  7. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/pyproject.toml +1 -1
  8. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/LICENSE +0 -0
  9. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/README.md +0 -0
  10. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/__init__.py +0 -0
  11. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/core/__init__.py +0 -0
  12. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/core/settings.py +0 -0
  13. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/core/unified_semaphore.py +0 -0
  14. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/langgraph/checkpoint/__init__.py +0 -0
  15. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/langgraph/checkpoint/agw_saver.py +0 -0
  16. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/langgraph/checkpoint/serde.py +0 -0
  17. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/__init__.py +0 -0
  18. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/clients/__init__.py +0 -0
  19. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/clients/agent_service_client.py +0 -0
  20. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/clients/redis_client.py +0 -0
  21. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/limiting.py +0 -0
  22. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/llm.py +0 -0
  23. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/__init__.py +0 -0
  24. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/limits_manager.py +0 -0
  25. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/redis/__init__.py +0 -0
  26. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/redis/ratelimiter.py +0 -0
  27. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/managers/redis/semaphore.py +0 -0
  28. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/retry_utils.py +0 -0
  29. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/throttled.py +0 -0
  30. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/llm/token_manager_utils.py +0 -0
  31. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/metrics/__init__.py +0 -0
  32. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/metrics/create.py +0 -0
  33. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/metrics/metrics.py +0 -0
  34. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/schema/__init__.py +0 -0
  35. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/schema/input_types.py +0 -0
  36. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/schema/log_message.py +0 -0
  37. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/storage/__init__.py +0 -0
  38. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/storage/storage.py +0 -0
  39. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/storage/storage_v2.py +0 -0
  40. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/__init__.py +0 -0
  41. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/search_plugin/__init__.py +0 -0
  42. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/search_plugin/search_plugin.py +0 -0
  43. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/search_plugin/tools/__init__.py +0 -0
  44. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk/tools/search_plugin/tools/search_plugin_web_search.py +0 -0
  45. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk.egg-info/SOURCES.txt +0 -0
  46. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk.egg-info/dependency_links.txt +0 -0
  47. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk.egg-info/requires.txt +0 -0
  48. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/agent_lab_sdk.egg-info/top_level.txt +0 -0
  49. {agent_lab_sdk-0.1.58.dev1 → agent_lab_sdk-0.1.58.dev3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-lab-sdk
3
- Version: 0.1.58.dev1
3
+ Version: 0.1.58.dev3
4
4
  Summary: SDK для работы с Agent Lab
5
5
  Author-email: Andrew Ohurtsov <andermirik@yandex.com>
6
6
  License: Proprietary and Confidential — All Rights Reserved
@@ -10,6 +10,8 @@ import random
10
10
  import time
11
11
  from datetime import datetime, timedelta, timezone
12
12
 
13
+ from agent_lab_sdk.core.settings import settings
14
+
13
15
  logger = logging.getLogger(__name__)
14
16
 
15
17
  # Путь к файлу токена (можно переопределить через ENV)
@@ -68,10 +70,12 @@ class AgwTokenManager:
68
70
  raise
69
71
 
70
72
  @classmethod
71
- def get_token(cls, provider: str, token_type: Optional[str] = None) -> str:
73
+ def get_token(cls, provider: str, token_type: Optional[str] = None) -> str | None:
72
74
  """
73
75
  Возвращает валидный токен, обновляя его при необходимости.
74
76
  """
77
+ if settings.GIGACHAT_USE_MTLS:
78
+ return None
75
79
  key = "{}_{}".format(provider, token_type if token_type is not None else "default")
76
80
  # Лок между потоками
77
81
  with cls._thread_lock:
@@ -195,12 +195,14 @@ class GigaChatTokenManager:
195
195
  use_token_provider_ags: Optional[bool] = None,
196
196
  model: Optional[str] = None,
197
197
  credential_id: Optional[str] = None,
198
- ) -> str:
198
+ ) -> str | None:
199
199
  """
200
200
  Возвращает валидный токен, обновляя его при необходимости.
201
201
  Использует межпроцессную блокировку (fcntl.flock) и лок для потоков,
202
202
  чтобы избежать дублирующих запросов.
203
203
  """
204
+ if settings.GIGACHAT_USE_MTLS:
205
+ return None
204
206
  if use_token_provider_ags is None:
205
207
  use_token_provider_ags = settings.USE_TOKEN_PROVIDER_AGS
206
208
 
@@ -50,7 +50,9 @@ class AgsTokenManager:
50
50
  return new_token
51
51
 
52
52
  @classmethod
53
- def get_token_by_env(cls, model, credential_id):
53
+ def get_token_by_env(cls, model, credential_id) -> AgsTokenLimits | None:
54
+ if settings.GIGACHAT_USE_MTLS:
55
+ return None
54
56
  if settings.AGENT_SERVICE_NAME is None:
55
57
  raise ValueError(f"Переменная окружения {ENV_PREFIX}AGENT_SERVICE_NAME не установлена.")
56
58
  credential_id = credential_id or settings.GIGACHAT_CREDENTIAL_ID
@@ -4,13 +4,19 @@ from agent_lab_sdk.tools.search_plugin.search_plugin import SearchPlugin
4
4
 
5
5
  def get_search_image_tool(headers=None, additional_params=None):
6
6
  @tool
7
- def search_image(
7
+ def search_image_tool(
8
8
  text: str,
9
9
  image_limit: int
10
10
  ):
11
- """Выполняет веб-поиск картинки через Search Plugin rambler_proxy_images"""
11
+ """Выполняет веб-поиск картинки через Search Plugin и возвращает картинку в markdownю.
12
+ text - текст запроса, image_limit - максимальное количество картинок"""
12
13
 
13
14
  search_plugin = SearchPlugin()
14
15
  images = search_plugin.rambler_images_proxy(text, headers=headers, additional_params=additional_params)
15
- return list(filter(lambda image: image.url, images))[:image_limit]
16
- return search_image
16
+
17
+ content = []
18
+ i = 1
19
+ for image in images[:image_limit]:
20
+ content.append(f"![Изображение {i}]({image.url})")
21
+ return "\n".join(content)
22
+ return search_image_tool
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-lab-sdk
3
- Version: 0.1.58.dev1
3
+ Version: 0.1.58.dev3
4
4
  Summary: SDK для работы с Agent Lab
5
5
  Author-email: Andrew Ohurtsov <andermirik@yandex.com>
6
6
  License: Proprietary and Confidential — All Rights Reserved
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "agent-lab-sdk"
7
- version = "0.1.58.dev1"
7
+ version = "0.1.58.dev3"
8
8
  description = "SDK для работы с Agent Lab"
9
9
  readme = "README.md"
10
10
  license = { text = "Proprietary and Confidential — All Rights Reserved" }