目录
一、模型介绍
1.1主要模型
1.2 计费单价
二、前置条件
2.1 申请API Key
三、基于SDK开发
3.1 Maven引入SDK
3.2 代码实现
3.3 运行代码
一、模型介绍
GLM-4是智谱AI发布的新一代基座大模型,整体性能相比GLM3提升60%,支持128K上下文,可根据用户意图自主理解和规划复杂指令、完成复杂任务。
1.1主要模型
| 模型名称 | 模型简介 | 上下文长度 | 
|---|---|---|
| GLM-4 | 提供了更强大的问答和文本生成能力。适合于复杂的对话交互和深度内容创作设计的场景。 | 128K | 
| GLM-4V | 实现了视觉语言特征的深度融合,支持视觉问答、图像字幕、视觉定位、复杂目标检测等各类图像理解任务 | 2K | 
| GLM-3-Turbo | 适用于对知识量、推理能力、创造力要求较高的场景,比如广告文案、小说写作、知识类写作、代码生成等。 | 128K | 
1.2 计费单价
Token是模型用来表示自然语言文本的基本单位,可以直观的理解为“字”或“词”;通常1个中文词语、1个英文单词、1个数字或1个符号计为 1 个token。
一般情况下ChatGLM模型中token和字数的换算比例约为1:1.6,但因为不同模型的分词不同,所以换算比例也存在差异,每一次实际处理token数量以模型返回为准,您可以从返回结果的usage中查看。
| 模型服务 | 模型名称 | 计费单价 | 
|---|---|---|
| 通用大模型 | GLM-4 | 0.1元 / 千tokens | 
| GLM-4V | 0.1元 / 千tokens | |
| GLM-3-Turbo | 0.005元 / 千tokens | 
实际收费情况请关注官方信息。
二、前置条件
2.1 申请API Key
所有 API 使用 API Key 进行身份验证。可以访问智谱AI开放平台 API Keys 页面查找将在请求中使用的 API Key。
三、基于SDK开发
3.1 Maven引入SDK
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.yichenkeji</groupId>
    <artifactId>yichen-demo-glm</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <!-- https://mvnrepository.com/artifact/cn.bigmodel.openapi/oapi-java-sdk -->
        <dependency>
            <groupId>cn.bigmodel.openapi</groupId>
            <artifactId>oapi-java-sdk</artifactId>
            <version>release-V4-2.0.2</version>
        </dependency>
    </dependencies>
</project>3.2 代码实现
package com.yichenkeji.demo.glm;
import com.alibaba.fastjson.JSON;
import com.zhipu.oapi.ClientV4;
import com.zhipu.oapi.Constants;
import com.zhipu.oapi.service.v4.model.ChatCompletionRequest;
import com.zhipu.oapi.service.v4.model.ChatMessage;
import com.zhipu.oapi.service.v4.model.ChatMessageRole;
import com.zhipu.oapi.service.v4.model.ModelApiResponse;
import java.util.ArrayList;
import java.util.List;
public class GlmMain {
    public static final String API_KEY = "你的APK KEY";
    private static final String requestIdTemplate = "mycompany-%d";
    public static String chat(String message) {
        ClientV4 client = new ClientV4.Builder(API_KEY).build();
        List<ChatMessage> messages = new ArrayList<>();
        //构建消息对象
        ChatMessage chatMessage = new ChatMessage(ChatMessageRole.USER.value(), message);
        messages.add(chatMessage);
        //构建请求id
        String requestId = String.format(requestIdTemplate, System.currentTimeMillis());
        ChatCompletionRequest chatCompletionRequest = ChatCompletionRequest.builder()
                .model(Constants.ModelChatGLM4)//设置模式
                .stream(Boolean.FALSE)
                .invokeMethod(Constants.invokeMethod)
                .messages(messages)
                .requestId(requestId)
                .build();
        ModelApiResponse invokeModelApiResp = client.invokeModelApi(chatCompletionRequest);
        return JSON.toJSONString(invokeModelApiResp);
    }
    public static void main(String[] args) {
        String result = chat("请做一下自我介绍");
        System.out.println(result);
    }
}
3.3 运行代码



















