chore: add glm4.5v code and sample (#41)
This commit is contained in:
parent
5343980209
commit
9993e205fa
3 changed files with 65 additions and 4 deletions
5
.github/workflows/lint-pr.yaml
vendored
5
.github/workflows/lint-pr.yaml
vendored
|
|
@ -2,10 +2,7 @@ name: "Lint PR"
|
||||||
|
|
||||||
on:
|
on:
|
||||||
pull_request_target:
|
pull_request_target:
|
||||||
types:
|
pull_request:
|
||||||
- opened
|
|
||||||
- edited
|
|
||||||
- reopened
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
lint-pr:
|
lint-pr:
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,11 @@ public final class Constants {
|
||||||
*/
|
*/
|
||||||
public static final String ModelChatGLM4_5 = "glm-4.5";
|
public static final String ModelChatGLM4_5 = "glm-4.5";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* GLM-4.5V model code
|
||||||
|
*/
|
||||||
|
public static final String ModelChatGLM4_5V = "glm-4.5v";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GLM-4.5-Air model code
|
* GLM-4.5-Air model code
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
59
samples/src/main/ai.z.openapi.samples/GLM45VExample.java
Normal file
59
samples/src/main/ai.z.openapi.samples/GLM45VExample.java
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
package ai.z.openapi.samples;
|
||||||
|
|
||||||
|
import ai.z.openapi.ZhipuAiClient;
|
||||||
|
import ai.z.openapi.core.Constants;
|
||||||
|
import ai.z.openapi.service.model.ChatCompletionCreateParams;
|
||||||
|
import ai.z.openapi.service.model.ChatCompletionResponse;
|
||||||
|
import ai.z.openapi.service.model.ChatMessage;
|
||||||
|
import ai.z.openapi.service.model.ChatMessageRole;
|
||||||
|
import ai.z.openapi.service.model.ChatThinking;
|
||||||
|
import ai.z.openapi.service.model.ImageUrl;
|
||||||
|
import ai.z.openapi.service.model.MessageContent;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Streaming Chat Example
|
||||||
|
* Demonstrates how to use ZaiClient for streaming chat conversations
|
||||||
|
*/
|
||||||
|
public class GLM45VExample {
|
||||||
|
|
||||||
|
public static void main(String[] args) throws IOException {
|
||||||
|
// Create client
|
||||||
|
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
|
||||||
|
ZhipuAiClient client = ZhipuAiClient.builder().build();
|
||||||
|
|
||||||
|
// Create chat request
|
||||||
|
ChatCompletionCreateParams streamRequest = ChatCompletionCreateParams.builder()
|
||||||
|
.model(Constants.ModelChatGLM4_5V)
|
||||||
|
.messages(Arrays.asList(
|
||||||
|
ChatMessage.builder()
|
||||||
|
.role(ChatMessageRole.USER.value())
|
||||||
|
.content(Arrays.asList(
|
||||||
|
MessageContent.builder()
|
||||||
|
.type("image_url")
|
||||||
|
.imageUrl(ImageUrl.builder()
|
||||||
|
.url("https://cdn.bigmodel.cn/static/logo/register.png")
|
||||||
|
.build())
|
||||||
|
.build(),
|
||||||
|
MessageContent.builder()
|
||||||
|
.type("text")
|
||||||
|
.text("What are the pic talk about?")
|
||||||
|
.build()
|
||||||
|
))
|
||||||
|
.build()
|
||||||
|
))
|
||||||
|
.thinking(ChatThinking.builder().type("enabled").build())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
ChatCompletionResponse response = client.chat().createChatCompletion(streamRequest);
|
||||||
|
|
||||||
|
if (response.isSuccess()) {
|
||||||
|
Object content = response.getData().getChoices().get(0).getMessage();
|
||||||
|
System.out.println("Response: " + content);
|
||||||
|
} else {
|
||||||
|
System.err.println("Error: " + response.getMsg());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue