Merge pull request #16 from THUDM/feature/glm-4.5
feat: Feature/glm 4.5
This commit is contained in:
commit
d344be2ca2
4 changed files with 32 additions and 1 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "zai-sdk"
|
name = "zai-sdk"
|
||||||
version = "0.0.1b2"
|
version = "0.0.1b3"
|
||||||
description = "A SDK library for accessing big model apis from Z.ai"
|
description = "A SDK library for accessing big model apis from Z.ai"
|
||||||
authors = ["Z.ai"]
|
authors = ["Z.ai"]
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
|
|
||||||
|
|
@ -56,6 +56,8 @@ class AsyncCompletions(BaseAPI):
|
||||||
extra_headers: Headers | None = None,
|
extra_headers: Headers | None = None,
|
||||||
extra_body: Body | None = None,
|
extra_body: Body | None = None,
|
||||||
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
||||||
|
response_format: object | None = None,
|
||||||
|
thinking: object | None = None,
|
||||||
) -> AsyncTaskStatus:
|
) -> AsyncTaskStatus:
|
||||||
"""
|
"""
|
||||||
Create an asynchronous chat completion task
|
Create an asynchronous chat completion task
|
||||||
|
|
@ -79,6 +81,8 @@ class AsyncCompletions(BaseAPI):
|
||||||
extra_headers (Headers): Additional HTTP headers
|
extra_headers (Headers): Additional HTTP headers
|
||||||
extra_body (Body): Additional request body parameters
|
extra_body (Body): Additional request body parameters
|
||||||
timeout (float | httpx.Timeout): Request timeout
|
timeout (float | httpx.Timeout): Request timeout
|
||||||
|
response_format (Optional[object]): Response format specification
|
||||||
|
thinking (Optional[object]): Configuration parameters for model reasoning
|
||||||
"""
|
"""
|
||||||
_cast_type = AsyncTaskStatus
|
_cast_type = AsyncTaskStatus
|
||||||
logger.debug(f'temperature:{temperature}, top_p:{top_p}')
|
logger.debug(f'temperature:{temperature}, top_p:{top_p}')
|
||||||
|
|
@ -121,6 +125,8 @@ class AsyncCompletions(BaseAPI):
|
||||||
'tool_choice': tool_choice,
|
'tool_choice': tool_choice,
|
||||||
'meta': meta,
|
'meta': meta,
|
||||||
'extra': maybe_transform(extra, code_geex_params.CodeGeexExtra),
|
'extra': maybe_transform(extra, code_geex_params.CodeGeexExtra),
|
||||||
|
"response_format": response_format,
|
||||||
|
"thinking": thinking
|
||||||
}
|
}
|
||||||
return self._post(
|
return self._post(
|
||||||
'/async/chat/completions',
|
'/async/chat/completions',
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,7 @@ class Completions(BaseAPI):
|
||||||
extra_body: Body | None = None,
|
extra_body: Body | None = None,
|
||||||
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
||||||
response_format: object | None = None,
|
response_format: object | None = None,
|
||||||
|
thinking: object | None = None,
|
||||||
) -> Completion | StreamResponse[ChatCompletionChunk]:
|
) -> Completion | StreamResponse[ChatCompletionChunk]:
|
||||||
"""
|
"""
|
||||||
Create a chat completion
|
Create a chat completion
|
||||||
|
|
@ -87,6 +88,7 @@ class Completions(BaseAPI):
|
||||||
extra_body (Body): Additional request body parameters
|
extra_body (Body): Additional request body parameters
|
||||||
timeout (float | httpx.Timeout): Request timeout
|
timeout (float | httpx.Timeout): Request timeout
|
||||||
response_format (object): Response format specification
|
response_format (object): Response format specification
|
||||||
|
thinking (Optional[object]): Configuration parameters for model reasoning
|
||||||
"""
|
"""
|
||||||
logger.debug(f'temperature:{temperature}, top_p:{top_p}')
|
logger.debug(f'temperature:{temperature}, top_p:{top_p}')
|
||||||
if temperature is not None and temperature != NOT_GIVEN:
|
if temperature is not None and temperature != NOT_GIVEN:
|
||||||
|
|
@ -131,6 +133,7 @@ class Completions(BaseAPI):
|
||||||
'meta': meta,
|
'meta': meta,
|
||||||
'extra': maybe_transform(extra, code_geex_params.CodeGeexExtra),
|
'extra': maybe_transform(extra, code_geex_params.CodeGeexExtra),
|
||||||
'response_format': response_format,
|
'response_format': response_format,
|
||||||
|
"thinking": thinking
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
return self._post(
|
return self._post(
|
||||||
|
|
|
||||||
|
|
@ -45,17 +45,39 @@ class CompletionMessage(BaseModel):
|
||||||
tool_calls: Optional[List[CompletionMessageToolCall]] = None
|
tool_calls: Optional[List[CompletionMessageToolCall]] = None
|
||||||
|
|
||||||
|
|
||||||
|
class PromptTokensDetails(BaseModel):
|
||||||
|
"""
|
||||||
|
Detailed breakdown of token usage for the input prompt
|
||||||
|
|
||||||
|
Attributes:
|
||||||
|
cached_tokens: Number of tokens reused from cache
|
||||||
|
"""
|
||||||
|
cached_tokens: int
|
||||||
|
|
||||||
|
class CompletionTokensDetails(BaseModel):
|
||||||
|
"""
|
||||||
|
Detailed breakdown of token usage for the model completion
|
||||||
|
|
||||||
|
Attributes:
|
||||||
|
reasoning_tokens: Number of tokens used for reasoning steps
|
||||||
|
"""
|
||||||
|
reasoning_tokens: int
|
||||||
|
|
||||||
class CompletionUsage(BaseModel):
|
class CompletionUsage(BaseModel):
|
||||||
"""
|
"""
|
||||||
Token usage information for completion
|
Token usage information for completion
|
||||||
|
|
||||||
Attributes:
|
Attributes:
|
||||||
prompt_tokens: Number of tokens in the prompt
|
prompt_tokens: Number of tokens in the prompt
|
||||||
|
prompt_tokens_details: Detailed breakdown of token usage for the input prompt
|
||||||
completion_tokens: Number of tokens in the completion
|
completion_tokens: Number of tokens in the completion
|
||||||
|
completion_tokens_details: Detailed breakdown of token usage for the model completion
|
||||||
total_tokens: Total number of tokens used
|
total_tokens: Total number of tokens used
|
||||||
"""
|
"""
|
||||||
prompt_tokens: int
|
prompt_tokens: int
|
||||||
|
prompt_tokens_details: Optional[PromptTokensDetails] = None
|
||||||
completion_tokens: int
|
completion_tokens: int
|
||||||
|
completion_tokens_details: Optional[CompletionTokensDetails] = None
|
||||||
total_tokens: int
|
total_tokens: int
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue