feat: support new model glm 4.5 protocol (#22)

Co-authored-by: jinhaiyang <haiyang.jin@aminer.cn>
Co-authored-by: tomsun28 <tomsun28@outlook.com>
This commit is contained in:
haiyang jin 2025-07-25 23:17:50 +08:00 committed by GitHub
parent 207459e9c0
commit 0c3cd5cee0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 74 additions and 0 deletions

View file

@ -107,4 +107,9 @@ public class ChatCompletionCreateParams extends CommonRequest implements ClientR
@JsonProperty("tool_choice")
private Object toolChoice;
/**
* Configuration parameters for model reasoning
*/
private ChatThinking thinking;
}

View file

@ -0,0 +1,21 @@
package ai.z.openapi.service.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class ChatThinking {
/**
* Model thinking type
*/
private String type;
}

View file

@ -0,0 +1,20 @@
package ai.z.openapi.service.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class CompletionTokensDetails {
@JsonProperty("reasoning_tokens")
private int reasoningTokens;
}

View file

@ -0,0 +1,20 @@
package ai.z.openapi.service.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class PromptTokensDetails {
@JsonProperty("cached_tokens")
private int cachedTokens;
}

View file

@ -1,5 +1,6 @@
package ai.z.openapi.service.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
@ -12,6 +13,7 @@ import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class Usage {
/**
@ -38,4 +40,10 @@ public class Usage {
@JsonProperty("total_calls")
private int totalCalls;
@JsonProperty("prompt_tokens_details")
private PromptTokensDetails promptTokensDetails;
@JsonProperty("completion_tokens_details")
private CompletionTokensDetails completionTokensDetails;
}