Python接入火山引擎豆包API实现对话请求

云芳同学_3596

云芳同学_3596

2026-08-20

978人浏览

原创

需先获取api密钥并生成5分钟有效期的access-token,再构造含正确模型名(大小写敏感)和小写role字段的请求,调用/v3/chat/completions接口;缺少token或拼写错误将导致401/404/400错误。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

python接入火山引擎豆包api实现对话请求

要在Python程序中调用火山引擎豆包API发起实时对话请求,需先获取有效API密钥、构造符合v3版本规范的HTTP请求头与JSON载荷,并正确处理流式响应或普通响应。缺少Access-Token或模型名称拼写错误将直接返回401或404错误。

准备认证凭证与基础依赖

安装requests库:pip install requests。

登录火山引擎控制台→进入「机器学习平台VeDI」→左侧导航栏选择「大模型服务」→点击「豆包大模型」→在「API管理」页复制「API Key」和「Secret Key」。这两个值后续用于生成临时Access-Token,【不可直接作为请求头中的Authorization值使用】

访问 https://www.volcengine.com/docs/6560/1808792 获取当前支持的模型列表(如“doubao-pro”“doubao-lite”),模型名必须完全一致,大小写敏感。

生成Access-Token并封装请求函数

方法一:使用官方推荐的签名方式(推荐)

① 导入hashlib、hmac、base64、time、json、requests模块。

② 定义get_access_token(api_key, secret_key)函数:构造payload字典包含api_key、timestamp(当前秒级时间戳)、sign_method(固定为"HMAC-SHA256");将payload按key字典序拼接成query_str(如"api_key=xxx&sign_method=HMAC-SHA256×tamp=1717023456");用secret_key对query_str做HMAC-SHA256哈希,再base64编码得到sign;最后把sign加入payload并URL编码,拼成完整access_token字符串。

③ 调用该函数获得access_token字符串,它有效期5分钟,建议每次对话前重新生成,避免复用过期token导致401。

火山引擎
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

下载

发送标准对话请求

创建post_chat_request函数,接收access_token、model_name、messages列表(含role/content键)三个参数。

设置headers = {"Authorization": f"Bearer {access_token}", "Content-Type": "application/json; charset=utf-8"}。

构造data字典:{"model": model_name, "messages": messages, "stream": False}。若需流式响应,将stream设为True,但需改用iter_lines()解析——此处只处理非流式。

执行response = requests.post("https://ark.cn-beijing.volces.com/api/v3/chat/completions", headers=headers, json=data, timeout=30)。注意域名中的cn-beijing是默认区域,如开通了其他区域(如cn-shanghai),需同步替换域名。

检查response.status_code == 200,然后解析response.json()["choices"][0]["message"]["content"]提取回复文本。

运行示例对话

定义messages = [{"role": "user", "content": "你好,请用中文简单介绍你自己"}]。

依次调用get_access_token → post_chat_request → 打印返回内容。

这一步操作起来很简单,只要四行代码就能跑通首次请求,但如果messages里role写成"User"或"assistant"(首字母大写),API会返回400错误提示字段不合法。

大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!

相关专题

更多
python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

2023.07.20

1551

4

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

2023.07.25

3644

7

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.31

1569

3

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

2023.08.03

20817

23

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.04

2567

5

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.04

2627

5

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

1063

5

python合并两个列表
python合并两个列表

Python是一种强大的编程语言,具有许多方便的功能和工具。在Python中,有多种方法可以合并两个列表。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.10

576

4

python是前端还是后端
python是前端还是后端

Python属于前端也属于后端,其灵活性和丰富的生态系统使得开发人员能够在不同的领域中灵活运用。本专题为大家提供python相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.11

2043

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程