chore: update doc and samples (#72)

This commit is contained in:
Tomsun28 2025-12-24 23:40:14 +08:00 committed by GitHub
parent 10e38ad5e2
commit a57e635497
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
33 changed files with 93 additions and 77 deletions

View file

@ -86,11 +86,12 @@ ZhipuAiClient zhipuClient = ZhipuAiClient.builder().ofZHIPU().build();
// Or set the api-key by code
ZaiClient client = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.build();
// For ZHIPU AI platform https://open.bigmodel.cn/api/paas/v4/
ZhipuAiClient zhipuClient = ZhipuAiClient.builder().apiKey("your.api.key").build();
ZhipuAiClient zhipuClient = ZhipuAiClient.builder().ofZHIPU().apiKey("your.api.key").build();
```
### Client Configuration
@ -119,6 +120,7 @@ import java.util.Arrays;
// Create client
ZaiClient client = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.build();
@ -273,6 +275,7 @@ public class AIController {
public AIController() {
this.zaiClient = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.enableTokenCache()
.build();

View file

@ -85,11 +85,12 @@ ZhipuAiClient zhipuClient = ZhipuAiClient.builder().ofZHIPU().build();
// 或代码设置凭证
ZaiClient client = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.build();
// 或为智谱AI平台 bigmodel.cn 创建客户端
ZhipuAiClient zhipuClient = ZhipuAiClient.builder().apiKey("your.api.key").build();
ZhipuAiClient zhipuClient = ZhipuAiClient.builder().ofZHIPU().apiKey("your.api.key").build();
```
### 客户端配置
@ -118,6 +119,7 @@ import java.util.Arrays;
// 创建客户端
ZaiClient client = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.build();
@ -274,6 +276,7 @@ public class AIController {
public AIController() {
this.zaiClient = ZaiClient.builder()
.ofZAI()
.apiKey("your.api.key")
.enableTokenCache()
.build();

View file

@ -1,6 +1,7 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.agents.AgentContent;
import ai.z.openapi.service.agents.AgentMessage;
import ai.z.openapi.service.agents.AgentsCompletionRequest;
@ -22,8 +23,8 @@ public class AgentExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
syncAgentCompletion(client);
}

View file

@ -22,8 +22,8 @@ public class AgentVideoExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
syncAgentCompletion(client);
}

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.core.Constants;
import ai.z.openapi.service.audio.AudioSpeechRequest;
@ -14,8 +15,8 @@ public class AudioSpeechExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create request
AudioSpeechRequest request = AudioSpeechRequest.builder()

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.core.Constants;
import ai.z.openapi.service.model.AsyncResultRetrieveParams;
@ -20,8 +21,8 @@ public class ChatAsyncCompletionExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.model.ChatCompletionCreateParams;
import ai.z.openapi.service.model.ChatCompletionResponse;
@ -23,8 +24,8 @@ public class ChatCompletionBase64Example {
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();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
String file = ClassLoader.getSystemResource("grounding.png").getFile();
byte[] bytes = Files.readAllBytes(new File(file).toPath());

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.model.*;
@ -14,8 +15,8 @@ public class ChatCompletionExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.model.*;
import java.util.Arrays;
@ -7,8 +8,10 @@ import java.util.Arrays;
public class ChatCompletionMultiFileExample {
public static void main(String[] args) {
ZhipuAiClient client = ZhipuAiClient.builder()
.build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
ChatCompletionCreateParams request = ChatCompletionCreateParams.builder()
.model("glm-4.6v")

View file

@ -12,8 +12,8 @@ public class ChatCompletionStreamExample {
public static void main(String[] args) {
// Create client
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create chat request
ChatCompletionCreateParams streamRequest = ChatCompletionCreateParams.builder()

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.model.*;
import ai.z.openapi.core.Constants;
@ -17,8 +18,8 @@ public class ChatCompletionWithCustomHeadersExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create chat request
ChatCompletionCreateParams request = ChatCompletionCreateParams.builder()

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.service.model.ChatCompletionCreateParams;
import ai.z.openapi.service.model.ChatCompletionResponse;
@ -24,8 +25,8 @@ public class ChatCompletionWithMcpServerUrlExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -17,8 +17,8 @@ public class CogVideoX3Example {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -14,8 +14,8 @@ public class CogVideoXExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -28,7 +28,7 @@ public class CustomClientExample {
public static void main(String[] args) throws Exception {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiConfig zaiConfig = ZaiConfig.builder()
.apiKey(System.getenv("ZAI_API_KEY"))
.baseUrl(Constants.ZHIPU_AI_BASE_URL)

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.core.Constants;
import ai.z.openapi.service.model.ChatCompletionCreateParams;
@ -23,8 +24,8 @@ public class CustomTimeoutExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZhipuAiClient client = ZhipuAiClient.builder()
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI()
.networkConfig(0, 10, 30, 30, TimeUnit.SECONDS)
.build();

View file

@ -12,9 +12,10 @@ import java.util.Arrays;
public class EmbeddingsExample {
public static void main(String[] args) {
// Create client
ZaiClient client = ZaiClient.builder().build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create embedding request
EmbeddingCreateParams request = EmbeddingCreateParams.builder()

View file

@ -10,16 +10,11 @@ import ai.z.openapi.utils.StringUtils;
public class FileParsingExample {
public static void main(String[] args) {
// It's recommended to set the API Key via environment variable
// export ZAI_API_KEY=your.api_key
// ZaiClient client = ZaiClient.builder().build();
// You can also specify the API Key directly in code
ZaiClient client = ZaiClient.builder()
.apiKey("API Key")
.build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
try {
// Example 1: Create a file parsing task

View file

@ -8,14 +8,12 @@ import ai.z.openapi.utils.StringUtils;
public class FileParsingSyncExample {
public static void main(String[] args) {
// It is recommended to set the API Key using an environment variable
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
// Alternatively, the API Key can be specified directly in the code
ZaiClient client = ZaiClient.builder()
.apiKey("API Key")
.build();
ZaiClient client = ZaiClient.builder().ofZAI().build();
try {
System.out.println("=== Example: Creating file parsing task ===");

View file

@ -28,7 +28,10 @@ public class FunctionCallingExample {
}
public static void main(String[] args) {
ZaiClient client = ZaiClient.builder().build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Define function tools
Map<String, ChatFunctionParameterProperty> properties = new HashMap<>();

View file

@ -14,10 +14,8 @@ public class GLM41VThinkingExample {
public static void main(String[] args) {
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder()
.apiKey("your.api_key")
.build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
ChatCompletionCreateParams request = ChatCompletionCreateParams.builder()
.model("glm-4.1v-thinking-flashx")

View file

@ -1,5 +1,6 @@
package ai.z.openapi.samples;
import ai.z.openapi.ZaiClient;
import ai.z.openapi.ZhipuAiClient;
import ai.z.openapi.core.Constants;
import ai.z.openapi.service.model.ChatCompletionCreateParams;
@ -21,8 +22,8 @@ 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();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create chat request
ChatCompletionCreateParams streamRequest = ChatCompletionCreateParams.builder()

View file

@ -14,8 +14,10 @@ public class GLM4VPlusExample {
public static void main(String[] args) {
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().apiKey("your.api_key").build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().apiKey("your.api_key").build();
ChatCompletionCreateParams request = ChatCompletionCreateParams.builder()
.model("glm-4v-plus-0111")

View file

@ -9,14 +9,12 @@ import ai.z.openapi.service.ocr.WordsResult;
public class HandwritingOcrExample {
public static void main(String[] args) {
// It is recommended to set the API Key via environment variable
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
// You can also set the API Key directly in the code for testing
ZaiClient client = ZaiClient.builder()
.apiKey("your-real-api-key")
.build();
ZaiClient client = ZaiClient.builder().ofZAI().build();
try {
System.out.println("=== Handwriting OCR Example ===");

View file

@ -13,8 +13,8 @@ public class ImageGenerationExample {
public static void main(String[] args) {
// Create client
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Create image generation request
CreateImageRequest request = CreateImageRequest.builder()

View file

@ -13,8 +13,10 @@ import java.util.List;
public class ModerationExample {
public static void main(String[] args) {
// Create client
ZaiClient client = ZaiClient.builder().build();
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Example 1: Text moderation
System.out.println("=== Text Moderation Example ===");

View file

@ -16,8 +16,8 @@ public class ViduAspectVideoExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
generateVideoStartEnd(client);
client.close();

View file

@ -14,8 +14,8 @@ public class ViduImageToVideoExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
generateVideoFromImage(client);
client.close();

View file

@ -16,8 +16,8 @@ public class ViduStartEndVideoExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
generateVideoStartEnd(client);
client.close();

View file

@ -14,8 +14,8 @@ public class ViduTextToVideoExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -22,7 +22,8 @@ public class VoiceCloneExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()

View file

@ -14,8 +14,8 @@ public class WebReaderExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().ofZHIPU().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
basicWebReader(client);
}

View file

@ -24,8 +24,8 @@ public class WebSearchExample {
public static void main(String[] args) {
// Create client, recommended to set API Key via environment variable
// export ZAI_API_KEY=your.api_key
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient
ZaiClient client = ZaiClient.builder().build();
// for Z.ai use the `ZaiClient`, for Zhipu AI use the ZhipuAiClient.builder().ofZHIPU().build()
ZaiClient client = ZaiClient.builder().ofZAI().build();
// Or set API Key via code
// ZaiClient client = ZaiClient.builder()