key: 登陆智谱AI开放平台自己创建即可
git地址:
GitHub - MetaGLM/zhipuai-sdk-java-v4
接口文档地址:
运行目标:只是基本的收入问题,等待全部返回回答问题
安装
- 运行环境:JDK1.8+ ,使用springCloud jdk17运行也可以
- maven引用
<dependency>
<groupId>cn.bigmodel.openapi</groupId>
<artifactId>oapi-java-sdk</artifactId>
<version>release-V4-2.3.0</version>
</dependency>
controller方法:
因github中 import com.wd.common.core.domain.R;这个找不到,所以改了下返回值类型为String
@RequestMapping("/chat")
public String test(@RequestBody ChatCompletionRequest chatCompletionRequest) {
chatCompletionRequest.setModel("glm-4-flash");
//这个必须配置
chatCompletionRequest.setInvokeMethod(Constants.invokeMethod);
ModelApiResponse sseModelApiResp = client.invokeModelApi(chatCompletionRequest);
//return R.ok(sseModelApiResp.getData());
AtomicReference<String> rs = new AtomicReference<>("");
if(sseModelApiResp!=null){
if(!chatCompletionRequest.getStream()){
sseModelApiResp.getData().getChoices().stream().forEach(choice -> {
rs.updateAndGet(v -> v + choice.getMessage().getContent());
});
}
}
return rs.get();
}
前端测试使用springCloudAi的测试页面,调整下参数及请求方法
// 准备请求体数据
var requestBody = {
messages: [
{
role: "user",
content: message
}
],
do_sample: true,
stream: false,
temperature: 0.95,
top_p: 0.7,
max_tokens: 4095,
tool_choice: "auto"
};
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
.....
xhr.send(JSON.stringify(requestBody));
效果: