vectorvein 0.2.51__tar.gz → 0.2.52__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 (66) hide show
  1. {vectorvein-0.2.51 → vectorvein-0.2.52}/PKG-INFO +1 -1
  2. {vectorvein-0.2.51 → vectorvein-0.2.52}/pyproject.toml +1 -1
  3. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/openai_compatible_client.py +0 -15
  4. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/utils.py +16 -17
  5. {vectorvein-0.2.51 → vectorvein-0.2.52}/README.md +0 -0
  6. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/__init__.py +0 -0
  7. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/__init__.py +0 -0
  8. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/client.py +0 -0
  9. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/exceptions.py +0 -0
  10. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/models.py +0 -0
  11. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/__init__.py +0 -0
  12. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/anthropic_client.py +0 -0
  13. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/baichuan_client.py +0 -0
  14. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/base_client.py +0 -0
  15. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/deepseek_client.py +0 -0
  16. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/ernie_client.py +0 -0
  17. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/gemini_client.py +0 -0
  18. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/groq_client.py +0 -0
  19. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/local_client.py +0 -0
  20. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/minimax_client.py +0 -0
  21. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/mistral_client.py +0 -0
  22. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/moonshot_client.py +0 -0
  23. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/openai_client.py +0 -0
  24. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/py.typed +0 -0
  25. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/qwen_client.py +0 -0
  26. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/stepfun_client.py +0 -0
  27. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/xai_client.py +0 -0
  28. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/yi_client.py +0 -0
  29. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/zhipuai_client.py +0 -0
  30. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/py.typed +0 -0
  31. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/server/token_server.py +0 -0
  32. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/settings/__init__.py +0 -0
  33. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/settings/py.typed +0 -0
  34. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/__init__.py +0 -0
  35. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/defaults.py +0 -0
  36. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/enums.py +0 -0
  37. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/exception.py +0 -0
  38. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/llm_parameters.py +0 -0
  39. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/py.typed +0 -0
  40. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/settings.py +0 -0
  41. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/media_processing.py +0 -0
  42. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/rate_limiter.py +0 -0
  43. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/retry.py +0 -0
  44. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/edge.py +0 -0
  45. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/node.py +0 -0
  46. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/port.py +0 -0
  47. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/workflow.py +0 -0
  48. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/__init__.py +0 -0
  49. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/audio_generation.py +0 -0
  50. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/control_flows.py +0 -0
  51. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/file_processing.py +0 -0
  52. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/image_generation.py +0 -0
  53. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/llms.py +0 -0
  54. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/media_editing.py +0 -0
  55. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/media_processing.py +0 -0
  56. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/output.py +0 -0
  57. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/relational_db.py +0 -0
  58. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/text_processing.py +0 -0
  59. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/tools.py +0 -0
  60. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/triggers.py +0 -0
  61. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/vector_db.py +0 -0
  62. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/video_generation.py +0 -0
  63. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/web_crawlers.py +0 -0
  64. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/check.py +0 -0
  65. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/json_to_code.py +0 -0
  66. {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/layout.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vectorvein
3
- Version: 0.2.51
3
+ Version: 0.2.52
4
4
  Summary: VectorVein Python SDK
5
5
  Author-Email: Anderson <andersonby@163.com>
6
6
  License: MIT
@@ -17,7 +17,7 @@ description = "VectorVein Python SDK"
17
17
  name = "vectorvein"
18
18
  readme = "README.md"
19
19
  requires-python = ">=3.10"
20
- version = "0.2.51"
20
+ version = "0.2.52"
21
21
 
22
22
  [project.license]
23
23
  text = "MIT"
@@ -331,11 +331,6 @@ class OpenAICompatibleChatClient(BaseChatClient):
331
331
  else:
332
332
  max_tokens = self.model_setting.context_length - token_counts - 64
333
333
 
334
- if response_format and self.model_setting.response_format_available:
335
- self.response_format = {"response_format": response_format}
336
- else:
337
- self.response_format = {}
338
-
339
334
  self._acquire_rate_limit(self.endpoint, self.model, messages)
340
335
 
341
336
  if self.stream:
@@ -797,16 +792,6 @@ class AsyncOpenAICompatibleChatClient(BaseAsyncChatClient):
797
792
  else:
798
793
  tools_params = {}
799
794
 
800
- if response_format and self.model_setting.response_format_available:
801
- self.response_format = {"response_format": response_format}
802
- else:
803
- self.response_format = {}
804
-
805
- if stream_options:
806
- _stream_options_params = {"stream_options": stream_options}
807
- else:
808
- _stream_options_params = {}
809
-
810
795
  if max_tokens is None:
811
796
  max_output_tokens = self.model_setting.max_output_tokens
812
797
  token_counts = get_message_token_counts(messages=messages, tools=tools, model=self.model)
@@ -55,30 +55,29 @@ class ToolCallContentProcessor:
55
55
  return {}
56
56
  tool_calls_matches = re.findall(self.tool_use_re, self.content)
57
57
  if tool_calls_matches:
58
- tool_call_data = {}
59
- for match in tool_calls_matches:
58
+ tool_calls = []
59
+ for idx, match in enumerate(tool_calls_matches):
60
60
  try:
61
61
  tool_call_data = json.loads(match)
62
+ arguments = json.dumps(tool_call_data["arguments"], ensure_ascii=False)
63
+ tool_calls.append(
64
+ {
65
+ "index": idx,
66
+ "id": f"call_{idx}",
67
+ "function": {
68
+ "arguments": arguments,
69
+ "name": tool_call_data["name"],
70
+ },
71
+ "type": "function",
72
+ }
73
+ )
62
74
  except json.JSONDecodeError:
63
75
  print(f"Failed to parse tool call data:\nContent: {self.content}\nMatch: {match}")
64
76
 
65
- if not tool_call_data:
77
+ if not tool_calls:
66
78
  return {}
67
79
 
68
- arguments = json.dumps(tool_call_data["arguments"], ensure_ascii=False)
69
- return {
70
- "tool_calls": [
71
- {
72
- "index": 0,
73
- "id": "call_0",
74
- "function": {
75
- "arguments": arguments,
76
- "name": tool_call_data["name"],
77
- },
78
- "type": "function",
79
- }
80
- ]
81
- }
80
+ return {"tool_calls": tool_calls}
82
81
  else:
83
82
  return {}
84
83
 
File without changes