Vuncloud 博客
← 返回机房手记专栏

GitHub Models API 如何调用?免费额度、限制和最佳实践(2026)

PAT 鉴权 · OpenAI 兼容端点 · 免费速率限制 · GitHub Actions · 付费与 BYOK · 退役迁移约 12 分钟阅读

开发者在终端调用 GitHub Models API,屏幕显示代码与 AI 模型推理请求

重要:GitHub Models 已于 2026 年 7 月 30 日全面退役

根据 GitHub 官方文档,Playground、模型目录、推理 API 与 BYOK 均已下线,与 GitHub Copilot 是独立服务。本文保留完整技术档案供迁移参考;若你仍有指向 models.github.ai 的代码,请直接跳到文末迁移方案

「用 GitHub 账号就能调 GPT-4o?不用绑信用卡?」

2024 年底 GitHub 推出 GitHub Models 后,不少开发者把它当作「零成本 LLM 沙盒」:一个 PAT、一个 OpenAI 兼容端点,脚本、CLI、GitHub Actions 都能跑。它确实降低了 AI 原型验证的门槛——但免费层有硬限速、官方不推荐生产、且服务寿命比很多人预期的短。

这篇把 GitHub Models API 怎么调、免费额度怎么算、踩坑怎么避、退役后去哪 一次讲清。即便服务已下线,理解它的设计对选型其它推理平台仍有参考价值。

OpenAI 兼容
chat/completions 规范,SDK 改 base_url 即用
150/天
免费账户低复杂度模型日请求上限(基准档)
models:read
PAT 或 Actions GITHUB_TOKEN 所需权限

一、GitHub Models 是什么

GitHub Models 是 GitHub 提供的 AI 推理 API 与 Playground,让你用 GitHub 凭证(而非各家厂商独立 API Key)调用多厂商模型。核心特点:

  • 模型目录:OpenAI(GPT-4o、GPT-4.1 等)、Meta Llama、DeepSeek、Microsoft Phi 等,统一以 publisher/model_name 格式引用
  • OpenAI 兼容:端点遵循 chat/completions 规范,现有 OpenAI SDK / LangChain 等可无缝切换
  • GitHub 原生集成:Actions 工作流声明 models: read 即可用内置 token 调模型
  • 分层计费:免费层面向实验;超额可开通按量付费或 BYOK(自带厂商密钥)

它与 GitHub Copilot 是两条产品线:Copilot 面向 IDE 内编码辅助;Models 面向你把 LLM 嵌进自己的应用、脚本或 CI 流水线。退役后,GitHub 建议需要模型目录的走 Azure AI Foundry,需要 GitHub 内 AI 工作流的走 Copilot。

二、鉴权:PAT 与权限范围

调用推理 API 需要 GitHub 凭证,两种方式:

Personal Access Token(本地 / 服务器脚本)

  1. 打开 GitHub → Settings → Developer settings → Personal access tokens
  2. 创建 Fine-grained PAT 或 Classic PAT,勾选 models:read(Classic 版显示为 models scope)
  3. 请求头携带:Authorization: Bearer ghp_xxxx

安全提示

  • PAT 只放环境变量或密钥管理器,不要提交到仓库
  • Fine-grained PAT 建议限定到必要仓库,并设过期时间
  • CI 优先用 GITHUB_TOKEN,避免长期 PAT 泄露风险

GitHub Actions 内置 Token

工作流中声明权限后,runner 自带的 GITHUB_TOKEN 自动获得 models:read,无需额外 secret:

permissions:
  contents: read
  models: read   # 解锁 GitHub Models 推理

三、API 调用方式

核心端点:https://models.github.ai/inference/chat/completions。模型 ID 格式 {publisher}/{model_name},例如 openai/gpt-4ometa/llama-3.3-70b-instruct

3.1 curl 直连

最简请求示例(服务存续期间可用):

curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer YOUR_GITHUB_PAT" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  -H "Content-Type: application/json" \
  https://models.github.ai/inference/chat/completions \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {"role": "user", "content": "用三句话解释 GitHub Models API"}
    ]
  }'

响应结构与 OpenAI chat/completions 一致:choices[0].message.content 即模型输出。支持 stream: true 流式返回、temperaturemax_tokens 等标准参数。

3.2 OpenAI Python / JS SDK

因为协议兼容,改 base_urlapi_key 即可:

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["GITHUB_TOKEN"],
    base_url="https://models.github.ai/inference/",
)

completion = client.chat.completions.create(
    model="openai/gpt-4o",
    messages=[
        {"role": "system", "content": "你是简洁的技术助手"},
        {"role": "user", "content": "GitHub Models 和 Copilot 有什么区别?"},
    ],
)
print(completion.choices[0].message.content)

LangChain、Vercel AI SDK 等凡支持自定义 OpenAI base URL 的框架,迁移成本同样很低——这也是 GitHub Models 在开源社区快速传播的原因。

3.3 GitHub Actions 集成

典型场景:PR 自动摘要、Issue 分类、changelog 生成。完整 workflow 骨架:

name: AI Triage
on:
  issues:
    types: [opened]

permissions:
  issues: write
  models: read

jobs:
  triage:
    runs-on: ubuntu-latest
    steps:
      - name: Classify issue with LLM
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          curl -s https://models.github.ai/inference/chat/completions \
            -H "Content-Type: application/json" \
            -H "Authorization: Bearer $GITHUB_TOKEN" \
            -d '{
              "model": "openai/gpt-4o-mini",
              "messages": [{
                "role": "user",
                "content": "将以下 Issue 分类为 bug/feature/question:..."
              }]
            }'

组织级还可通过策略控制哪些仓库、哪些成员能访问 Models——适合在团队内统一 AI 用量而不共享厂商 API Key。

3.4 模型目录查询

列出可用模型:

curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer YOUR_GITHUB_PAT" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://models.github.ai/catalog/models

返回各模型的 publisher、上下文窗口、是否支持 streaming 等元数据。选型时先查目录,再对照下方速率限制表——不同模型归属不同复杂度档位,限额差异很大。

开发者审查 API 响应数据与速率限制日志,排查 GitHub Models 调用问题
免费层遇 429 时,先查 RPM/RPD 哪条触顶,再决定是否排队或升级

四、免费额度与速率限制

GitHub Models 免费 API 处于公开预览阶段(存续期间),官方注明限额可能调整。免费层不是无限调用,而是按四个维度限速:

  • 每分钟请求数(RPM)
  • 每天请求数(RPD)
  • 单次请求 token 上限(输入 / 输出分开计)
  • 并发请求数

限额还随你的 GitHub Copilot 订阅档位浮动。下表为 GitHub 官方文档记载的基准值(Copilot Free 档 vs Enterprise 档):

模型档位 指标 Free Pro Pro+ Enterprise
低复杂度
GPT-4o-mini、Llama 3 等
每分钟 15 15 15 20
每天 150 150 300 450
单次 token 8,000 输入 + 4,000 输出(Enterprise 输出 8,000)
并发 5 5 5 8
高复杂度
GPT-4o、GPT-4.1 等
每分钟 10 10 10 15
每天 50 50 100 150
单次 token 8,000 输入 + 4,000 输出 16,000 输入 + 8,000 输出
并发 2 2 2 4
Embedding 每分钟 15 15 15 20
每天 150 150 300 450
单次 token 64,000
并发 5 5 5 8
推理模型
DeepSeek-R1、Grok-3 等
每分钟 约 1–2
每天 约 8–15
单次 token 约 4,000 输入 + 4,000 输出
并发 1

读表要点

  • 日限额最先撞墙:免费账户调 GPT-4o 一天只有 50 次,跑批处理很容易触顶
  • 推理模型极紧:DeepSeek-R1 类每天个位数请求,只适合偶尔试效果
  • 触发 429 后需等待:哪条限速命中就等对应窗口重置(分钟级或日级)
  • 免费层 ≠ 生产许可:官方定位是原型验证,无 SLA、无专属容量保障

2025 年中 GitHub 开放了两条超出免费限额的路径:

按量付费(Pay-as-you-go)

  • 在组织 / 个人账户 Billing 中主动开通付费用量(默认关闭)
  • 计费单位:token unit,单价 $0.00001 / unit
  • 不同模型有乘数(multiplier):GPT-4o 输入 token 乘数 0.25,折算后与 OpenAI 直连价基本一致
  • 解锁更高 RPM/RPD、更大上下文窗口、更多并发

自带密钥(BYOK)

  • 绑定你自己的 OpenAI 或 Azure AI 密钥,用量计入厂商账户
  • 团队成员无需看到真实 API Key,由 GitHub 安全托管
  • 在 Playground、Actions、评估流程中与 GitHub 托管模型用法一致

付费与 BYOK 适合「已在 GitHub 生态内、希望统一账单 / 权限」的团队。若你只需要裸 API 吞吐,直连厂商往往更直接——详见 大模型定价选型指南

六、最佳实践

1. 明确场景:实验 yes,生产 no

免费层最适合:个人 side project 原型、开源 Action 演示、对比不同模型输出、CI 里低频辅助任务(如 PR 标题建议)。不适合:面向用户的聊天产品、高 QPS 后端、延迟敏感链路。

2. 模型分级路由

把请求按复杂度分流:简单分类 / 摘要用低复杂度模型(GPT-4o-mini、小参数 Llama),只有真正需要推理质量时才调 GPT-4o 或 DeepSeek-R1。免费账户 GPT-4o 日限 50 次,滥用一天就没额度。

3. 控制 token 预算

单次上限 8K 输入 + 4K 输出。长文档先摘要再推理;system prompt 保持精简;设 max_tokens 防止输出失控。Embedding 虽允许 64K,但大批量仍受日请求数约束。

4. 优雅处理 429

实现指数退避重试;区分 RPM(等 60 秒)与 RPD(等次日或切付费);并发用信号量控制在限额内(低复杂度 5、高复杂度 2)。

5. Actions 里用 GITHUB_TOKEN,本地用短期 PAT

CI 场景零配置;本地开发用 Fine-grained PAT + 过期时间。绝不要把 token 写进 workflow 日志——curl 加 -s 并避免 set -x 打印 Authorization 头。

6. 抽象推理层,便于迁移

base_urlmodelapi_key 收口到环境变量或配置对象。GitHub Models 已退役,这层抽象现在显得尤为重要——同一套代码可指向 OpenAI、Azure AI Foundry 或自建网关。

七、退役后的迁移方案(2026-07-30 起)

GitHub 官方给出的替代路径:

你的需求 推荐替代 迁移要点
多模型目录 + 企业级推理 Azure AI Foundry 模型选择与托管规模最接近原 GitHub Models 定位
GitHub 内 AI 工作流(PR、Issue) GitHub Copilot IDE / PR 审查 / Agent 模式,非裸 API
OpenAI 兼容、最低迁移成本 OpenAI API base_url 改回 https://api.openai.com/v1,换 API Key
CI 中 LLM 调用 Actions + 厂商 Secret 删除 models: read,改用 OPENAI_API_KEY 等 secret

最小改动迁移 checklist:

  1. 全局搜索 models.github.ai,列出所有引用
  2. 替换 base_url 与鉴权方式为新的提供商
  3. 更新模型 ID(如 openai/gpt-4ogpt-4o,视厂商格式而定)
  4. 删除 workflow 中已无意义的 permissions: models: read
  5. 重新评估速率限制与计费——免费层幻觉不再存在,需按新平台配额规划

FAQ

GitHub Models API 现在还能用吗?

不能。2026 年 7 月 30 日起全面退役,所有端点下线。

如何鉴权?

PAT 带 models:read,或 Actions 声明 models: read 使用 GITHUB_TOKEN

免费额度多少?

低复杂度约 15 RPM / 150 RPD;高复杂度约 10 RPM / 50 RPD;推理模型更严。随 Copilot 档位上浮。

与 OpenAI API 兼容吗?

兼容 chat/completions。SDK 改 base_urlhttps://models.github.ai/inference/ 即可。

免费层能用于生产吗?

不能。官方定位为实验;无 SLA,限速严格。

结语

GitHub Models API 如何调用?一句话:PAT 鉴权 + OpenAI 兼容端点 + 按模型档位限速——它曾是零门槛试模型的捷径,但免费层日请求个位数到百次量级,从来都不是生产方案。

服务虽已退役,它留下的经验仍然有用:用兼容协议降低迁移成本、在 CI 里声明最小权限、把推理层抽象成可替换配置。下一步该把 models.github.ai 从代码里清干净,按场景选 Azure AI Foundry、OpenAI 直连或 Copilot——更系统的对比可参考 大模型定价选型指南

LLM Agent 要跑 Xcode 构建?配稳定 Cloud Mac 执行节点

模型 API 迁走了,macOS 构建环境还在。Vuncloud 独享 Mac mini M4,让 CI / Agent 过夜跑 TestFlight 不断线。

查看 Cloud Mac 套餐 · 大模型定价选型指南

限额与退役信息以 GitHub Models 官方文档 为准。最后更新:2026 年 7 月 31 日。

机房手记 · AI API

GitHub Models 退役 · 推理层迁移 · Cloud Mac 执行

OpenAI 兼容调用 · 免费限速 · Actions 集成 · Azure AI Foundry

查看 Cloud Mac 套餐
限时优惠 点击查看套餐