feat: update new models glm-5.2 and support reasoning_effort (#72)
This commit is contained in:
parent
d8d898bbf1
commit
ca5109c0aa
9 changed files with 25 additions and 22 deletions
|
|
@ -11,7 +11,7 @@
|
|||
## ✨ Core Features
|
||||
|
||||
### 🤖 **Chat Completions**
|
||||
- **Standard Chat**: Create chat completions with various models including `glm-5.1`
|
||||
- **Standard Chat**: Create chat completions with various models including `glm-5.2`
|
||||
- **Streaming Support**: Real-time streaming responses for interactive applications
|
||||
- **Tool Calling**: Function calling capabilities for enhanced AI interactions
|
||||
- **Multimodal Chat**: Image understanding capabilities with vision models
|
||||
|
|
@ -104,7 +104,7 @@ client = ZhipuAiClient(api_key="your-api-key")
|
|||
|
||||
# Create chat completion
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "user", "content": "Hello, Z.ai!"}
|
||||
]
|
||||
|
|
@ -278,7 +278,7 @@ client = ZaiClient(api_key="your-api-key")
|
|||
|
||||
try:
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "user", "content": "Hello, Z.ai!"}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
## ✨ 核心功能
|
||||
|
||||
### 🤖 **对话补全**
|
||||
- **标准对话**: 支持 `glm-5.1` 等多种模型的对话补全
|
||||
- **标准对话**: 支持 `glm-5.2` 等多种模型的对话补全
|
||||
- **流式支持**: 实时流式响应,适用于交互式应用
|
||||
- **工具调用**: 函数调用能力,增强 AI 交互体验
|
||||
- **多模态对话**: 支持图像理解的视觉模型
|
||||
|
|
@ -106,7 +106,7 @@ client = ZhipuAiClient(api_key="your-api-key")
|
|||
|
||||
# Create chat completion
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "user", "content": "Hello, Z.ai!"}
|
||||
]
|
||||
|
|
@ -285,7 +285,7 @@ client = ZaiClient(api_key="your-api-key") # 请填写您自己的APIKey
|
|||
|
||||
try:
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "user", "content": "你好, Z.ai !"}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ def completion():
|
|||
|
||||
# Create chat completion
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
messages=[{'role': 'user', 'content': 'Hello, Z.ai!'}],
|
||||
temperature=1.0,
|
||||
)
|
||||
|
|
@ -19,7 +19,7 @@ def completion_with_stream():
|
|||
|
||||
# Create chat completion
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
messages=[
|
||||
{'role': 'system', 'content': 'You are a helpful assistant.'},
|
||||
{'role': 'user', 'content': 'Tell me a story about AI.'},
|
||||
|
|
@ -38,7 +38,7 @@ def completion_with_websearch():
|
|||
|
||||
# Create chat completion
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
messages=[
|
||||
{'role': 'system', 'content': 'You are a helpful assistant.'},
|
||||
{'role': 'user', 'content': 'What is artificial intelligence?'},
|
||||
|
|
@ -66,7 +66,7 @@ def completion_with_mcp_server_url():
|
|||
|
||||
# Create chat completion with MCP server URL
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
stream=False,
|
||||
messages=[{'role': 'user', 'content': 'Hello, please introduce GPT?'}],
|
||||
tools=[
|
||||
|
|
@ -95,7 +95,7 @@ def completion_with_mcp_server_label():
|
|||
|
||||
# Create chat completion with MCP server label
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
stream=False,
|
||||
messages=[{'role': 'user', 'content': 'Hello, please introduce GPT?'}],
|
||||
tools=[
|
||||
|
|
@ -217,7 +217,7 @@ def ofZai():
|
|||
client = ZaiClient()
|
||||
print(client.base_url)
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
messages=[{'role': 'user', 'content': 'Hello, Z.ai!'}],
|
||||
temperature=0.7,
|
||||
)
|
||||
|
|
@ -227,7 +227,7 @@ def ofZhipu():
|
|||
client = ZhipuAiClient()
|
||||
print(client.base_url)
|
||||
response = client.chat.completions.create(
|
||||
model='glm-5.1',
|
||||
model='glm-5.2',
|
||||
messages=[{'role': 'user', 'content': 'Hello, Z.ai!'}],
|
||||
temperature=0.7,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ def stream_web_search_example():
|
|||
}]
|
||||
client = ZaiClient()
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=messages,
|
||||
tools=tools,
|
||||
stream=True
|
||||
|
|
@ -35,7 +35,7 @@ def sync_example():
|
|||
print("=== GLM-4 Synchronous Example ===")
|
||||
client = ZaiClient()
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "system", "content": "You are a helpful assistant who provides professional, accurate, and insightful advice."},
|
||||
{"role": "user", "content": "I'm very interested in the planets of the solar system, especially Saturn. Please provide basic information about Saturn, including its size, composition, ring system, and any unique astronomical phenomena."},
|
||||
|
|
@ -47,7 +47,7 @@ def async_example():
|
|||
print("=== GLM-4 Async Example ===")
|
||||
client = ZaiClient()
|
||||
response = client.chat.asyncCompletions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{
|
||||
"role": "user",
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ class ZaiSampler(SamplerBase):
|
|||
|
||||
def __init__(
|
||||
self,
|
||||
model: str = "glm-5",
|
||||
model: str = "glm-5.2",
|
||||
api_key: str = '',
|
||||
system_message: Optional[str] = None,
|
||||
temperature: float = 0.0,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ def main():
|
|||
client = ZhipuAiClient()
|
||||
# create chat completion with tool calls and streaming
|
||||
response = client.chat.completions.create(
|
||||
model="glm-5.1",
|
||||
model="glm-5.2",
|
||||
messages=[
|
||||
{"role": "user", "content": "How is the weather in Beijing and Shanghai? Please provide the answer in Celsius."},
|
||||
],
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
[tool.poetry]
|
||||
name = "zai-sdk"
|
||||
version = "0.2.2"
|
||||
version = "0.2.3"
|
||||
description = "A SDK library for accessing big model apis from Z.ai"
|
||||
authors = ["Z.ai"]
|
||||
readme = "README.md"
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
__title__ = 'Z.ai'
|
||||
__version__ = '0.2.2'
|
||||
__version__ = '0.2.3'
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@ class Completions(BaseAPI):
|
|||
thinking: object | None = None,
|
||||
watermark_enabled: Optional[bool] | NotGiven = NOT_GIVEN,
|
||||
tool_stream: bool | NotGiven = NOT_GIVEN,
|
||||
reasoning_effort: Optional[str] | NotGiven = NOT_GIVEN,
|
||||
) -> Completion | StreamResponse[ChatCompletionChunk]:
|
||||
"""
|
||||
Create a chat completion
|
||||
|
|
@ -95,6 +96,7 @@ class Completions(BaseAPI):
|
|||
thinking (Optional[object]): Configuration parameters for model reasoning
|
||||
watermark_enabled (Optional[bool]): Whether to enable watermark on generated audio
|
||||
tool_stream (Optional[bool]): Whether to enable tool streaming
|
||||
reasoning_effort (Optional[str]): Reasoning effort level, supports none, minimal, low, medium, high, xhigh, max. Effective for glm-5.2 and above models.
|
||||
"""
|
||||
logger.debug(f'temperature:{temperature}, top_p:{top_p}')
|
||||
if temperature is not None and temperature != NOT_GIVEN:
|
||||
|
|
@ -144,6 +146,7 @@ class Completions(BaseAPI):
|
|||
'thinking': thinking,
|
||||
'watermark_enabled': watermark_enabled,
|
||||
'tool_stream': tool_stream,
|
||||
'reasoning_effort': reasoning_effort,
|
||||
}
|
||||
)
|
||||
return self._post(
|
||||
|
|
|
|||
Loading…
Reference in a new issue