利用JAVA语言调用GLM-4接口实战指南

news2025/7/14 9:12:04

一、什么是API接口

API(Application Programming Interface,应用程序编程接口)是一种软件接口,它定义了不同应用程序之间如何相互通信、交互。API接口分为很多种,常见的有Web API,数据库API,操作系统API等。

Web API是目前最流行的API接口,它作为一种开放式API接口,能够让不同的系统与平台进行交互。Web API可以返回JSON格式的数据或XML格式等数据。

二、GLM-4模型介绍

GLM-4是智谱AI发布的新一代基座大模型,整体性能相比GLM3提升60%,支持128K上下文,可根据用户意图自主理解和规划复杂指令、完成复杂任务。

2.1 主要模型

模型名称模型简介上下文长度
GLM-4提供了更强大的问答和文本生成能力。适合于复杂的对话交互和深度内容创作设计的场景。128K
GLM-4V实现了视觉语言特征的深度融合,支持视觉问答、图像字幕、视觉定位、复杂目标检测等各类图像理解任务2K
GLM-3-Turbo适用于对知识量、推理能力、创造力要求较高的场景,比如广告文案、小说写作、知识类写作、代码生成等。128K

2.2 计费单价

模型名称计费单位
GLM-40.1元 / 千tokens
GLM-4V0.1元 / 千tokens
GLM-3-Turbo0.005元 / 千tokens

一般情况下ChatGLM模型中token和字数的换算比例约为1:1.6,但因为不同模型的分词不同,所以换算比例也存在差异,每一次实际处理token数量以模型返回为准,您可以从返回结果的usage中查看。

2.3 计费范围

根据模型输入和输出的总token数进行计量计费(向量大模型embedding-2仅按照输入token量计费、图像大模型按照调用次数计费),如果您开启工具调用,调用结果作为输入也会进行计量计费。

调用工具可以为模型引入更多相关信息,有助于提高输出的质量、及时性等;语言模型默认开启web_search,调用成功后将作为参考信息输入给模型,每次调用大约会增加1000 tokens的消耗。如果您不需要调用web_search,可以通过参数关闭。

需关注的是,若您在体验中心对指定模型进行体验,收费规则和 API 调用一致。

2.4 扣费方式

支持下列2种方式扣减:

方式说明
费用扣减扣减费用 = token使用量 x 模型单价,对应费用将从您的充值账户、赠金账户进行扣减(如果您多个账户同时存在余额,我们将等额扣减,举例费用为10元,则充值帐户、赠金账户各扣减5元)
资源包扣减扣减数量 = token使用量,对应额度将从您的资源包账户进行扣减(如无特殊逻辑限制*,当资源包存在余额时,我们默认将优先扣减资源包账户再扣减充值 / 赠金账户)

实际收费情况请关注官方信息

三、调用API

3.1 申请API Key

快速查找API,可以通过幂简集成-API HUB查找所需的各种AI API。

所有 API 使用 API Key 进行身份验证。可以在GLM-4的服务详情界面快速理解服务,并从官方处获取API Key。

4. 基于SDK开发

4.1 Maven引入SDK

<dependency>
    <groupId>cn.bigmodel.openapi</groupId>
    <artifactId>oapi-java-sdk</artifactId>
    <version>release-V4-2.0.2</version>
</dependency>

4.2 代码实现

import com.alibaba.fastjson.JSON;
import com.zhipu.oapi.ClientV4;
import com.zhipu.oapi.Constants;
import com.zhipu.oapi.service.v4.model.*;

import java.util.ArrayList;
import java.util.List;

public class GLM4Demo {

    public static final String API_KEY = "你的APK KEY";
  
    private static final String requestIdTemplate = "miitang-%d";
  
    public static String chatGLM4(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 = chatGLM4("请做一下自我介绍");
        System.out.println(result);
    }

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1841439.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows文件及文件夹加密后无法解除加密

windows加密文件及文件夹的方法 window EFS加密 1、右键点击文件夹选择“属性”&#xff0c;在属性常规窗口中点击“高级”。 2、勾选“加密内容以便保护数据”&#xff0c;点击“确定”。 3、选择加密范围&#xff0c;点击“确定”即可加密。 使用这种方法加密之后文件夹将只…

赋能AI未来,景联文科技推出高质量亿级教育题库、多轮对话以及心理大模型数据

当前&#xff0c;大模型正如雨后春笋般不断涌现&#xff0c;不断推动着大模型产业的应用实践进入加速发展的新阶段。 景联文科技是AI数据服务公司&#xff0c;提供海量优质大模型数据集&#xff0c;涵盖文本、图像、视频、音频等多类型数据&#xff0c;致力于为不同训练阶段的算…

Stable Diffusion 3 大模型文生图实践

windows教程2024年最新Stable Diffusion本地化部署详细攻略&#xff0c;手把手教程&#xff08;建议收藏!!)_stable diffusion 本地部署-CSDN博客 linux本地安装教程 1.前期准备工作 1&#xff09;创建conda环境 conda create --name stable3 python3.10 2&#xff09;下…

【C++ | 友元(friend)】友元函数、友元类、友元成员函数详解及例子代码

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

「iOS」UI——无限轮播图实现与UIPageControl运用

「OC」UI 文章目录 「OC」UI无限轮播图的实现以及UIPageControl的实际运用明确要求简单滚动视图的实现UIPageControl的实现设置NSTimer实现自动移动补充实现 进行无限滚动视图的修改思路实现 完整代码展示 无限轮播图的实现以及UIPageControl的实际运用 明确要求 我们要实现一…

LabVIEW与数字孪生

LabVIEW与数字孪生技术在工业自动化、智慧城市、医疗设备和航空航天等领域应用广泛&#xff0c;具备实时数据监控、虚拟仿真和优化决策等特点。开发过程中需注意数据准确性、系统集成和网络安全问题&#xff0c;以确保数字孪生模型的可靠性和有效性。 经典应用&#xff1a;LabV…

算法人生(23):跟着“生成对抗网络”思维走出“拖延”

生成对抗网络&#xff08;GANs&#xff09;是一种深度学习模型&#xff0c;其核心思想是通过两个神经网络——生成器和判别器的对抗过程来学习数据分布&#xff0c;进而生成新的、类似真实数据的样本。它基本原理基于一个博弈论框架&#xff0c;其中生成器尝试生成尽可能逼真的…

Solkane 冷媒性能计算软件-管路计算

下载 制冷管道设计 制冷管路的压降会降低制冷量&#xff0c;增大功耗。但不同部分的管路允许的压降的数量级是不同的。 制冷管路的压降不是唯一的考虑因素&#xff0c;制冷剂的流速往往比压降更重要。 制冷系统中&#xff0c;压缩机、阀、汽液分离器或其他附件上的连接件的尺…

地下管线管网三维建模系统MagicPipe3D

地下管网是保障城市运行的基础设施和“生命线”。随着实景三维中国建设的推进&#xff0c;构建地下管网三维模型与地上融合的数字孪生场景&#xff0c;对于提升智慧城市管理至关重要&#xff01;针对现有三维管线建模数据差异大、建模交互弱、模型效果差、缺乏语义信息等缺陷&a…

swagger下载文件名中文乱码、swagger导出文件名乱码、swagger文件导出名称乱码、解决swagger中文下载乱码bug

文章目录 一、场景描述&#xff1a;swagger导出文件名称乱码二、乱码原因三、解决方法3.1、方法一、在浏览器中输入地址下载3.2、方法二、swagger升级为2.10.0及以上 四、可能遇到的问题4.1、DocumentationPluginsManager.java:152 一、场景描述&#xff1a;swagger导出文件名称…

时间复杂度的相关概念

1. 统计时间增长趋势 时间复杂度分析统计的不是算法运行时间&#xff0c;而是算法运行时间随着数据量变大时的增长趋势&#xff0c;也就是算法运行时间与输入数据的关系。 // 算法 A 的时间复杂度&#xff1a;常数阶 function algorithm_A(n) {console.log(0); } // 算法 B 的…

反激开关电源EMI电路选型及计算

EMI &#xff1a;开关电源对电网或者其他电子产品的干扰 EMI &#xff1a;传导与辐射 共模电感的滤波电路&#xff0c;La和Lb就是共模电感线圈。这两个线圈绕在同一铁芯上&#xff0c;匝数和相位都相 同(绕制反向)。 这样&#xff0c;当电路中的正常电流&#xff08;差模&…

快速搭建Jenkins自动化集成cicd工具

一、简介 jenkins是一款优秀的自动化持续集成运维工具&#xff0c;可以极大的简化运维部署的步骤。 传统的项目部署需要手动更换最新的项目代码&#xff0c;然后打包并运行到服务器上。 使用Jenkins可以自动化实现&#xff0c;当代码编写完成并提交到git后&#xff0c;Jenki…

[C++][数据结构][图][下][最短路径]详细讲解

目录 1.最短路径1.单源最短路径 -- Dijkstra算法2.单源最短路径 -- Bellman-Ford算法3.多源最短路径 -- Floyd-Warshall算法原理 1.最短路径 最短路径问题&#xff1a;从在带权有向图G中的某一顶点出发&#xff0c;找出一条通往另一顶点的最短路径&#xff0c;最短也就是沿路径…

linux中“PXE高效批量装机”

在大规模的 Linux 应用环境中&#xff0c;如 Web 群集、分布式计算等&#xff0c;服务器往往并不配备光驱设备&#xff0c;在这种情况下&#xff0c;如何为数十乃至上百台服务器裸机快速安装系统呢&#xff1f;传统的 USB光驱、移动硬盘等安装方法显然已经难以满足需求。 PXE …

Javase.抽象类和接口

抽象类和接口 【本节目标】1.抽象类1.1抽象类的概念1.2 抽象类语法1.3 抽象类特性1.4 抽象类的作用 2. 接口2.1 接口的概念2.2 语法规则2.3 接口使用2.4 接口特性2.5 实现多个接口2.6 接口间的继承2.7 接口使用实例2.8Clonable 接口和深拷贝2.9 抽象类和接口的区别 3. Object类…

C#的Switch语句2(case后的值与模式匹配)

文章目录 switch语法结构case具体的值枚举值字符串const关键字 如果没有匹配的值default语句不一定要在最后 模式匹配与C的差异-case穿透&#xff08;Fall-through&#xff09;下一篇文章 switch语法结构 基础的语法结构&#xff0c;在上一篇文章已经写了&#xff0c;具体请看…

Pyshark——安装、解析pcap文件

1、简介 PyShark是一个用于网络数据包捕获和分析的Python库&#xff0c;基于著名的网络协议分析工具Wireshark和其背后的libpcap/tshark库。它提供了一种便捷的方式来处理网络流量&#xff0c;适用于需要进行网络监控、调试和研究的场景。以下是PyShark的一些关键特性和使用方…

顺势而为:雷军、小米与创业成功的深层思考

一、引言 在当今快速发展的商业环境中&#xff0c;成功的企业家如马云和雷军&#xff0c;都以其独特的商业智慧和不懈的勤奋精神赢得了业界的尊重。然而&#xff0c;当我们深入探讨他们的成功之道时&#xff0c;会发现一个更为核心的因素——“顺势而为”。本文将基于雷军对不…

HTML静态网页成品作业(HTML+CSS+JS)——我的家乡福州介绍网页(3个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;使用Javacsript代码实现图片轮播&#xff0c;共有3个页面。 二、作品…