vectorvein 0.1.42__tar.gz → 0.1.43__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.1.42 → vectorvein-0.1.43}/PKG-INFO +1 -1
- {vectorvein-0.1.42 → vectorvein-0.1.43}/pyproject.toml +1 -1
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/utils.py +8 -3
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/server/token_server.py +4 -4
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/settings/__init__.py +7 -1
- {vectorvein-0.1.42 → vectorvein-0.1.43}/README.md +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/__init__.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/__init__.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/anthropic_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/baichuan_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/base_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/deepseek_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/gemini_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/groq_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/local_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/minimax_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/mistral_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/moonshot_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/openai_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/openai_compatible_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/py.typed +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/qwen_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/stepfun_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/yi_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/chat_clients/zhipuai_client.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/py.typed +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/settings/py.typed +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/types/defaults.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/types/enums.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/types/exception.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/types/llm_parameters.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/types/py.typed +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/utilities/media_processing.py +0 -0
- {vectorvein-0.1.42 → vectorvein-0.1.43}/src/vectorvein/utilities/retry.py +0 -0
@@ -116,9 +116,14 @@ def convert_type(value, value_type):
|
|
116
116
|
|
117
117
|
def get_token_counts(text: str | dict, model: str = "", use_token_server_first: bool = False) -> int:
|
118
118
|
if use_token_server_first and settings.token_server is not None:
|
119
|
+
base_url = (
|
120
|
+
settings.token_server.url
|
121
|
+
if settings.token_server.url is not None
|
122
|
+
else f"http://{settings.token_server.host}:{settings.token_server.port}"
|
123
|
+
)
|
119
124
|
_, response = (
|
120
125
|
Retry(httpx.post)
|
121
|
-
.args(url=
|
126
|
+
.args(url=f"{base_url}/count_tokens", json={"text": text, "model": model}, timeout=None)
|
122
127
|
.retry_times(5)
|
123
128
|
.sleep_time(1)
|
124
129
|
.run()
|
@@ -199,7 +204,7 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
199
204
|
if isinstance(endpoint_id, dict):
|
200
205
|
endpoint_id = endpoint_id["endpoint_id"]
|
201
206
|
endpoint = settings.get_endpoint(endpoint_id)
|
202
|
-
|
207
|
+
base_url = f"{endpoint.api_base}/models/{model_setting.id}:countTokens"
|
203
208
|
params = {"key": endpoint.api_key}
|
204
209
|
request_body = {
|
205
210
|
"contents": {
|
@@ -211,7 +216,7 @@ def get_token_counts(text: str | dict, model: str = "", use_token_server_first:
|
|
211
216
|
}
|
212
217
|
_, response = (
|
213
218
|
Retry(httpx.post)
|
214
|
-
.args(
|
219
|
+
.args(base_url, json=request_body, params=params, timeout=None)
|
215
220
|
.retry_times(5)
|
216
221
|
.sleep_time(10)
|
217
222
|
.run()
|
@@ -31,16 +31,16 @@ def run_token_server(host: str | None = None, port: int | None = None):
|
|
31
31
|
port (int): 服务器端口。
|
32
32
|
"""
|
33
33
|
if host is None or port is None:
|
34
|
-
|
35
|
-
if token_server_url is None:
|
34
|
+
if settings.token_server is None:
|
36
35
|
raise ValueError("Token server is not enabled.")
|
37
36
|
|
38
|
-
_host
|
37
|
+
_host = settings.token_server.host
|
38
|
+
_port = settings.token_server.port
|
39
39
|
else:
|
40
40
|
_host = host
|
41
41
|
_port = port
|
42
42
|
|
43
|
-
uvicorn.run(token_server, host=_host, port=
|
43
|
+
uvicorn.run(token_server, host=_host, port=_port)
|
44
44
|
|
45
45
|
|
46
46
|
if __name__ == "__main__":
|
@@ -9,11 +9,17 @@ from ..types.enums import BackendType
|
|
9
9
|
from ..types.llm_parameters import BackendSettings, EndpointSetting
|
10
10
|
|
11
11
|
|
12
|
+
class Server(BaseModel):
|
13
|
+
host: str
|
14
|
+
port: int
|
15
|
+
url: Optional[str]
|
16
|
+
|
17
|
+
|
12
18
|
class Settings(BaseModel):
|
13
19
|
endpoints: List[EndpointSetting] = Field(
|
14
20
|
default_factory=list, description="Available endpoints for the LLM service."
|
15
21
|
)
|
16
|
-
token_server: Optional[
|
22
|
+
token_server: Optional[Server] = Field(default=None, description="Token server address. Format: host:port")
|
17
23
|
|
18
24
|
anthropic: BackendSettings = Field(default_factory=BackendSettings, description="Anthropic models settings.")
|
19
25
|
deepseek: BackendSettings = Field(default_factory=BackendSettings, description="Deepseek models settings.")
|
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.1.42 → vectorvein-0.1.43}/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
|