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에 필요한 권한

1. GitHub Models란 무엇인가

GitHub Models는 GitHub가 제공한 AI 추론 API와 Playground로, 각 벤더의 독립 API Key 대신 GitHub 자격 증명으로 여러 벤더 모델을 호출할 수 있게 해 주었습니다. 핵심 특징:

  • 모델 카탈로그: 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을 권장합니다.

2. 인증: 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에서는 장기 PAT 유출 위험을 피하기 위해 GITHUB_TOKEN 우선 사용

GitHub Actions 내장 Token

워크플로에서 권한을 선언하면 runner의 GITHUB_TOKEN이 자동으로 models:read를 획득하며, 별도 secret이 필요 없었습니다:

permissions:
  contents: read
  models: read   # GitHub Models 추론 활성화

3. API 호출 방법

핵심 엔드포인트: https://models.github.ai/inference/chat/completions. 모델 ID 형식은 {publisher}/{model_name}이며, 예: openai/gpt-4o, meta/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 스트리밍, temperature, max_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에 접근할 수 있는지 제어할 수 있어, 벤더 API Key를 공유하지 않고 팀 내 AI 사용량을 통합 관리하기에 적합했습니다.

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 중 어느 한도에 걸렸는지 먼저 확인한 뒤, 대기 또는 업그레이드를 결정하세요

4. 무료 한도와 속도 제한

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 처리량만 필요하다면 벤더 직접 연결이 더 직관적일 수 있습니다. 자세한 내용은 대규모 언어 모델 가격·선택 가이드를 참고하세요.

6. 모범 사례

1. 시나리오 명확화: 실험 yes, 프로덕션 no

무료 계층에 가장 적합한 용도: 개인 사이드 프로젝트 프로토타입, 오픈소스 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_url, model, api_key를 환경 변수나 설정 객체로 통합 관리. GitHub Models가 종료된 지금 이 추상화가 더욱 중요합니다. 동일 코드로 OpenAI, Azure AI Foundry, 자체 게이트웨이를 가리킬 수 있습니다.

7. 종료 후 마이그레이션 방안(2026-07-30부터)

GitHub 공식 대안 경로:

필요 사항 권장 대안 마이그레이션 요점
다중 모델 카탈로그 + 엔터프라이즈급 추론 Azure AI Foundry 모델 선택과 호스팅 규모가 기존 GitHub Models 포지셔닝에 가장 근접
GitHub 내 AI 워크플로(PR, Issue) GitHub Copilot IDE / PR 리뷰 / Agent 모드, 순수 API 아님
OpenAI 호환, 최소 마이그레이션 비용 OpenAI API base_urlhttps://api.openai.com/v1로 되돌리고 API Key 교체
CI에서 LLM 호출 Actions + 벤더 Secret models: read 삭제, OPENAI_API_KEY 등 secret 사용

최소 변경 마이그레이션 체크리스트:

  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일부터 전면 종료되어 모든 엔드포인트가 중단되었습니다.

인증은 어떻게 하나요?

models:read가 포함된 PAT, 또는 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 요금제 보기 · LLM API 가격 가이드

한도 및 서비스 종료 정보는 GitHub Models 공식 문서를 기준으로 합니다. 최종 업데이트: 2026년 7월 31일.

개발 노트 · AI API

GitHub Models 종료 · 추론 계층 마이그레이션 · Cloud Mac 실행

OpenAI 호환 호출 · 무료 속도 제한 · Actions 통합 · Azure AI Foundry

Cloud Mac 요금제 보기
한정 혜택 요금제 보기