vectorvein 0.2.18__tar.gz → 0.2.20__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.18 → vectorvein-0.2.20}/PKG-INFO +1 -1
- {vectorvein-0.2.18 → vectorvein-0.2.20}/pyproject.toml +1 -1
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/utils.py +18 -18
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/defaults.py +10 -2
- {vectorvein-0.2.18 → vectorvein-0.2.20}/README.md +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/api/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/api/client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/api/exceptions.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/api/models.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/anthropic_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/baichuan_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/base_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/deepseek_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/ernie_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/gemini_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/groq_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/local_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/minimax_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/mistral_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/moonshot_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/openai_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/openai_compatible_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/py.typed +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/qwen_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/stepfun_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/xai_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/yi_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/zhipuai_client.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/py.typed +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/server/token_server.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/settings/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/settings/py.typed +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/enums.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/exception.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/llm_parameters.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/py.typed +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/types/settings.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/utilities/media_processing.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/utilities/rate_limiter.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/utilities/retry.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/graph/edge.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/graph/node.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/graph/port.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/graph/workflow.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/__init__.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/audio_generation.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/control_flows.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/file_processing.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/image_generation.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/llms.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/media_editing.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/media_processing.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/output.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/relational_db.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/text_processing.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/tools.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/triggers.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/vector_db.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/video_generation.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/nodes/web_crawlers.py +0 -0
- {vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/workflow/utils/json_to_code.py +0 -0
@@ -130,10 +130,10 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
130
130
|
elif model.startswith(("gpt-4o", "o1-")):
|
131
131
|
return len(get_gpt_4o_encoding().encode(text))
|
132
132
|
elif model.startswith(("abab", "MiniMax")):
|
133
|
-
|
134
|
-
if len(
|
133
|
+
backend_setting = settings.get_backend(BackendType.MiniMax).models[model]
|
134
|
+
if len(backend_setting.endpoints) == 0:
|
135
135
|
return int(len(text) / 1.33)
|
136
|
-
endpoint_id =
|
136
|
+
endpoint_id = backend_setting.endpoints[0]
|
137
137
|
if isinstance(endpoint_id, dict):
|
138
138
|
endpoint_id = endpoint_id["endpoint_id"]
|
139
139
|
endpoint = settings.get_endpoint(endpoint_id)
|
@@ -160,10 +160,10 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
160
160
|
result = response.json()
|
161
161
|
return result["segments_num"]
|
162
162
|
elif model.startswith("moonshot"):
|
163
|
-
|
164
|
-
if len(
|
163
|
+
backend_setting = settings.get_backend(BackendType.Moonshot).models[model]
|
164
|
+
if len(backend_setting.endpoints) == 0:
|
165
165
|
return len(get_gpt_35_encoding().encode(text))
|
166
|
-
endpoint_id =
|
166
|
+
endpoint_id = backend_setting.endpoints[0]
|
167
167
|
if isinstance(endpoint_id, dict):
|
168
168
|
endpoint_id = endpoint_id["endpoint_id"]
|
169
169
|
endpoint = settings.get_endpoint(endpoint_id)
|
@@ -187,10 +187,10 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
187
187
|
result = response.json()
|
188
188
|
return result["data"]["total_tokens"]
|
189
189
|
elif model.startswith("gemini"):
|
190
|
-
|
191
|
-
if len(
|
190
|
+
backend_setting = settings.get_backend(BackendType.Gemini).models[model]
|
191
|
+
if len(backend_setting.endpoints) == 0:
|
192
192
|
return len(get_gpt_35_encoding().encode(text))
|
193
|
-
endpoint_id =
|
193
|
+
endpoint_id = backend_setting.endpoints[0]
|
194
194
|
if isinstance(endpoint_id, dict):
|
195
195
|
endpoint_id = endpoint_id["endpoint_id"]
|
196
196
|
endpoint = settings.get_endpoint(endpoint_id)
|
@@ -200,7 +200,7 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
200
200
|
if endpoint.api_base
|
201
201
|
else "https://generativelanguage.googleapis.com/v1beta"
|
202
202
|
)
|
203
|
-
base_url = f"{api_base}/models/{
|
203
|
+
base_url = f"{api_base}/models/{backend_setting.id}:countTokens"
|
204
204
|
params = {"key": endpoint.api_key}
|
205
205
|
request_body = {
|
206
206
|
"contents": {
|
@@ -222,8 +222,8 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
222
222
|
result = response.json()
|
223
223
|
return result["totalTokens"]
|
224
224
|
elif model.startswith("claude"):
|
225
|
-
|
226
|
-
for endpoint_choice in
|
225
|
+
backend_setting = settings.get_backend(BackendType.Anthropic)
|
226
|
+
for endpoint_choice in backend_setting.models[model].endpoints:
|
227
227
|
if isinstance(endpoint_choice, dict):
|
228
228
|
endpoint_id = endpoint_choice["endpoint_id"]
|
229
229
|
else:
|
@@ -255,10 +255,10 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
255
255
|
qwen_tokenizer = get_tokenizer(model)
|
256
256
|
return len(qwen_tokenizer.encode(text))
|
257
257
|
elif model.startswith("stepfun"):
|
258
|
-
|
259
|
-
if len(
|
258
|
+
backend_setting = settings.get_backend(BackendType.StepFun).models[model]
|
259
|
+
if len(backend_setting.endpoints) == 0:
|
260
260
|
return len(get_gpt_35_encoding().encode(text))
|
261
|
-
endpoint_id =
|
261
|
+
endpoint_id = backend_setting.endpoints[0]
|
262
262
|
if isinstance(endpoint_id, dict):
|
263
263
|
endpoint_id = endpoint_id["endpoint_id"]
|
264
264
|
endpoint = settings.get_endpoint(endpoint_id)
|
@@ -282,10 +282,10 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
282
282
|
result = response.json()
|
283
283
|
return result["data"]["total_tokens"]
|
284
284
|
elif model.startswith("glm"):
|
285
|
-
|
286
|
-
if len(
|
285
|
+
backend_setting = settings.get_backend(BackendType.ZhiPuAI).models[model]
|
286
|
+
if len(backend_setting.endpoints) == 0:
|
287
287
|
return len(get_gpt_35_encoding().encode(text))
|
288
|
-
endpoint_id =
|
288
|
+
endpoint_id = backend_setting.endpoints[0]
|
289
289
|
if isinstance(endpoint_id, dict):
|
290
290
|
endpoint_id = endpoint_id["endpoint_id"]
|
291
291
|
endpoint = settings.get_endpoint(endpoint_id)
|
@@ -388,8 +388,16 @@ ZHIPUAI_MODELS: Final[Dict[str, Dict[str, Any]]] = {
|
|
388
388
|
"context_length": 16000,
|
389
389
|
"function_call_available": False,
|
390
390
|
"response_format_available": False,
|
391
|
-
"max_output_tokens":
|
392
|
-
"native_multimodal":
|
391
|
+
"max_output_tokens": 12000,
|
392
|
+
"native_multimodal": False,
|
393
|
+
},
|
394
|
+
"glm-4-alltools": {
|
395
|
+
"id": "glm-4-alltools",
|
396
|
+
"context_length": 128000,
|
397
|
+
"function_call_available": False,
|
398
|
+
"response_format_available": False,
|
399
|
+
"max_output_tokens": 20480,
|
400
|
+
"native_multimodal": False,
|
393
401
|
},
|
394
402
|
}
|
395
403
|
|
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
|
{vectorvein-0.2.18 → vectorvein-0.2.20}/src/vectorvein/chat_clients/openai_compatible_client.py
RENAMED
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
|