供应商设置
在任何代理代码能运行之前,它需要知道向哪里发送请求、用哪个密钥授权,以及调用哪个模型。这一页帮你把这三个值都准备好。
你的 API 密钥是凭证
把它当作密码看待。绝不要粘贴到 JavaScript 文件里,绝不要提交到版本控制,绝不要在 Discord 求助消息里发出来。任何拿到你密钥的人都可以花你的额度。
正因为这个原因,课程把所有的 API 调用都放在服务器上,而不是在浏览器里。浏览器代码对任何打开浏览器开发者工具的人都是可见的,所以用在那里的密钥就等于把它给了别人。
检查你已经有什么
如果你学过"AI 工程入门",这些变量可能还保存在你的 Scrimba 账户里。
在 Scrimba 编辑器中打开 Settings,然后选择 Edit Environment。找三个名字分别叫 AI_URL、AI_KEY 和 AI_MODEL 的条目。
如果这三个都在,而且指向的供应商你还有额度,那你大概已经准备好了。跳到推荐模型确认 AI_MODEL 中的模型支持工具调用,因为这个要求在这门课中比上一门课更严格。
如果有任何一个缺失,或者你想切换供应商,继续往下读。
检查只需要几秒钟,可以省去创建一个你不需要的账户。
选择哪个供应商
OpenAI 是这门课最安全的默认选择。Responses API 就是从它的 API 来的,使用它需要付费的 API 额度。成本取决于模型、请求大小和你的实验量,所以在添加你觉得舒服的金额之前先查看当前价格。
OpenRouter 是你不能或不想用 OpenAI 时的替代方案。它是单一的 API,能路由到许多供应商,包括免费模型,而且提供的也是课程调用的同一个 OpenAI 风格的 Responses API,所以课程代码不需要改变。
不管怎样,设置都遵循同样的模式:创建账户,生成密钥,然后保存供应商的 URL、你的密钥和一个模型 ID。
如果直接向 OpenAI 支付对你不方便,或者你想要一个账户就能用许多模型,那就选 OpenRouter。
设置 OpenAI
前往 OpenAI 开发者平台并登录或创建账户。
ChatGPT Plus 不是 API 额度
开发者平台的计费与 ChatGPT 订阅分开。有 ChatGPT Plus 不会给你的 API 账户任何额度。
在平台设置中打开 Billing,如果你的账户需要的话添加额度。这门课不需要昂贵的模型:少量额度加轻量级模型足够跟着学。
现在在平台设置中打开 API keys,选择 Create new secret key。给密钥起一个能帮你记起它是用来干什么的名字。密钥创建后立刻复制它,因为完整的值只显示一次。
回到 Scrimba,打开 Edit Environment 并设置:
AI_URL=https://api.openai.com/v1
AI_KEY=your-api-key-here
AI_MODEL=gpt-5.4-nanogpt-5.4-nano 是课程的默认模型。如果你想要别的,看看推荐模型。三个值都填好后保存环境变量。
设置 OpenRouter
创建一个 OpenRouter 账户,打开 API Keys 页面,为 Scrimba 创建一个密钥。
OpenRouter 有免费模型,但它们不总是可用的,而且从一次运行到另一次的表现可能不一样,这样就很难分辨一个奇怪的结果是来自你的代码还是来自模型。所以更安全的选择和 OpenAI 一样:加载一小笔额度,如果你想要一致的结果就选一个轻量级的付费模型。
如果你确实打算用免费端点,先打开 Privacy 设置,在启用它们之前查看数据策略选项。免费端点可能把你的请求路由到有不同数据策略的供应商,所以在发送任何真实数据之前做个明确的决定。
在 Scrimba 中,设置:
AI_URL=https://openrouter.ai/api/v1
AI_KEY=your-api-key-here
AI_MODEL=mistralai/ministral-3b-2512mistralai/ministral-3b-2512 是 OpenRouter 推荐模型中的一个。保存环境变量。
mistralai/ministral-3b-2512,不是单独的短名字。 这三个值要一起动
最常见的设置失败不是单个值错了,而是一整套值不匹配。一个有效的密钥加上错误的供应商 URL 会失败,一个有效的供应商设置加上那个供应商没有的模型 ID 也会失败。两者都会产生认证或找不到模型的错误,读起来像是课程代码里有什么坏了。
所以无论何时切换供应商,都要把 AI_URL、AI_KEY 和 AI_MODEL 作为一个整体来改,然后一起保存。
在你自己的机器上运行代码?
Scrimba 把这些存为账户级环境变量,这就是为什么浏览器项目里没有 .env 文件。在你自己的机器上你会把同样的三个值放到 .env 文件里。本地运行代码讲了这个。
接下来去哪里
推荐模型讲了什么样的模型适合代理工作,以及哪些已经在这门课中被测试过。如果你更想看请求本身是怎么组织的,Chat Completions 和 Responses 比较了这两种 API 形状。
AI_MODEL 里。 
