LLM-Bridge 2.2.2__tar.gz → 2.2.4__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 (103) hide show
  1. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/PKG-INFO +1 -1
  2. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/pyproject.toml +1 -1
  3. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/uv.lock +1 -1
  4. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.gitattributes +0 -0
  5. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.github/workflows/pypi-publish.yaml +0 -0
  6. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.github/workflows/python-test.yaml +0 -0
  7. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.gitignore +0 -0
  8. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.run/batch.run.xml +0 -0
  9. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.run/pytest.run.xml +0 -0
  10. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/.run/single.run.xml +0 -0
  11. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/LICENSE +0 -0
  12. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/README.md +0 -0
  13. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/__init__.py +0 -0
  14. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/__init__.py +0 -0
  15. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/chat_client.py +0 -0
  16. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/__init__.py +0 -0
  17. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/claude/__init__.py +0 -0
  18. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/claude/claude_response_handler.py +0 -0
  19. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/claude/claude_token_counter.py +0 -0
  20. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/claude/non_stream_claude_client.py +2 -2
  21. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/claude/stream_claude_client.py +3 -3
  22. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/gemini/__init__.py +0 -0
  23. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/gemini/gemini_response_handler.py +0 -0
  24. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/gemini/gemini_token_counter.py +0 -0
  25. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/gemini/non_stream_gemini_client.py +0 -0
  26. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/gemini/stream_gemini_client.py +0 -0
  27. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/http_error.py +0 -0
  28. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_completion/__init__.py +0 -0
  29. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_completion/non_stream_openai_completion_client.py +1 -1
  30. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_completion/stream_openai_completion_client.py +1 -1
  31. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_responses/__init__.py +0 -0
  32. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_responses/non_stream_openai_responses_client.py +0 -0
  33. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_responses/openai_responses_response_handler.py +0 -0
  34. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/openai_responses/stream_openai_responses_client.py +0 -0
  35. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/xai/__init__.py +0 -0
  36. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/xai/non_stream_xai_client.py +0 -0
  37. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/implementations/xai/stream_xai_client.py +0 -0
  38. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/__init__.py +0 -0
  39. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/claude_client.py +0 -0
  40. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/gemini_client.py +0 -0
  41. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/openai_completion_client.py +0 -0
  42. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/openai_responses_client.py +0 -0
  43. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/client/model_client/xai_client.py +0 -0
  44. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/__init__.py +0 -0
  45. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/__init__.py +0 -0
  46. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/chat_client_factory.py +0 -0
  47. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/chat_message_converter.py +0 -0
  48. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/media_processor.py +0 -0
  49. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/__init__.py +0 -0
  50. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/claude_client_factory.py +0 -0
  51. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/gemini_client_factory.py +0 -0
  52. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/openai_completion_client_factory.py +0 -0
  53. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/openai_responses_client_factory.py +0 -0
  54. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_client_factory/xai_client_factory.py +0 -0
  55. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/__init__.py +0 -0
  56. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/claude_message_converter.py +0 -0
  57. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/gemini_message_converter.py +0 -0
  58. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/openai_completion_message_converter.py +0 -0
  59. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/openai_responses_message_converter.py +0 -0
  60. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/chat_generate/model_message_converter/xai_message_converter.py +0 -0
  61. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/file_fetch.py +0 -0
  62. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/message_process/__init__.py +0 -0
  63. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/message_process/code_file_extensions.py +0 -0
  64. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/message_process/document_processor.py +0 -0
  65. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/message_process/file_type_checker.py +0 -0
  66. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/message_process/message_processor.py +0 -0
  67. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/logic/model_prices.py +0 -0
  68. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/resources/__init__.py +0 -0
  69. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/resources/model_prices.json +0 -0
  70. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/__init__.py +0 -0
  71. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/chat_response.py +0 -0
  72. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/message.py +0 -0
  73. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/__init__.py +0 -0
  74. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/claude_message.py +0 -0
  75. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/gemini_message.py +0 -0
  76. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/openai_completion_message.py +0 -0
  77. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/openai_responses_message.py +0 -0
  78. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/model_message/xai_message.py +0 -0
  79. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/llm_bridge/type/serializer.py +0 -0
  80. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/__init__.py +0 -0
  81. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/__init__.py +0 -0
  82. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/__init__.py +0 -0
  83. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/__init__.py +0 -0
  84. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/claude_message_converter_test.py +0 -0
  85. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/gemini_message_converter_test.py +0 -0
  86. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/message_factory.py +0 -0
  87. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/openai_completion_message_converter_test.py +0 -0
  88. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/openai_responses_message_converter_test.py +0 -0
  89. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/chat_generate/model_message_converter/xai_message_converter_test.py +0 -0
  90. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/message_process/__init__.py +0 -0
  91. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/message_process/file_type_checker_test.py +0 -0
  92. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/tests/logic/model_prices_test.py +0 -0
  93. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/.env.example +0 -0
  94. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/__init__.py +0 -0
  95. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/batch/__init__.py +0 -0
  96. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/batch/batch.py +0 -0
  97. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/batch/config.py +0 -0
  98. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/keys.py +0 -0
  99. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/messages.py +0 -0
  100. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/single/__init__.py +0 -0
  101. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/single/config.py +0 -0
  102. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/single/single.py +0 -0
  103. {llm_bridge-2.2.2 → llm_bridge-2.2.4}/usage/workflow.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: LLM-Bridge
3
- Version: 2.2.2
3
+ Version: 2.2.4
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
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "LLM-Bridge"
7
- version = "2.2.2"
7
+ version = "2.2.4"
8
8
  dependencies = [
9
9
  "fastapi",
10
10
  "httpx",
@@ -794,7 +794,7 @@ wheels = [
794
794
 
795
795
  [[package]]
796
796
  name = "llm-bridge"
797
- version = "2.2.2"
797
+ version = "2.2.4"
798
798
  source = { editable = "." }
799
799
  dependencies = [
800
800
  { name = "anthropic" },
File without changes
File without changes
File without changes
File without changes
@@ -14,9 +14,9 @@ class NonStreamClaudeClient(ClaudeClient):
14
14
 
15
15
  message = await self.client.beta.messages.create(
16
16
  model=self.model,
17
- max_tokens=self.max_tokens,
18
- system=self.system,
19
17
  messages=serialize(self.messages),
18
+ system=self.system,
19
+ max_tokens=self.max_tokens,
20
20
  betas=self.betas,
21
21
  tools=self.tools,
22
22
  cache_control=self.cache_control,
@@ -34,16 +34,16 @@ class StreamClaudeClient(ClaudeClient):
34
34
 
35
35
  stream: AsyncStream[BetaRawMessageStreamEvent] = await self.client.beta.messages.create(
36
36
  model=self.model,
37
- max_tokens=self.max_tokens,
38
- system=self.system,
39
37
  messages=serialize(self.messages),
38
+ system=self.system,
39
+ max_tokens=self.max_tokens,
40
+ stream=True,
40
41
  betas=self.betas,
41
42
  tools=self.tools,
42
43
  cache_control=self.cache_control,
43
44
  thinking=self.thinking,
44
45
  speed=self.speed,
45
46
  output_config=self.output_config,
46
- stream=True,
47
47
  )
48
48
  except Exception as e:
49
49
  raise_http_exception(e)
@@ -14,8 +14,8 @@ class NonStreamOpenAICompletionClient(OpenAICompletionClient):
14
14
  logging.info(f"messages: {self.messages}")
15
15
 
16
16
  completion: ChatCompletion = await self.client.chat.completions.create(
17
- messages=serialize(self.messages),
18
17
  model=self.model,
18
+ messages=serialize(self.messages),
19
19
  temperature=self.temperature,
20
20
  stream=False,
21
21
  reasoning_effort=self.reasoning_effort,
@@ -61,8 +61,8 @@ class StreamOpenAICompletionClient(OpenAICompletionClient):
61
61
  logging.info(f"messages: {self.messages}")
62
62
 
63
63
  completion: AsyncStream[ChatCompletionChunk] = await self.client.chat.completions.create(
64
- messages=serialize(self.messages),
65
64
  model=self.model,
65
+ messages=serialize(self.messages),
66
66
  temperature=self.temperature,
67
67
  stream=True,
68
68
  stream_options=ChatCompletionStreamOptionsParam(include_usage=True),
File without changes
File without changes
File without changes
File without changes
File without changes