Java 调用通义千问
通义千问是由阿里云自主研发的大模型,用于理解和分析用户输入的自然语言,以及图片、音频、视频等多模态数据。在不同领域和任务为用户提供服务和帮助。您可以通过提供尽可能清晰详细的指令,来获取符合您预期的结果。
开通服务
访问阿里云百炼控制台:阿里云百炼
- 点击开通服务。
- 等待开通完成。
- 进入 API-KEY 管理页面。
- 创建自己的 API Key。




调用模型
根据 API 文档,通过 DashScope(模型服务灵积)的方式调用模型。
引入依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dashscope-sdk-java</artifactId>
<version>2.9.0</version>
</dependency>
代码示例
// 建议 dashscope SDK 的版本 >= 2.12.0
import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
com.alibaba.dashscope.exception.ApiException;
com.alibaba.dashscope.exception.InputRequiredException;
com.alibaba.dashscope.exception.NoApiKeyException;
com.alibaba.dashscope.utils.JsonUtils;
{
GenerationResult ApiException, NoApiKeyException, InputRequiredException {
();
Message.builder()
.role(Role.SYSTEM.getValue())
.content()
.build();
Message.builder()
.role(Role.USER.getValue())
.content()
.build();
GenerationParam.builder()
.apiKey(System.getenv())
.model()
.messages(Arrays.asList(systemMsg, userMsg))
.resultFormat(GenerationParam.ResultFormat.MESSAGE)
.build();
gen.call(param);
}
{
{
callWithMessage();
System.out.println(JsonUtils.toJson(result));
} (ApiException | NoApiKeyException | InputRequiredException e) {
System.err.println( + e.getMessage());
}
System.exit();
}
}








