argo-proxy 3.1.2__tar.gz → 3.2.1__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 (48) hide show
  1. {argo_proxy-3.1.2/src/argo_proxy.egg-info → argo_proxy-3.2.1}/PKG-INFO +5 -5
  2. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/pyproject.toml +4 -4
  3. {argo_proxy-3.1.2 → argo_proxy-3.2.1/src/argo_proxy.egg-info}/PKG-INFO +5 -5
  4. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argo_proxy.egg-info/SOURCES.txt +0 -1
  5. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argo_proxy.egg-info/requires.txt +4 -4
  6. argo_proxy-3.2.1/src/argoproxy/__init__.py +1 -0
  7. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/app.py +0 -1
  8. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/config/model.py +4 -0
  9. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/endpoints/dispatch.py +141 -428
  10. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/models.py +18 -5
  11. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/performance.py +0 -4
  12. argo_proxy-3.1.2/src/argoproxy/__init__.py +0 -1
  13. argo_proxy-3.1.2/src/argoproxy/utils/tool_calls.py +0 -263
  14. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/LICENSE +0 -0
  15. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/README.md +0 -0
  16. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/setup.cfg +0 -0
  17. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argo_proxy.egg-info/dependency_links.txt +0 -0
  18. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argo_proxy.egg-info/entry_points.txt +0 -0
  19. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argo_proxy.egg-info/top_level.txt +0 -0
  20. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/_vendor/__init__.py +0 -0
  21. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/_vendor/semver.py +0 -0
  22. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/_vendor/yaml.py +0 -0
  23. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/cli/__init__.py +0 -0
  24. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/cli/display.py +0 -0
  25. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/cli/handlers.py +0 -0
  26. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/cli/parser.py +0 -0
  27. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/config/__init__.py +0 -0
  28. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/config/interactive.py +0 -0
  29. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/config/io.py +0 -0
  30. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/config/validation.py +0 -0
  31. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/endpoints/dev_proxy.py +0 -0
  32. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/endpoints/extras.py +0 -0
  33. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/endpoints/passthrough.py +0 -0
  34. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/py.typed +0 -0
  35. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/attack_logger.py +0 -0
  36. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/image_processing.py +0 -0
  37. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/logging.py +0 -0
  38. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/misc.py +0 -0
  39. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/models.py +0 -0
  40. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/src/argoproxy/utils/transports.py +0 -0
  41. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_chat_completions.py +0 -0
  42. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_embeddings.py +0 -0
  43. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_function_calling_multiple.py +0 -0
  44. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_function_calling_single.py +0 -0
  45. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_leaked_tool_parser.py +0 -0
  46. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/test/test_model_resolution.py +0 -0
  47. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/tests/test_config_migrate.py +0 -0
  48. {argo_proxy-3.1.2 → argo_proxy-3.2.1}/tests/test_unix_socket.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: argo-proxy
3
- Version: 3.1.2
3
+ Version: 3.2.1
4
4
  Summary: Proxy server to Argo API, OpenAI format compatible
5
5
  Author-email: Peng Ding <oaklight@gmx.com>
6
6
  License-Expression: MIT
@@ -15,7 +15,7 @@ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
17
  Requires-Dist: aiohttp>=3.12.2
18
- Requires-Dist: llm-rosetta<0.7.0,>=0.6.8
18
+ Requires-Dist: llm-rosetta>=0.7.0
19
19
  Requires-Dist: pydantic>=2.11.7
20
20
  Requires-Dist: tiktoken>=0.9.0
21
21
  Requires-Dist: tqdm>=4.67.1
@@ -23,9 +23,9 @@ Requires-Dist: Pillow>=12.0.0
23
23
  Provides-Extra: dev
24
24
  Requires-Dist: dotenv>=0.9.9; extra == "dev"
25
25
  Requires-Dist: openai>=1.79.0; extra == "dev"
26
- Requires-Dist: ruff>=0.15.0; extra == "dev"
27
- Requires-Dist: ty>=0.0.31; extra == "dev"
28
- Requires-Dist: complexipy>=5.2.0; extra == "dev"
26
+ Requires-Dist: ruff==0.15.20; extra == "dev"
27
+ Requires-Dist: ty==0.0.54; extra == "dev"
28
+ Requires-Dist: complexipy==5.6.1; extra == "dev"
29
29
  Requires-Dist: build>=1.2.2.post1; extra == "dev"
30
30
  Requires-Dist: twine>=6.1.0; extra == "dev"
31
31
  Requires-Dist: httpx>=0.28.1; extra == "dev"
@@ -20,7 +20,7 @@ classifiers = [
20
20
 
21
21
  dependencies = [
22
22
  "aiohttp>=3.12.2",
23
- "llm-rosetta>=0.6.8,<0.7.0",
23
+ "llm-rosetta>=0.7.0",
24
24
  "pydantic>=2.11.7",
25
25
  "tiktoken>=0.9.0",
26
26
  "tqdm>=4.67.1",
@@ -31,9 +31,9 @@ dependencies = [
31
31
  dev = [
32
32
  "dotenv>=0.9.9",
33
33
  "openai>=1.79.0",
34
- "ruff>=0.15.0",
35
- "ty>=0.0.31",
36
- "complexipy>=5.2.0",
34
+ "ruff==0.15.20",
35
+ "ty==0.0.54",
36
+ "complexipy==5.6.1",
37
37
  "build>=1.2.2.post1",
38
38
  "twine>=6.1.0",
39
39
  "httpx>=0.28.1",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: argo-proxy
3
- Version: 3.1.2
3
+ Version: 3.2.1
4
4
  Summary: Proxy server to Argo API, OpenAI format compatible
5
5
  Author-email: Peng Ding <oaklight@gmx.com>
6
6
  License-Expression: MIT
@@ -15,7 +15,7 @@ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
17
  Requires-Dist: aiohttp>=3.12.2
18
- Requires-Dist: llm-rosetta<0.7.0,>=0.6.8
18
+ Requires-Dist: llm-rosetta>=0.7.0
19
19
  Requires-Dist: pydantic>=2.11.7
20
20
  Requires-Dist: tiktoken>=0.9.0
21
21
  Requires-Dist: tqdm>=4.67.1
@@ -23,9 +23,9 @@ Requires-Dist: Pillow>=12.0.0
23
23
  Provides-Extra: dev
24
24
  Requires-Dist: dotenv>=0.9.9; extra == "dev"
25
25
  Requires-Dist: openai>=1.79.0; extra == "dev"
26
- Requires-Dist: ruff>=0.15.0; extra == "dev"
27
- Requires-Dist: ty>=0.0.31; extra == "dev"
28
- Requires-Dist: complexipy>=5.2.0; extra == "dev"
26
+ Requires-Dist: ruff==0.15.20; extra == "dev"
27
+ Requires-Dist: ty==0.0.54; extra == "dev"
28
+ Requires-Dist: complexipy==5.6.1; extra == "dev"
29
29
  Requires-Dist: build>=1.2.2.post1; extra == "dev"
30
30
  Requires-Dist: twine>=6.1.0; extra == "dev"
31
31
  Requires-Dist: httpx>=0.28.1; extra == "dev"
@@ -33,7 +33,6 @@ src/argoproxy/utils/image_processing.py
33
33
  src/argoproxy/utils/logging.py
34
34
  src/argoproxy/utils/misc.py
35
35
  src/argoproxy/utils/models.py
36
- src/argoproxy/utils/tool_calls.py
37
36
  src/argoproxy/utils/transports.py
38
37
  test/test_chat_completions.py
39
38
  test/test_embeddings.py
@@ -1,5 +1,5 @@
1
1
  aiohttp>=3.12.2
2
- llm-rosetta<0.7.0,>=0.6.8
2
+ llm-rosetta>=0.7.0
3
3
  pydantic>=2.11.7
4
4
  tiktoken>=0.9.0
5
5
  tqdm>=4.67.1
@@ -11,9 +11,9 @@ argo-proxy[dev,test]
11
11
  [dev]
12
12
  dotenv>=0.9.9
13
13
  openai>=1.79.0
14
- ruff>=0.15.0
15
- ty>=0.0.31
16
- complexipy>=5.2.0
14
+ ruff==0.15.20
15
+ ty==0.0.54
16
+ complexipy==5.6.1
17
17
  build>=1.2.2.post1
18
18
  twine>=6.1.0
19
19
  httpx>=0.28.1
@@ -0,0 +1 @@
1
+ __version__ = "3.2.1"
@@ -92,7 +92,6 @@ async def prepare_app(app):
92
92
  # Create optimized HTTP session
93
93
  resolve_overrides = getattr(app["config"], "resolve_overrides", None)
94
94
  http_session_manager = OptimizedHTTPSession(
95
- user_agent=f"argo-proxy/{__version__}",
96
95
  resolve_overrides=resolve_overrides if resolve_overrides else None,
97
96
  **perf_config,
98
97
  )
@@ -76,6 +76,10 @@ class ArgoConfig:
76
76
  # Model list auto-refresh
77
77
  model_refresh_interval_hours: float = 24 # 0 to disable
78
78
 
79
+ # Fallback models — used when an unrecognized model name is requested
80
+ default_chat_model: str = "argo:gpt-5.4-nano"
81
+ default_embed_model: str = "argo:text-embedding-3-small"
82
+
79
83
  # Image processing settings
80
84
  enable_payload_control: bool = False # Enable automatic payload size control
81
85
  max_payload_size: int = 20 # MB default (total for all images)