Groq API 怎么调用:密钥配置与 Python 请求实操
Groq API 的调用方式与 OpenAI 接口高度兼容:在 Groq 控制台创建 API Key,设置 GROQ_API_KEY 环境变量,然后用官方 Python SDK 或任意 HTTP 客户端向兼容接口发请求即可。
下面按实际接入顺序拆开讲。
先确认你要用的是哪类接口
Groq 提供的是模型推理 API,主要场景是调用托管在 Groq 上的大语言模型完成对话、补全等任务。
如果你之前用过 OpenAI SDK,迁移成本很低:改 base_url 和模型名,保留请求结构即可。
本文以 Python 环境为例,其他语言按同样的 HTTP 思路处理。
准备工作:密钥、模型名和运行环境
需要准备三样东西:
- 一个可用的 Groq 账号,并在控制台 API Keys 页面创建密钥。密钥只在创建时完整显示,离开页面后无法再次查看,建议立即保存到密码管理器。
- 确认你要调用的模型名称。模型列表会调整,以控制台当前展示的模型 ID 为准,不要照搬旧文章里的名称。
- Python 3.8 及以上环境,以及能正常访问 Groq 接口的网络。
安装官方 SDK:
pip install groq
不要把 API Key 直接写进代码后提交到 Git。
推荐用环境变量管理:
export GROQ_API_KEY="你的密钥"
在 Windows PowerShell 中对应写法为 $env:GROQ_API_KEY="你的密钥"。
生产环境建议放进 .env 文件并加入 .gitignore,或者使用服务器上的密钥管理服务。
发起第一次请求
下面是一个最小可运行示例,调用 Chat Completions:
import os
from groq import Groq
client = Groq(api_key=os.environ.get("GROQ_API_KEY"))
response = client.chat.completions.create(
model="控制台展示的模型ID",
messages=[
{"role": "user", "content": "用一句话解释什么是 API"}
],
temperature=0.7,
)
print(response.choices[0].message.content)
如果不想装 SDK,也可以直接用 HTTP 请求。
接口地址以 Groq 官方文档当前给出的兼容端点为准,请求体结构与上面一致,认证方式是在请求头里带 Authorization: Bearer 你的密钥。
用 curl 验证时重点看两件事:HTTP 状态码是否为 200,响应 JSON 中是否包含 choices 字段。
常见报错怎么排查
接入阶段最容易碰到三类问题:
- 401 Unauthorized:密钥无效或没有正确传入。先检查环境变量是否在当前终端生效,可以执行
echo $GROQ_API_KEY确认;如果密钥被复制时带了空格或换行,也会认证失败。 - 429 Too Many Requests:触发了速率限制。免费额度和速率限制会随账号情况变化,以控制台和官方文档为准。排查时先降低请求频率,再检查是否有循环里重复调用。
- 404 或模型不存在:模型 ID 写错或该模型已下线。回到控制台模型列表核对当前可用名称,不要沿用旧示例。
另外,请求超时通常和网络环境有关,可以在客户端设置合理的超时时间并加重试,但不要对 401 这类认证错误盲目重试。
验证调用是否真正成功
不要只看程序有没有抛异常。
建议在代码里打印 response.choices[0].message.content 和 response.usage,确认返回了实际内容和 token 用量。
如果返回内容为空,检查 messages 结构是否完整、模型是否支持当前请求参数。
把一次成功请求的请求体、状态码和返回字段记录下来,后续换模型或改参数时就有对照基线。
接入时值得注意的几个点
密钥只放在服务端,不要写进前端代码或公开仓库;
模型名称和接口地址属于会变化的信息,上线前以官方文档为准,不要硬编码在多个位置;
对限流和超时做好兜底处理,避免一次失败拖垮整个请求链路。
按这个顺序把第一次调用跑通,再逐步加参数和业务逻辑,排错会清晰很多。