百度千帆大模型 api key 申请

模型与算力

讲清百度千帆大模型 API Key 从开通、创建到落进环境变量的完整动作,附权限与报错排查顺序。

你想接千帆,账号注册完了却发现控制台里找不到能用的密钥,或者密钥拿到了、跑第一条请求就报鉴权失败。这篇按顺序走一遍:先分清密钥类型和控制台入口,再走申请与授权动作,最后把密钥安全地放进本地配置并验证。适合第一次接千帆的开发者,也适合接完一直调不通的人。

你想接千帆,账号注册完了,结果在控制台里翻半天找不到一条能用的密钥;或者密钥拿到了,跑第一条请求就报鉴权失败。这两种情况其实都不是运气问题,而是把「密钥类型」「授权范围」「存放位置」这三件事混在一起了。这篇按顺序走一遍:先分清你要的是哪种密钥、在哪个入口拿,再走申请与授权动作,最后把密钥安全地放进本地配置并验一次。

适合第一次接千帆的开发者,也适合接完一直调不通、已经开始怀疑自己代码的人。下面每一步都给了判断标准和可执行动作,你照着做,调通之后再回头改业务代码,能少绕很多弯。

先认清你要的是哪种密钥、在哪个入口拿

千帆这边的凭据不是只有一种,常见的有直接用的应用级 Key、先换取令牌再调用的 OAuth 方式,还有云账号层面的 AK/SK。它们的用途和刷新方式都不一样,混用是鉴权失败的头号原因。判断方法很简单:看你是直接调模型推理接口,还是要先换一个 access_token 再调,这两种写法不能互相替换。

凭据类型典型用途刷新特点
应用级 Key直接调推理接口长期有效,可手动轮换
OAuth 换取先换令牌再调用令牌短期有效,需定时刷新
云账号 AK/SK云资源与部分平台操作权限大,慎用,按需最小授权

入口在云控制台的大模型平台模块下。这里有个坑要提醒:注意区分「应用管理」和「密钥管理」两个页面,名字看着像,实际不是一回事,一个管应用维度的配置,一个管凭据本身。你在哪个页面创建、在哪个页面查看,先确认清楚再动手。如果连自己属于哪种调用方式都不确定,去站内平台目录对着计费与限制口径确认一遍,比自己猜要快。

申请与授权:把密钥和要用的模型绑到一起

  • 创建应用或服务账号后,要在授权环节显式勾选可调用的模型范围,没勾的模型即使密钥有效也会被拒;
  • 子账号或协作者场景要给对应权限策略,只给账号不给人权限,是最常见的「我明明有 key 却 403」;
  • 有多个环境时分开建应用,开发、测试、线上各用各的,出问题好定位也好轮换;
  • 可开通的模型清单和额度口径以控制台当时显示为准,想横向比价格到站内官方 API 页面核对。

很多人以为「创建完就有权限了」,其实创建只是第一步,绑定才是关键。你要用的模型必须在这个应用或服务账号的授权范围里,否则请求会以一个看起来很像权限错误的响应被拒。同样的,团队成员能不能用,取决于有没有给他对应的权限策略,而不是取决于这条密钥存不存在。

  1. 建应用或服务账号在平台模块下按环境分别创建,命名带上环境后缀,比如 dev、test、prod,方便后面区分。
  2. 勾选模型授权在授权环节逐项确认要调的模型都勾上了,漏勾的模型后续会被拒,这一步别用默认值敷衍。
  3. 分配账号权限如果是子账号或协作者,去权限策略里把对应权限给到人,光给密钥不算授权。
  4. 留存记录把哪个应用对应哪个环境、授权了哪些模型记在一张表里,轮换和排查时直接查表。

落地配置:怎么存、怎么第一次调通

密钥只放环境变量或本地配置文件,不要写进源码,更不要提交到仓库。团队协作时每人用各自的密钥,出事能直接定位到人。标准动作就三步:先导出环境变量,再跑一条最小请求,最后打印返回里的模型名和用量字段,确认走的确实是你预期的那个模型,而不是被默认路由带偏了。

export QIANFAN_API_KEY="你的密钥";curl -s -H "Authorization: Bearer $QIANFAN_API_KEY" -H "Content-Type: application/json" -d '{"messages":[{"role":"user","content":"hi"}]}' "你的接口地址" | head -c 400

「连不上」的请求,多数问题出在三个地方:接口地址、模型名、鉴权头。base_url 少了版本段,或者路径写重了一段,都会让你在鉴权之前就断掉。建议先用 curl 或官方 SDK 调通,再往业务代码里搬,这样排查时你能确定问题是在网络和凭据,还是在你的框架封装上。

检查项正确姿势常见错误
接口地址保留完整版本段与路径少一段或重复拼接
模型名与控制台授权范围一致凭记忆手写、带多余后缀
鉴权头格式与凭据类型匹配把 OAuth 和直连写法混用

报错排查顺序:按这个链路走,别乱试

出问题别一上来就改代码,按链路一层层往下查更快。第一层看 HTTP 状态码:401 多半是密钥本身或鉴权头格式不对,403 多半是权限与模型授权问题,429 是限流而不是密钥坏了。把状态码先分类,你就已经排除掉一大半错误方向。

  • 第二层看密钥时效与额度:过期、被禁用、额度耗尽都会伪装成鉴权错误,去控制台看状态,别反复重试;
  • 第三层看网络与出口:内网、代理、白名单限制会让请求在到达鉴权前就断掉,先用站内测速工具量出你的延迟基线;
  • 第四层才轮到模型参数:模型名拼错、版本后缀不匹配,返回的错误看起来同样像权限问题;
  • 每一层都确认过再往下走,跳层排查等于把已知条件丢掉。
下一步把凭据类型、授权范围、存放方式三件事都对齐之后,再去核对当时的模型清单与价格口径,避免用一条密钥试遍所有模型。

常见问题

千帆的 API Key 能不能直接写在前端代码里?

不行。前端代码任何人都能看到,密钥等于公开。正规做法是后端转发:前端调你自己的服务,由后端持密钥去调千帆,同时在后端加上限流和来源校验。真要在本地临时试,也只用环境变量,别写进文件提交上去。

密钥申请下来了,为什么第一条请求就报鉴权失败?

按顺序查三件事:鉴权头的拼法对不对,密钥有没有加上多余空格或换行,以及这条密钥有没有被授权到你要调的那个模型。前两个改代码就能解决,第三个要回控制台补授权,改代码怎么试都没用。

开发、测试、线上能不能共用一条密钥?

能跑,但不建议。共用之后你没法从用量上看清是哪个环境在烧钱,轮换时还要一起改。分开建应用的代价很低,收益是出问题能一眼定位,以及某条密钥泄露时可以只停那一条。

本文依据各平台公开文档与官方公告整理,只做中文归纳;具体做法、参数与限制以官方文档为准。