Java对接火山引擎豆包大模型API实操教程
必须先注册火山引擎账号并完成实名认证,再创建API Key、开通目标模型,最后配置Ja va SDK依赖、初始化客户端并调用Chat API;全程需严格遵循步骤顺序与参数要求。

注册火山引擎账号并完成实操认证
要在Ja va项目中稳定调用豆包大模型API,必须先拥有一个已通过实名认证的火山引擎账号,否则后续所有API Key创建和模型开通操作都会被系统拦截。打开浏览器访问 https://www.php.cn/link/c40df15b5da1af4f7e5e658b00d4c627,点击右上角“注册”,输入手机号、设置密码、完成信息验证即可;已有抖音或今日头条账号的用户可直接扫码快捷登录——这一步比手动填信息快得多,且登录后自动继承部分实名数据。
登录成功后,立即进入控制台首页,点击右上角头像→「实名认证」→选择「个人认证」→按提示上传身份证正反面照片+实时人脸识别。⚠️
【未完成实名认证将无法创建API Key,且已创建的Key在调用时会返回403错误】
创建API Key并开通目标模型服务
实名通过后,必须创建具备调用权限的API Key,并确保对应模型已在火山方舟平台开通。这两步缺一不可,否则Ja va代码即使写对也会报错“model not found”或“unauthorized”。
方法一:直达式创建
在控制台顶部搜索栏输入「API Key」→进入「API密钥管理」页面→点击「创建API Key」→填写名称(如“ja va-prod-key”)→勾选「允许调用大模型服务」→点击「确定」。生成后立刻点击右侧「?️」图标查看完整密钥,
【务必复制并粘贴到本地安全文本文件中,该密钥仅显示一次,刷新页面即永久不可见】
方法二:模型驱动开通
打开最新模型开通页:https://www.php.cn/link/b772297392c6202611e55ad9cd9e9160→在列表中找到你要用的模型(例如通用主力款 doubao-1.5-pro-256k 或视觉模型 doubao-1.5-vision-32k)→点击右侧「开通」按钮。注意:不要只点「加入对比」或「查看详情」,必须点带绿色对勾图标的「开通」才生效。
配置Ja va项目依赖与基础客户端
采用最新推荐的Ja va SDK最为可靠,它已自动集成签名计算、重试逻辑以及连接池管理功能,可有效防止手动拼接Authorization Header时出现错误。SDK版本必须为0.2.3或更高,因为低版本不支持2026年新推出的vision和character系列模型。
第一步:添加 Ma ven 依赖
在 pom.xml 中插入以下两段(注意顺序不能颠倒):
第二步:初始化 ArkService 客户端
新建 Ja va 类,用你刚复制的 API Key 初始化服务实例:
String apiKey = "de8afed8-033c-xxxx-xxxx-xxxxxxxxxxxx"; // 替换为你自己的Key
ArkService service = ArkService.builder()
.apiKey(apiKey)
.connectionPool(new ConnectionPool(5, 1, TimeUnit.SECONDS))
.dispatcher(new Dispatcher())
.build();
编写Chat接口调用代码并验证响应
现在开始真正调用豆包模型的 Chat API。关键点在于:请求体中的 model 字段必须填写**已开通的模型ID全称**(如 doubao-1.5-pro-256k),而不是推理接入点 ID,填错会直接返回 404。
① 构建用户消息对象
创建 ChatMessage 实例,role 必须为 USER,content 不能为空字符串或纯空格。
② 组装 ChatCompletionRequest
传入 model、messages 列表,并显式指定 messages 为 List 类型(避免泛型擦除导致序列化失败)。
③ 发起同步调用并打印结果
调用 service.createChatCompletion(req),捕获 ApiException 并检查 status code 是否为 200。若返回非 200 响应体,直接打印 exception.getResponseBody() 可快速定位是密钥失效、模型未开通还是 prompt 格式错误。
示例代码片段:
Listmessages = new ArrayList<>();
messages.add(ChatMessage.builder().role(ChatMessageRole.USER).content("用中文解释量子纠缠").build());
ChatCompletionRequest request = ChatCompletionRequest.builder()
.model("doubao-1.5-pro-256k")
.messages(messages)
.build();
ChatCompletionResponse response = service.createChatCompletion(request);
System.out.println(response.getChoices().get(0).getMessage().getContent());
-
- 元宵节猜灯谜的祝福短信
- 角色扮演 |
-
- 关于柯南的沙雕网名有哪些
- 角色扮演 | 1
- 网名
-
- 最新中性名字男女通用网名有哪些
- 角色扮演 | 1
- 网名
-
- 关于蓝色说唱的网名有哪些
- 角色扮演 | 1
- 网名
-
- 我好喜欢你是什么梗?
- 角色扮演 |