Skip to content

Commit 020294a

Browse files
author
jinhaiyang
committed
【翻译api】翻译智能体支持
1 parent e172041 commit 020294a

File tree

3 files changed

+51
-4
lines changed

3 files changed

+51
-4
lines changed

tests/integration_tests/test_assistant.py

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import logging.config
44
import zhipuai
55
from zhipuai import ZhipuAI
6-
6+
import json
77

88
def test_assistant(logging_conf) -> None:
99
logging.config.dictConfig(logging_conf) # type: ignore
@@ -73,3 +73,40 @@ def test_assistant_query_conversation_usage(logging_conf) -> None:
7373
print(err)
7474
except zhipuai.core._errors.APIStatusError as err:
7575
print(err)
76+
77+
78+
def test_translate_api(logging_conf) -> None:
79+
logging.config.dictConfig(logging_conf) # type: ignore
80+
client = ZhipuAI() # 填写您自己的APIKey
81+
try:
82+
generate = client.assistant.conversation(
83+
assistant_id="9996ijk789lmn012o345p999",
84+
model="glm-4-assistant",
85+
messages=[
86+
{
87+
"role": "user",
88+
"content": [{
89+
"type": "text",
90+
"text": "你好呀"
91+
}]
92+
}
93+
],
94+
stream=False,
95+
attachments=None,
96+
metadata=None,
97+
request_id="request_1790291013237211136",
98+
user_id="12345678",
99+
extra_parameters = {
100+
"translate": {
101+
"from": "zh",
102+
"to": "en"
103+
}
104+
}
105+
)
106+
print(generate)
107+
except zhipuai.core._errors.APIRequestFailedError as err:
108+
print(err)
109+
except zhipuai.core._errors.APIInternalError as err:
110+
print(err)
111+
except zhipuai.core._errors.APIStatusError as err:
112+
print(err)

zhipuai/api_resource/assistant/assistant.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,17 @@ def conversation(
3636
model: str,
3737
messages: List[assistant_create_params.ConversationMessage],
3838
*,
39-
stream: bool = True,
39+
stream: Optional[Literal[False]] | Literal[True] | NotGiven = NOT_GIVEN,
4040
conversation_id: Optional[str] = None,
4141
attachments: Optional[List[assistant_create_params.AssistantAttachments]] = None,
4242
metadata: dict | None = None,
4343
request_id: str = None,
4444
user_id: str = None,
45+
extra_parameters: Optional[assistant_create_params.ExtraParameters] = None,
4546
extra_headers: Headers | None = None,
4647
extra_body: Body | None = None,
4748
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
48-
) -> StreamResponse[AssistantCompletion]:
49+
) -> AssistantCompletion | StreamResponse[AssistantCompletion]:
4950
body = deepcopy_minimal(
5051
{
5152
"assistant_id": assistant_id,
@@ -57,6 +58,7 @@ def conversation(
5758
"metadata": metadata,
5859
"request_id": request_id,
5960
"user_id": user_id,
61+
"extra_parameters": extra_parameters
6062
}
6163
)
6264
return self._post(
@@ -66,7 +68,7 @@ def conversation(
6668
extra_headers=extra_headers, extra_body=extra_body, timeout=timeout
6769
),
6870
cast_type=AssistantCompletion,
69-
stream=stream or True,
71+
stream=stream or False,
7072
stream_cls=StreamResponse[AssistantCompletion],
7173
)
7274

zhipuai/types/assistant/assistant_create_params.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,11 @@ class AssistantParameters(TypedDict, total=False):
2828
messages: List[ConversationMessage] # 会话消息体
2929
attachments: Optional[List[AssistantAttachments]] # 会话指定的文件,非必填
3030
metadata: Optional[dict] # 元信息,拓展字段,非必填
31+
32+
class TranslateParameters(TypedDict, total=False):
33+
from_language: str
34+
to_language: str
35+
36+
class ExtraParameters(TypedDict, total=False):
37+
translate: TranslateParameters
38+

0 commit comments

Comments
 (0)