LLM-Bridge 2.0.4__tar.gz → 2.0.6__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.4 → llm_bridge-2.0.6}/PKG-INFO +8 -8
  2. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/README.md +7 -7
  3. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/claude/non_stream_claude_client.py +1 -0
  4. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/claude/stream_claude_client.py +1 -0
  5. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/claude_client.py +4 -1
  6. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/claude_client_factory.py +12 -5
  7. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/resources/model_prices.json +3 -9
  8. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/pyproject.toml +1 -1
  9. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/single/config.py +7 -12
  10. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/uv.lock +1 -1
  11. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.gitattributes +0 -0
  12. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.github/workflows/pypi-publish.yaml +0 -0
  13. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.github/workflows/python-test.yaml +0 -0
  14. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.gitignore +0 -0
  15. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.run/batch.run.xml +0 -0
  16. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.run/pytest.run.xml +0 -0
  17. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/.run/single.run.xml +0 -0
  18. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/LICENSE +0 -0
  19. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/MANIFEST.in +0 -0
  20. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/__init__.py +0 -0
  21. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/__init__.py +0 -0
  22. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/chat_client.py +0 -0
  23. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/__init__.py +0 -0
  24. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/claude/__init__.py +0 -0
  25. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/claude/claude_response_handler.py +0 -0
  26. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/claude/claude_token_counter.py +0 -0
  27. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/gemini/__init__.py +0 -0
  28. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/gemini/gemini_response_handler.py +0 -0
  29. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/gemini/gemini_token_counter.py +0 -0
  30. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/gemini/non_stream_gemini_client.py +0 -0
  31. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/gemini/stream_gemini_client.py +0 -0
  32. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_completion/__init__.py +0 -0
  33. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_completion/non_stream_openai_completion_client.py +0 -0
  34. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_completion/stream_openai_completion_client.py +0 -0
  35. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_responses/__init__.py +0 -0
  36. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_responses/non_stream_openai_responses_client.py +0 -0
  37. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_responses/openai_responses_response_handler.py +0 -0
  38. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/openai_responses/stream_openai_responses_client.py +0 -0
  39. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/xai/__init__.py +0 -0
  40. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/xai/non_stream_xai_client.py +0 -0
  41. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/xai/stream_xai_client.py +0 -0
  42. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/implementations/xai/xai_response_handler.py +0 -0
  43. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/__init__.py +0 -0
  44. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/gemini_client.py +0 -0
  45. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/openai_completion_client.py +0 -0
  46. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/openai_responses_client.py +0 -0
  47. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/client/model_client/xai_client.py +0 -0
  48. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/__init__.py +0 -0
  49. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/__init__.py +0 -0
  50. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/chat_client_factory.py +0 -0
  51. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/chat_message_converter.py +0 -0
  52. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/media_processor.py +0 -0
  53. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/__init__.py +0 -0
  54. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/gemini_client_factory.py +0 -0
  55. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/openai_completion_client_factory.py +0 -0
  56. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/openai_responses_client_factory.py +0 -0
  57. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_client_factory/xai_client_factory.py +0 -0
  58. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/__init__.py +0 -0
  59. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/claude_message_converter.py +0 -0
  60. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/gemini_message_converter.py +0 -0
  61. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/openai_completion_message_converter.py +0 -0
  62. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/openai_responses_message_converter.py +0 -0
  63. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/chat_generate/model_message_converter/xai_message_converter.py +0 -0
  64. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/file_fetch.py +0 -0
  65. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/message_process/__init__.py +0 -0
  66. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/message_process/code_file_extensions.py +0 -0
  67. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/message_process/document_processor.py +0 -0
  68. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/message_process/file_type_checker.py +0 -0
  69. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/message_process/message_processor.py +0 -0
  70. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/logic/model_prices.py +0 -0
  71. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/resources/__init__.py +0 -0
  72. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/__init__.py +0 -0
  73. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/chat_response.py +0 -0
  74. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/message.py +0 -0
  75. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/__init__.py +0 -0
  76. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/claude_message.py +0 -0
  77. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/gemini_message.py +0 -0
  78. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/openai_completion_message.py +0 -0
  79. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/openai_responses_message.py +0 -0
  80. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/model_message/xai_message.py +0 -0
  81. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/llm_bridge/type/serializer.py +0 -0
  82. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/tests/__init__.py +0 -0
  83. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/tests/file_type_checker_test.py +0 -0
  84. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/tests/model_prices_test.py +0 -0
  85. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/.env.example +0 -0
  86. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/__init__.py +0 -0
  87. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/batch/__init__.py +0 -0
  88. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/batch/batch.py +0 -0
  89. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/batch/config.py +0 -0
  90. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/keys.py +0 -0
  91. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/messages.py +0 -0
  92. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/single/__init__.py +0 -0
  93. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/single/single.py +0 -0
  94. {llm_bridge-2.0.4 → llm_bridge-2.0.6}/usage/workflow.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: LLM-Bridge
3
- Version: 2.0.4
3
+ Version: 2.0.6
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
@@ -40,13 +40,13 @@ PyPI: [https://pypi.org/project/LLM-Bridge/](https://pypi.org/project/LLM-Bridge
40
40
 
41
41
  The features listed represent the maximum capabilities of each API type supported by LLM Bridge.
42
42
 
43
- | API Type | Input Format | Capabilities | Output Format |
44
- |-----------------------|--------------------------------------------------|---------------------------------------------------------|-------------------|
45
- | OpenAI Completion API | Text, Image, PDF | Thinking, Structured Output | Text |
46
- | OpenAI Responses API | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, Image |
47
- | Google GenAI | Text, Image, PDF, Audio, Video | Thinking, Web Search, Code Execution, Structured Output | Text, Image, File |
48
- | Anthropic | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, File |
49
- | xAI | Text, Image, PDF, Audio, Video, docx, xlsx, pptx | Thinking, Web Search, Code Execution, Structured Output | Text |
43
+ | API Type | Input Format | Capabilities | Output Format |
44
+ |-----------------------|--------------------------------------------------|--------------------------------------------------------------------|-------------------|
45
+ | OpenAI Completion API | Text, Image, PDF | Thinking, Structured Output | Text |
46
+ | OpenAI Responses API | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, Image |
47
+ | Google GenAI | Text, Image, PDF, Audio, Video | Thinking, Web Search, Web Fetch, Code Execution, Structured Output | Text, Image, File |
48
+ | Anthropic | Text, Image, PDF | Thinking, Web Search, Web Fetch, Code Execution, Structured Output | Text, File |
49
+ | xAI | Text, Image, PDF, Audio, Video, docx, xlsx, pptx | Thinking, Web Search, Code Execution, Structured Output | Text |
50
50
 
51
51
  ## Development
52
52
 
@@ -17,13 +17,13 @@ PyPI: [https://pypi.org/project/LLM-Bridge/](https://pypi.org/project/LLM-Bridge
17
17
 
18
18
  The features listed represent the maximum capabilities of each API type supported by LLM Bridge.
19
19
 
20
- | API Type | Input Format | Capabilities | Output Format |
21
- |-----------------------|--------------------------------------------------|---------------------------------------------------------|-------------------|
22
- | OpenAI Completion API | Text, Image, PDF | Thinking, Structured Output | Text |
23
- | OpenAI Responses API | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, Image |
24
- | Google GenAI | Text, Image, PDF, Audio, Video | Thinking, Web Search, Code Execution, Structured Output | Text, Image, File |
25
- | Anthropic | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, File |
26
- | xAI | Text, Image, PDF, Audio, Video, docx, xlsx, pptx | Thinking, Web Search, Code Execution, Structured Output | Text |
20
+ | API Type | Input Format | Capabilities | Output Format |
21
+ |-----------------------|--------------------------------------------------|--------------------------------------------------------------------|-------------------|
22
+ | OpenAI Completion API | Text, Image, PDF | Thinking, Structured Output | Text |
23
+ | OpenAI Responses API | Text, Image, PDF | Thinking, Web Search, Code Execution, Structured Output | Text, Image |
24
+ | Google GenAI | Text, Image, PDF, Audio, Video | Thinking, Web Search, Web Fetch, Code Execution, Structured Output | Text, Image, File |
25
+ | Anthropic | Text, Image, PDF | Thinking, Web Search, Web Fetch, Code Execution, Structured Output | Text, File |
26
+ | xAI | Text, Image, PDF, Audio, Video, docx, xlsx, pptx | Thinking, Web Search, Code Execution, Structured Output | Text |
27
27
 
28
28
  ## Development
29
29
 
@@ -23,6 +23,7 @@ class NonStreamClaudeClient(ClaudeClient):
23
23
  messages=serialize(self.messages),
24
24
  betas=self.betas,
25
25
  tools=self.tools,
26
+ cache_control=self.cache_control,
26
27
  thinking=self.thinking,
27
28
  output_config=self.output_config,
28
29
  )
@@ -25,6 +25,7 @@ class StreamClaudeClient(ClaudeClient):
25
25
  messages=serialize(self.messages),
26
26
  betas=self.betas,
27
27
  tools=self.tools,
28
+ cache_control=self.cache_control,
28
29
  thinking=self.thinking,
29
30
  output_config=self.output_config,
30
31
  ) as stream:
@@ -3,7 +3,8 @@ from typing import AsyncGenerator
3
3
  import anthropic
4
4
  from anthropic import Omit
5
5
  from anthropic.types import AnthropicBetaParam
6
- from anthropic.types.beta import BetaToolUnionParam, BetaOutputConfigParam, BetaThinkingConfigParam
6
+ from anthropic.types.beta import BetaToolUnionParam, BetaOutputConfigParam, BetaThinkingConfigParam, \
7
+ BetaCacheControlEphemeralParam
7
8
 
8
9
  from llm_bridge.client.chat_client import ChatClient
9
10
  from llm_bridge.type.chat_response import ChatResponse
@@ -21,6 +22,7 @@ class ClaudeClient(ChatClient):
21
22
  max_tokens: int,
22
23
  betas: list[AnthropicBetaParam],
23
24
  tools: list[BetaToolUnionParam],
25
+ cache_control: BetaCacheControlEphemeralParam,
24
26
  thinking: BetaThinkingConfigParam | Omit,
25
27
  output_config: BetaOutputConfigParam | Omit,
26
28
  ):
@@ -32,6 +34,7 @@ class ClaudeClient(ChatClient):
32
34
  self.max_tokens = max_tokens
33
35
  self.betas = betas
34
36
  self.tools = tools
37
+ self.cache_control = cache_control
35
38
  self.thinking = thinking
36
39
  self.output_config = output_config
37
40
 
@@ -3,9 +3,10 @@ from typing import Any
3
3
  import anthropic
4
4
  from anthropic import Omit, transform_schema
5
5
  from anthropic.types import AnthropicBetaParam
6
- from anthropic.types.beta import BetaWebSearchTool20250305Param, BetaToolUnionParam, BetaCodeExecutionTool20250825Param, \
6
+ from anthropic.types.beta import BetaWebSearchTool20250305Param, BetaToolUnionParam, \
7
7
  BetaJSONOutputFormatParam, BetaOutputConfigParam, BetaThinkingConfigParam, BetaThinkingConfigEnabledParam, \
8
- BetaThinkingConfigAdaptiveParam
8
+ BetaThinkingConfigAdaptiveParam, BetaWebFetchTool20260209Param, BetaCitationsConfigParam, \
9
+ BetaCacheControlEphemeralParam
9
10
 
10
11
  from llm_bridge.client.implementations.claude.claude_token_counter import count_claude_input_tokens
11
12
  from llm_bridge.client.implementations.claude.non_stream_claude_client import NonStreamClaudeClient
@@ -54,6 +55,8 @@ async def create_claude_client(
54
55
  context_window - input_tokens,
55
56
  )
56
57
 
58
+ cache_control = BetaCacheControlEphemeralParam(type="ephemeral")
59
+
57
60
  thinking: BetaThinkingConfigParam | Omit = omit
58
61
  if thought:
59
62
  if model in ["claude-opus-4-7", "claude-opus-4-6", "claude-sonnet-4-6"]:
@@ -83,9 +86,11 @@ async def create_claude_client(
83
86
  )
84
87
  if code_execution:
85
88
  tools.append(
86
- BetaCodeExecutionTool20250825Param(
87
- type="code_execution_20250825",
88
- name="code_execution",
89
+ # Code Execution auto-injected
90
+ BetaWebFetchTool20260209Param(
91
+ type="web_fetch_20260209",
92
+ name="web_fetch",
93
+ citations=BetaCitationsConfigParam(enabled=True)
89
94
  )
90
95
  )
91
96
 
@@ -108,6 +113,7 @@ async def create_claude_client(
108
113
  max_tokens=max_tokens,
109
114
  betas=betas,
110
115
  tools=tools,
116
+ cache_control=cache_control,
111
117
  thinking=thinking,
112
118
  output_config=output_config,
113
119
  )
@@ -121,6 +127,7 @@ async def create_claude_client(
121
127
  max_tokens=max_tokens,
122
128
  betas=betas,
123
129
  tools=tools,
130
+ cache_control=cache_control,
124
131
  thinking=thinking,
125
132
  output_config=output_config,
126
133
  )
@@ -1,15 +1,9 @@
1
1
  [
2
2
  {
3
3
  "apiType": "Grok",
4
- "model": "grok-4.20-reasoning",
5
- "input": 0.4,
6
- "output": 25
7
- },
8
- {
9
- "apiType": "Grok",
10
- "model": "grok-4.20-non-reasoning",
11
- "input": 0.4,
12
- "output": 25
4
+ "model": "grok-4.3",
5
+ "input": 1.25,
6
+ "output": 2.5
13
7
  },
14
8
  {
15
9
  "apiType": "OpenAI",
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "LLM-Bridge"
7
- version = "2.0.4"
7
+ version = "2.0.6"
8
8
  dependencies = [
9
9
  "fastapi",
10
10
  "httpx",
@@ -131,10 +131,10 @@ messages = [
131
131
  # Content(type=ContentType.Text, data="What's the weather in NYC today?"),
132
132
 
133
133
  # URL Context
134
- # Content(type=ContentType.Text, data="What is in https://www.windsnow1025.com/"),
134
+ Content(type=ContentType.Text, data="What is in https://www.windsnow1025.com/"),
135
135
 
136
136
  # Code Execution
137
- Content(type=ContentType.Text, data="What is the sum of the first 50 prime numbers? Generate and run code for the calculation, and make sure you get all 50."),
137
+ # Content(type=ContentType.Text, data="What is the sum of the first 50 prime numbers? Generate and run code for the calculation, and make sure you get all 50."),
138
138
 
139
139
  # Structured Output
140
140
  # Content(type=ContentType.Text, data="Please generate a product."),
@@ -162,29 +162,24 @@ messages = [
162
162
 
163
163
  # See /llm_bridge/resources/model_prices.json for available models
164
164
  # model = "gpt-5.4-mini"
165
- # model = "gpt-5.2"
166
- # model = "gpt-5.1"
167
165
  # model = "gpt-5.4"
168
- model = "gpt-5.4-pro"
169
- # model = "gpt-5"
166
+ # model = "gpt-5.4-pro"
170
167
  # model = "gpt-4.1"
171
- # model = "gpt-5-codex"
172
- # model = "gemini-3-pro-preview"
168
+ # model = "gemini-3.1-pro-preview"
173
169
  # model = "gemini-3-pro-image-preview"
174
170
  # model = "gemini-3.1-flash-image-preview"
175
171
  # model = "gemini-3-flash-preview"
176
172
  # model = "claude-sonnet-4-6"
177
- # model = "grok-4.20-reasoning"
178
- # model = "grok-4.20-non-reasoning"
173
+ model = "grok-4.3"
179
174
 
180
175
  # api_type = "Vertex AI"
181
176
  # api_type = "Google AI Studio Free Tier"
182
177
  # api_type = "Google AI Studio"
183
- api_type = "OpenAI"
178
+ # api_type = "OpenAI"
184
179
  # api_type = "OpenAI-Azure"
185
180
  # api_type = "OpenAI-GitHub"
186
181
  # api_type = "Claude"
187
- # api_type = "Grok"
182
+ api_type = "Grok"
188
183
 
189
184
  temperature = 0
190
185
  stream = True
@@ -748,7 +748,7 @@ wheels = [
748
748
 
749
749
  [[package]]
750
750
  name = "llm-bridge"
751
- version = "2.0.4"
751
+ version = "2.0.6"
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