LLM-Bridge 2.0.7__tar.gz → 2.0.8__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 (94) hide show
  1. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/PKG-INFO +1 -1
  2. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/claude/non_stream_claude_client.py +0 -1
  3. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/claude/stream_claude_client.py +0 -1
  4. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/claude_client.py +0 -2
  5. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/claude_client_factory.py +2 -13
  6. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/resources/model_prices.json +7 -19
  7. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/pyproject.toml +1 -1
  8. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/single/config.py +1 -1
  9. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/uv.lock +1 -1
  10. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.gitattributes +0 -0
  11. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.github/workflows/pypi-publish.yaml +0 -0
  12. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.github/workflows/python-test.yaml +0 -0
  13. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.gitignore +0 -0
  14. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.run/batch.run.xml +0 -0
  15. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.run/pytest.run.xml +0 -0
  16. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/.run/single.run.xml +0 -0
  17. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/LICENSE +0 -0
  18. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/MANIFEST.in +0 -0
  19. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/README.md +0 -0
  20. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/__init__.py +0 -0
  21. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/__init__.py +0 -0
  22. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/chat_client.py +0 -0
  23. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/__init__.py +0 -0
  24. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/claude/__init__.py +0 -0
  25. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/claude/claude_response_handler.py +0 -0
  26. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/claude/claude_token_counter.py +0 -0
  27. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/gemini/__init__.py +0 -0
  28. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/gemini/gemini_response_handler.py +0 -0
  29. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/gemini/gemini_token_counter.py +0 -0
  30. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/gemini/non_stream_gemini_client.py +0 -0
  31. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/gemini/stream_gemini_client.py +0 -0
  32. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_completion/__init__.py +0 -0
  33. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_completion/non_stream_openai_completion_client.py +0 -0
  34. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_completion/stream_openai_completion_client.py +0 -0
  35. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_responses/__init__.py +0 -0
  36. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_responses/non_stream_openai_responses_client.py +0 -0
  37. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_responses/openai_responses_response_handler.py +0 -0
  38. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/openai_responses/stream_openai_responses_client.py +0 -0
  39. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/xai/__init__.py +0 -0
  40. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/xai/non_stream_xai_client.py +0 -0
  41. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/xai/stream_xai_client.py +0 -0
  42. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/implementations/xai/xai_response_handler.py +0 -0
  43. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/__init__.py +0 -0
  44. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/gemini_client.py +0 -0
  45. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/openai_completion_client.py +0 -0
  46. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/openai_responses_client.py +0 -0
  47. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/client/model_client/xai_client.py +0 -0
  48. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/__init__.py +0 -0
  49. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/__init__.py +0 -0
  50. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/chat_client_factory.py +0 -0
  51. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/chat_message_converter.py +0 -0
  52. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/media_processor.py +0 -0
  53. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/__init__.py +0 -0
  54. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/gemini_client_factory.py +0 -0
  55. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/openai_completion_client_factory.py +0 -0
  56. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/openai_responses_client_factory.py +0 -0
  57. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_client_factory/xai_client_factory.py +0 -0
  58. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/__init__.py +0 -0
  59. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/claude_message_converter.py +0 -0
  60. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/gemini_message_converter.py +0 -0
  61. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/openai_completion_message_converter.py +0 -0
  62. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/openai_responses_message_converter.py +0 -0
  63. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/chat_generate/model_message_converter/xai_message_converter.py +0 -0
  64. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/file_fetch.py +0 -0
  65. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/message_process/__init__.py +0 -0
  66. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/message_process/code_file_extensions.py +0 -0
  67. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/message_process/document_processor.py +0 -0
  68. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/message_process/file_type_checker.py +0 -0
  69. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/message_process/message_processor.py +0 -0
  70. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/logic/model_prices.py +0 -0
  71. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/resources/__init__.py +0 -0
  72. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/__init__.py +0 -0
  73. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/chat_response.py +0 -0
  74. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/message.py +0 -0
  75. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/__init__.py +0 -0
  76. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/claude_message.py +0 -0
  77. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/gemini_message.py +0 -0
  78. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/openai_completion_message.py +0 -0
  79. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/openai_responses_message.py +0 -0
  80. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/model_message/xai_message.py +0 -0
  81. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/llm_bridge/type/serializer.py +0 -0
  82. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/tests/__init__.py +0 -0
  83. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/tests/file_type_checker_test.py +0 -0
  84. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/tests/model_prices_test.py +0 -0
  85. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/.env.example +0 -0
  86. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/__init__.py +0 -0
  87. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/batch/__init__.py +0 -0
  88. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/batch/batch.py +0 -0
  89. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/batch/config.py +0 -0
  90. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/keys.py +0 -0
  91. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/messages.py +0 -0
  92. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/single/__init__.py +0 -0
  93. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/single/single.py +0 -0
  94. {llm_bridge-2.0.7 → llm_bridge-2.0.8}/usage/workflow.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: LLM-Bridge
3
- Version: 2.0.7
3
+ Version: 2.0.8
4
4
  Summary: A library that wraps multiple LLM providers into a consistent API while using each provider's native SDK internally, supporting multimodal I/O, file processing, and stream output.
5
5
  Author-email: windsnow1025 <windsnow1025@gmail.com>
6
6
  License-Expression: MIT
@@ -18,7 +18,6 @@ class NonStreamClaudeClient(ClaudeClient):
18
18
  message = await self.client.beta.messages.create(
19
19
  model=self.model,
20
20
  max_tokens=self.max_tokens,
21
- temperature=self.temperature,
22
21
  system=self.system,
23
22
  messages=serialize(self.messages),
24
23
  betas=self.betas,
@@ -20,7 +20,6 @@ class StreamClaudeClient(ClaudeClient):
20
20
  async with self.client.beta.messages.stream(
21
21
  model=self.model,
22
22
  max_tokens=self.max_tokens,
23
- temperature=self.temperature,
24
23
  system=self.system,
25
24
  messages=serialize(self.messages),
26
25
  betas=self.betas,
@@ -16,7 +16,6 @@ class ClaudeClient(ChatClient):
16
16
  self,
17
17
  model: str,
18
18
  messages: list[ClaudeMessage],
19
- temperature: float,
20
19
  system: str,
21
20
  client: anthropic.AsyncAnthropic,
22
21
  max_tokens: int,
@@ -28,7 +27,6 @@ class ClaudeClient(ChatClient):
28
27
  ):
29
28
  self.model = model
30
29
  self.messages = messages
31
- self.temperature = temperature
32
30
  self.system = system
33
31
  self.client = client
34
32
  self.max_tokens = max_tokens
@@ -46,9 +46,7 @@ async def create_claude_client(
46
46
  messages=claude_messages,
47
47
  )
48
48
 
49
- context_window = 200_000
50
- if model in ["claude-opus-4-8", "claude-opus-4-7", "claude-opus-4-6", "claude-sonnet-4-6", "claude-sonnet-4-5"]:
51
- context_window = 1_000_000
49
+ context_window = 1_000_000
52
50
  max_output = 64_000
53
51
  max_tokens = min(
54
52
  max_output,
@@ -59,14 +57,7 @@ async def create_claude_client(
59
57
 
60
58
  thinking: BetaThinkingConfigParam | Omit = omit
61
59
  if thought:
62
- if model in ["claude-opus-4-8", "claude-opus-4-7", "claude-opus-4-6", "claude-sonnet-4-6"]:
63
- thinking = BetaThinkingConfigAdaptiveParam(type="adaptive", display="summarized")
64
- else:
65
- thinking = BetaThinkingConfigEnabledParam(
66
- type="enabled",
67
- budget_tokens=max(1024, max_tokens // 2), # Minimum budget tokens: 1024
68
- )
69
- temperature = 1
60
+ thinking = BetaThinkingConfigAdaptiveParam(type="adaptive", display="summarized")
70
61
 
71
62
  betas: list[AnthropicBetaParam] = [
72
63
  "context-1m-2025-08-07",
@@ -107,7 +98,6 @@ async def create_claude_client(
107
98
  return StreamClaudeClient(
108
99
  model=model,
109
100
  messages=claude_messages,
110
- temperature=temperature,
111
101
  system=system,
112
102
  client=client,
113
103
  max_tokens=max_tokens,
@@ -121,7 +111,6 @@ async def create_claude_client(
121
111
  return NonStreamClaudeClient(
122
112
  model=model,
123
113
  messages=claude_messages,
124
- temperature=temperature,
125
114
  system=system,
126
115
  client=client,
127
116
  max_tokens=max_tokens,
@@ -47,6 +47,12 @@
47
47
  "input": 2,
48
48
  "output": 8
49
49
  },
50
+ {
51
+ "apiType": "Claude",
52
+ "model": "claude-fable-5",
53
+ "input": 10,
54
+ "output": 50
55
+ },
50
56
  {
51
57
  "apiType": "Claude",
52
58
  "model": "claude-opus-4-8",
@@ -59,7 +65,7 @@
59
65
  "input": 5,
60
66
  "output": 25
61
67
  },
62
- {
68
+ {
63
69
  "apiType": "Claude",
64
70
  "model": "claude-opus-4-6",
65
71
  "input": 5,
@@ -71,24 +77,6 @@
71
77
  "input": 3,
72
78
  "output": 15
73
79
  },
74
- {
75
- "apiType": "Claude",
76
- "model": "claude-opus-4-5",
77
- "input": 5,
78
- "output": 25
79
- },
80
- {
81
- "apiType": "Claude",
82
- "model": "claude-sonnet-4-5",
83
- "input": 6,
84
- "output": 22.5
85
- },
86
- {
87
- "apiType": "Claude",
88
- "model": "claude-haiku-4-5",
89
- "input": 1,
90
- "output": 5
91
- },
92
80
  {
93
81
  "apiType": "Vertex AI",
94
82
  "model": "gemini-3.1-pro-preview",
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "LLM-Bridge"
7
- version = "2.0.7"
7
+ version = "2.0.8"
8
8
  dependencies = [
9
9
  "fastapi",
10
10
  "httpx",
@@ -169,7 +169,7 @@ messages = [
169
169
  # model = "gemini-3-pro-image-preview"
170
170
  # model = "gemini-3.1-flash-image-preview"
171
171
  # model = "gemini-3-flash-preview"
172
- model = "claude-opus-4-8"
172
+ model = "claude-fable-5"
173
173
  # model = "grok-4.3"
174
174
 
175
175
  # api_type = "Vertex AI"
@@ -748,7 +748,7 @@ wheels = [
748
748
 
749
749
  [[package]]
750
750
  name = "llm-bridge"
751
- version = "2.0.7"
751
+ version = "2.0.8"
752
752
  source = { editable = "." }
753
753
  dependencies = [
754
754
  { name = "anthropic" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes