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.
- {vectorvein-0.2.51 → vectorvein-0.2.52}/PKG-INFO +1 -1
- {vectorvein-0.2.51 → vectorvein-0.2.52}/pyproject.toml +1 -1
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/openai_compatible_client.py +0 -15
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/utils.py +16 -17
- {vectorvein-0.2.51 → vectorvein-0.2.52}/README.md +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/exceptions.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/api/models.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/anthropic_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/baichuan_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/base_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/deepseek_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/ernie_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/gemini_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/groq_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/local_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/minimax_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/mistral_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/moonshot_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/openai_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/py.typed +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/qwen_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/stepfun_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/xai_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/yi_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/zhipuai_client.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/py.typed +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/server/token_server.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/settings/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/settings/py.typed +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/defaults.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/enums.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/exception.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/llm_parameters.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/py.typed +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/types/settings.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/media_processing.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/rate_limiter.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/utilities/retry.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/edge.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/node.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/port.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/graph/workflow.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/__init__.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/audio_generation.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/control_flows.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/file_processing.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/image_generation.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/llms.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/media_editing.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/media_processing.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/output.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/relational_db.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/text_processing.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/tools.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/triggers.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/vector_db.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/video_generation.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/nodes/web_crawlers.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/check.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/json_to_code.py +0 -0
- {vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/workflow/utils/layout.py +0 -0
{vectorvein-0.2.51 → vectorvein-0.2.52}/src/vectorvein/chat_clients/openai_compatible_client.py
RENAMED
@@ -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
|
-
|
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
|
77
|
+
if not tool_calls:
|
66
78
|
return {}
|
67
79
|
|
68
|
-
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
File without changes
|