beswarm 0.2.32__py3-none-any.whl → 0.2.33__py3-none-any.whl

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.

Potentially problematic release.


This version of beswarm might be problematic. Click here for more details.

beswarm/aient/setup.py CHANGED
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
4
4
 
5
5
  setup(
6
6
  name="aient",
7
- version="1.1.49",
7
+ version="1.1.51",
8
8
  description="Aient: The Awakening of Agent.",
9
9
  long_description=Path.open(Path("README.md"), encoding="utf-8").read(),
10
10
  long_description_content_type="text/markdown",
@@ -239,26 +239,50 @@ async def get_gemini_payload(request, engine, provider, api_key=None):
239
239
  ]
240
240
 
241
241
  if "gemini-2.5" in original_model:
242
- payload["generationConfig"]["thinkingConfig"] = {
243
- "includeThoughts": True,
244
- }
242
+ generation_config = payload.get("generationConfig", {})
245
243
  # 从请求模型名中检测思考预算设置
246
244
  m = re.match(r".*-think-(-?\d+)", request.model)
247
245
  if m:
248
246
  try:
249
247
  val = int(m.group(1))
250
- if val > 32768 and "gemini-2.5-pro" in original_model:
251
- val = 32768
252
- elif val < 128 and "gemini-2.5-pro" in original_model:
253
- val = 128
254
- elif val <= 0:
255
- val = 0
256
- elif val > 24576:
257
- val = 24576
258
- payload["generationConfig"]["thinkingConfig"]["thinkingBudget"] = val
248
+ budget = None
249
+ # gemini-2.5-pro: [128, 32768]
250
+ if "gemini-2.5-pro" in original_model:
251
+ if val < 128:
252
+ budget = 128
253
+ elif val > 32768:
254
+ budget = 32768
255
+ else: # 128 <= val <= 32768
256
+ budget = val
257
+
258
+ # gemini-2.5-flash-lite: [0] or [512, 24576]
259
+ elif "gemini-2.5-flash-lite" in original_model:
260
+ if val > 0 and val < 512:
261
+ budget = 512
262
+ elif val > 24576:
263
+ budget = 24576
264
+ else: # Includes 0 and valid range, and clamps invalid negatives
265
+ budget = val if val >= 0 else 0
266
+
267
+ # gemini-2.5-flash (and other gemini-2.5 models as a fallback): [0, 24576]
268
+ else:
269
+ if val > 24576:
270
+ budget = 24576
271
+ else: # Includes 0 and valid range, and clamps invalid negatives
272
+ budget = val if val >= 0 else 0
273
+
274
+ payload["generationConfig"]["thinkingConfig"] = {
275
+ "includeThoughts": True,
276
+ "thinkingBudget": budget
277
+ }
259
278
  except ValueError:
260
279
  # 如果转换为整数失败,忽略思考预算设置
261
280
  pass
281
+ else:
282
+ payload["generationConfig"]["thinkingConfig"] = {
283
+ "includeThoughts": True,
284
+ }
285
+ payload["generationConfig"] = generation_config
262
286
 
263
287
  # # 检测search标签
264
288
  # if request.model.endswith("-search"):
@@ -535,26 +559,48 @@ async def get_vertex_gemini_payload(request, engine, provider, api_key=None):
535
559
  payload["generationConfig"]["max_output_tokens"] = 8192
536
560
 
537
561
  if "gemini-2.5" in original_model:
538
- payload["generationConfig"]["thinkingConfig"] = {
539
- "includeThoughts": True,
540
- }
541
562
  # 从请求模型名中检测思考预算设置
542
563
  m = re.match(r".*-think-(-?\d+)", request.model)
543
564
  if m:
544
565
  try:
545
566
  val = int(m.group(1))
546
- if val > 32768 and "gemini-2.5-pro" in original_model:
547
- val = 32768
548
- elif val < 128 and "gemini-2.5-pro" in original_model:
549
- val = 128
550
- elif val <= 0:
551
- val = 0
552
- elif val > 24576:
553
- val = 24576
554
- payload["generationConfig"]["thinkingConfig"]["thinkingBudget"] = val
567
+ budget = None
568
+ # gemini-2.5-pro: [128, 32768]
569
+ if "gemini-2.5-pro" in original_model:
570
+ if val < 128:
571
+ budget = 128
572
+ elif val > 32768:
573
+ budget = 32768
574
+ else: # 128 <= val <= 32768
575
+ budget = val
576
+
577
+ # gemini-2.5-flash-lite: [0] or [512, 24576]
578
+ elif "gemini-2.5-flash-lite" in original_model:
579
+ if val > 0 and val < 512:
580
+ budget = 512
581
+ elif val > 24576:
582
+ budget = 24576
583
+ else: # Includes 0 and valid range, and clamps invalid negatives
584
+ budget = val if val >= 0 else 0
585
+
586
+ # gemini-2.5-flash (and other gemini-2.5 models as a fallback): [0, 24576]
587
+ else:
588
+ if val > 24576:
589
+ budget = 24576
590
+ else: # Includes 0 and valid range, and clamps invalid negatives
591
+ budget = val if val >= 0 else 0
592
+
593
+ payload["generationConfig"]["thinkingConfig"] = {
594
+ "includeThoughts": True,
595
+ "thinkingBudget": budget
596
+ }
555
597
  except ValueError:
556
598
  # 如果转换为整数失败,忽略思考预算设置
557
599
  pass
600
+ else:
601
+ payload["generationConfig"]["thinkingConfig"] = {
602
+ "includeThoughts": True,
603
+ }
558
604
 
559
605
  # if request.model.endswith("-search"):
560
606
  # payload["tools"] = [search_tool]
@@ -44,6 +44,8 @@ def url_to_markdown(url):
44
44
  body = body[0]
45
45
  body = Cleaner(javascript=True, style=True).clean_html(body)
46
46
  return ''.join(lxml.html.tostring(c, encoding='unicode') for c in body)
47
+ except ImportError as e:
48
+ raise e
47
49
  except Exception as e:
48
50
  # print('\033[31m')
49
51
  # print("error: url_to_markdown url", url)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: beswarm
3
- Version: 0.2.32
3
+ Version: 0.2.33
4
4
  Summary: MAS
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -21,6 +21,7 @@ Requires-Dist: pyautogui>=0.9.54
21
21
  Requires-Dist: pygments>=2.19.1
22
22
  Requires-Dist: pyperclip>=1.9.0
23
23
  Requires-Dist: pytz>=2025.2
24
+ Requires-Dist: reaktiv>=0.15.1
24
25
  Requires-Dist: requests>=2.32.3
25
26
  Requires-Dist: scipy>=1.15.3
26
27
  Requires-Dist: tqdm>=4.67.1
@@ -2,12 +2,12 @@ beswarm/__init__.py,sha256=HZjUOJtZR5QhMuDbq-wukQQn1VrBusNWai_ysGo-VVI,20
2
2
  beswarm/prompt.py,sha256=5JMfOuXWHscsaeDzwBn223mj9N85eAQdOHXQZk7zeWE,32238
3
3
  beswarm/utils.py,sha256=xxbNifOPlfcVkKmF_qFzuEnZgF3MQg3mnOfz1EF0Qss,6697
4
4
  beswarm/aient/main.py,sha256=SiYAIgQlLJqYusnTVEJOx1WNkSJKMImhgn5aWjfroxg,3814
5
- beswarm/aient/setup.py,sha256=6ISxC2o5gga4VEcbWm8MMAmzPvTEM5igOGY2s64ekI0,487
5
+ beswarm/aient/setup.py,sha256=MglF5g_LQLmX62ZgR1FmQUZanljhQx2EwLPPJjT4zac,487
6
6
  beswarm/aient/src/aient/__init__.py,sha256=SRfF7oDVlOOAi6nGKiJIUK6B_arqYLO9iSMp-2IZZps,21
7
7
  beswarm/aient/src/aient/core/__init__.py,sha256=NxjebTlku35S4Dzr16rdSqSTWUvvwEeACe8KvHJnjPg,34
8
8
  beswarm/aient/src/aient/core/log_config.py,sha256=kz2_yJv1p-o3lUQOwA3qh-LSc3wMHv13iCQclw44W9c,274
9
9
  beswarm/aient/src/aient/core/models.py,sha256=d4MISNezTSe0ls0-fjuToI2SoT-sk5fWqAJuKVinIlo,7502
10
- beswarm/aient/src/aient/core/request.py,sha256=8HlSFaBhWMs5thhL4C5qj-hvuDZWUXCYWwVShFR99QU,72263
10
+ beswarm/aient/src/aient/core/request.py,sha256=7KpHHDyu0t2g4IQGqlV_UxK0zAAjN_-CZpyd7S5pxS0,74263
11
11
  beswarm/aient/src/aient/core/response.py,sha256=-28HYKuzgfC1y7VOrYLk75_QH5yh6c1IS024yoQM0mg,35671
12
12
  beswarm/aient/src/aient/core/utils.py,sha256=NcXdb8zBN0GE01OGaUzg8U34RaraoFf2MaLDDGFvvC4,27492
13
13
  beswarm/aient/src/aient/core/test/test_base_api.py,sha256=pWnycRJbuPSXKKU9AQjWrMAX1wiLC_014Qc9hh5C2Pw,524
@@ -35,7 +35,7 @@ beswarm/aient/src/aient/plugins/read_image.py,sha256=4FbIiMNVFUQpNyiH5ApGSRvOD9u
35
35
  beswarm/aient/src/aient/plugins/readonly.py,sha256=qK5-kBM3NDH1b-otFxFHpAjV5BXEY_e7cTWBcpP7G5k,710
36
36
  beswarm/aient/src/aient/plugins/registry.py,sha256=YknzhieU_8nQ3oKlUSSWDB4X7t2Jx0JnqT2Jd9Xsvfk,3574
37
37
  beswarm/aient/src/aient/plugins/run_python.py,sha256=MohvdtZUTDLrHBDtJ9L2_Qu1pWAGrkbzsGmmn5tMN20,4614
38
- beswarm/aient/src/aient/plugins/websearch.py,sha256=LPS5NmHrY-Rc0FCPlhHrUWE90XJmXF_AvShLHTV_Zqc,15285
38
+ beswarm/aient/src/aient/plugins/websearch.py,sha256=9yImBa1s5V7Djqzx6L4naDyIsGIcf_js1LOyLX0aNHw,15338
39
39
  beswarm/aient/src/aient/plugins/write_file.py,sha256=hExFLuoNPtjYxJI3pVbofZRpokvUabpXdEkd3mZJPPc,3778
40
40
  beswarm/aient/src/aient/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
41
  beswarm/aient/src/aient/utils/prompt.py,sha256=UcSzKkFE4-h_1b6NofI6xgk3GoleqALRKY8VBaXLjmI,11311
@@ -137,7 +137,7 @@ beswarm/tools/search_arxiv.py,sha256=caVIUOzMhFu-r_gVgJZrH2EO9xI5iV_qLAg0b3Ie9Xg
137
137
  beswarm/tools/search_web.py,sha256=ybbdbJq80plooXLMiyjAMOSCEyZJ0hquGUpabBhfFx0,16195
138
138
  beswarm/tools/taskmanager.py,sha256=rVLB0xwteT-5y9svmJ68K65U3JuX9BJGvqNzyxPvjaI,12178
139
139
  beswarm/tools/worker.py,sha256=s6tN4JhA07qzTlP7xWiB0MjnBIJ6XSrtlJTA_RqG1_A,23539
140
- beswarm-0.2.32.dist-info/METADATA,sha256=DGsrqStEuzb_l0WqyPlwA0xd6aziMKtShM1YmkpC6pQ,3847
141
- beswarm-0.2.32.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
142
- beswarm-0.2.32.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
143
- beswarm-0.2.32.dist-info/RECORD,,
140
+ beswarm-0.2.33.dist-info/METADATA,sha256=76JECSt37iGRe_rmvWVqtcXfVcdL_iTfwtktCfnHKyY,3878
141
+ beswarm-0.2.33.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
142
+ beswarm-0.2.33.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
143
+ beswarm-0.2.33.dist-info/RECORD,,