KO ▾
API 키 받기

GLM API Base URL: 모든 OpenAI 클라이언트 연결

이 서비스의 glm api base url은 https://api.glmapi.cc/v1이며, 모델 ID는 uncensored이고 인증은 표준 Bearer 키를 사용합니다. 아래에는 curl, Python, Node 및 일반적인 채팅 프론트 엔드를 위한 정확한 설정과 첫 번째 호출 실패의 주요 원인이 나와 있습니다.

주요 포인트

  • Base URL: https://api.glmapi.cc/v1. 모델: uncensored. 헤더: Authorization: Bearer <key>.
  • 두 개의 엔드포인트: POST /v1/chat/completions 및 GET /v1/models.
  • 대부분의 연결 오류는 /v1 누락, 경로 중복 또는 붙여넣기 시 trailing slash 추가 때문입니다.
  • 이것은 독립적인 엔드포인트이며, GLM 또는 다른 벤더의 공식 API가 아닙니다.
클라이언트를 새 API Base URL에 연결하는 것을 나타내는 서버에 빛나는 케이블로 연결된 터미널

필요한 세 가지 값

glm api base url 관련 질문은 보통 URL, 키, 모델 이름이 필요하지만 각 값의 위치를 모르는 클라이언트를 가진 사용자가 묻습니다. 여기 모든 정보가 한 곳에 정리되어 있습니다.

설정내용
기본 URLhttps://api.glmapi.cc/v1
모델 IDuncensored
인증 헤더Authorization: Bearer YOUR_KEY
채팅 엔드포인트POST /v1/chat/completions
모델 목록GET /v1/models

아무것도 복사하기 전에 한 가지 명확히 하겠습니다. 도메인 이름은 모델을 지칭하는 것이 아니라 검색어를 나타냅니다. 이는 독립적인 제공자가 운영하는 하나의 오픈 웨이트 모델을 위한 호스팅된 OpenAI 호환 텍스트 API로, 성인의 합법적인 사용을 위해 콘텐츠 거부 없이 답변하도록 조정되었습니다. 이는 GLM 뒤의 벤더의 공식 API가 아니며, 다른 벤더로 요청을 전달하는 라우터도 아닙니다. 공식 GLM 모델이 필요하면 해당 벤더의 자체 서비스를 사용하세요.

Google 또는 이메일과 비밀번호로 회원가입하면 키를 받습니다. API 키 페이지에서도 카드 없이 7일 동안 유효한 $0.50 체험 크레딧을 클릭 한 번으로 받을 수 있습니다.

curl로 연결 확인하기

SDK나 앱에 접근하기 전에 일반 요청으로 키와 URL을 확인하세요. 이것이 작동하면 이후의 모든 문제는 계정 문제가 아니라 클라이언트 구성에 있습니다. 먼저 모델을 나열하세요:

curl https://api.glmapi.cc/v1/models \
  -H "Authorization: Bearer YOUR_KEY"

id uncensored가 포함된 JSON 목록을 받아야 합니다. 그런 다음 채팅 완료 요청을 하나 보내세요:

curl https://api.glmapi.cc/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Reply with the word ready."}],
    "max_tokens": 20
  }'

-i를 추가하여 응답 헤더를 확인하세요. 여기에는 X-Request-Id, X-Balance-USD(남은 크레딧), X-RateLimit-Limit-Requests 및 X-RateLimit-Limit-Concurrency이 포함됩니다. API 호출에 대해 지원팀에 문의할 필요가 있을 경우 요청 ID를 보관하세요.

Python 및 Node

공식 OpenAI SDK는 사용자 정의 Base URL을 모두 지원합니다. 생성자 인수와 모델 이름만 변경하면 나머지 코드는 그대로 유지됩니다.

Python

from openai import OpenAI

client = OpenAI(
    base_url="https://api.glmapi.cc/v1",
    api_key="YOUR_KEY",
)

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Give me three names for a tavern."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.glmapi.cc/v1",
  apiKey: process.env.GLM_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Give me three names for a tavern." }],
});
console.log(resp.choices[0].message.content);

Node의 속성은 대문자를 사용하는 baseURL인 반면, Python의 인수는 base_url입니다. 이 둘을 혼동하면 SDK의 기본 호스트로 조용히 폴백되어 잘못된 서버에서 인증 오류가 발생할 수 있습니다.

코드 대신 환경 변수 사용

OpenAI SDK는 명시적으로 전달하지 않을 때 환경 변수에서 OPENAI_BASE_URL 및 OPENAI_API_KEY을 읽습니다. 이는 저장소나 클라이언트를 위한 프레임워크와 같이 편집할 수 없는 도구를 재지정하는 가장 덜 침습적인 방법입니다.

export OPENAI_BASE_URL="https://api.glmapi.cc/v1"
export OPENAI_API_KEY="YOUR_KEY"
python my_existing_script.py

도구나 구성 파일에 모델 이름을 uncensored로 설정해야 합니다. 환경 변수 중 이 값을 담고 있는 것이 없기 때문입니다. 모델 드롭다운이 알고 있는 이름만 나열하는 경우, 사용자 정의 모델이나 텍스트 입력 옵션을 찾아보세요.

값을 한 곳에 보관하세요

연결이 작동하면 URL을 여러 파일에 붙여넣지 마세요. 세 가지 값을 한 곳에 넣고 다른 곳에서는 이를 읽어오세요. 작은 프로젝트에는 .env 파일이 적합합니다:

GLM_BASE_URL=https://api.glmapi.cc/v1
GLM_API_KEY=YOUR_KEY
GLM_MODEL=uncensored

그런 다음 시작 시 한 번에 로드하고 프로그램의 나머지 부분이 가져오는 단일 클라이언트를 구성하세요. 키를 교체하거나 체험 잔액이 있는 스테이징 키를 추가하거나 이 엔드포인트를 다른 엔드포인트와 비교할 때 이 이점이 나타납니다. 코드베이스가 아닌 파일을 편집합니다.

계정에서 허용하는 경우 개발용과 운영용 키를 별도로 유지하고, 키가 커밋, 스크린샷 또는 공유 로그에 나타날 경우 즉시 교체하세요. 유출된 키는 선불 크레딧을 소모하며 크레딧은 다시 돌아오지 않습니다.

채팅 앱 및 프레임워크

프론트 엔드는 표현은 다르지만 동일한 세 가지 값을 요구합니다. OpenAI 호환, 사용자 정의 OpenAI 또는 유사한 연결 유형을 찾아 다음을 입력하세요:

  • API URL / Base URL: https://api.glmapi.cc/v1
  • API 키: 계정에서 발급받은 키
  • 모델: uncensored

SillyTavern은 사용자 정의 채팅 완료 소스를 통해 OpenAI 호환 엔드포인트를 추가할 수 있게 하며, Open WebUI는 설정에 OpenAI 호환 연결 유형을 제공합니다. LangChain과 같은 프레임워크는 채팅 모델 클래스에 base_url을 받으며, LiteLLM은 사용자 정의 API base를 통해 OpenAI 스타일의 모델을 라우팅할 수 있습니다. 메뉴 이름은 버전마다 다르므로 필드가 정확히 어디에 있는지 확인하려면 각 프로젝트의 현재 문서를 따르세요.

일부 앱은 /chat/completions을 자동으로 추가할지 묻습니다. 많은 앱이 이를 추가하므로 입력하는 URL은 /v1에서 끝나야 합니다. 대신 앱이 전체 엔드포인트를 요구하면 https://api.glmapi.cc/v1/chat/completions을 제공하세요. 빠른 시작 가이드는 지원되는 요청 필드를 더 자세히 보여줍니다.

첫 번째 호출이 실패하는 이유

curl 테스트가 통과했는데도 앱이 여전히 오류를 반환하면 원인은 거의 다음 중 하나입니다:

  • /v1 누락. https://api.glmapi.cc만 사용하면 경로가 /v1 아래에 있으므로 대부분 not-found 오류가 발생합니다.
  • 경로 중복. 앱이 /chat/completions을 추가하고 사용자가 이를 입력하면 /chat/completions/chat/completions이 생성됩니다. Base URL에서 이를 제거하세요.
  • 끝 슬래시. 일부 클라이언트는 경로를 잘못 연결합니다. 로깅된 URL에 이중 슬래시가 보이면 마지막 /을 제거하세요.
  • 잘못된 모델 이름. 유일한 모델 ID는 uncensored입니다. 다른 서비스의 이름은 일치하지 않습니다.
  • 키 문제. 붙여넣을 때 공백이나 줄 바꿈이 있는지 확인하고, 앱이 접두사를 이미 추가하므로 Bearer이 두 번 전송되지 않았는지 확인하세요.
  • 잘못된 호스트 호출. 브라우저 앱에서 Base URL이 설정되지 않으면 SDK 기본값으로 폴백됩니다. 실제 요청 URL을 로그하세요.

브라우저 측 호출은 키를 개발자 도구를 여는 모든 사람에게 노출합니다. 공개 사이트의 경우 요청을 자체 서버에서 보내고 키를 서버에 보관하세요.

위의 모든 것이 원인이 아닌 경우 가장 작은 사례부터 거꾸로 분석하세요. 실패한 앱이 있는 동일한 머신에서 이전의 curl 명령을 실행하세요. curl이 성공하면 네트워크와 키에 문제가 없으며 앱이 요청을 다르게 생성한다는 의미이므로 디버그 로깅을 활성화하여 로그된 URL, 헤더 및 JSON 본문을 curl 버전과 문자 단위로 비교하세요. curl이 해당 머신에서만 실패하면 기업 프록시, VPN 규칙 및 DNS 필터를 확인하세요. 때로는 익숙하지 않은 API 호스트 이름을 차단합니다. 서버에 도달하지 않는 요청은 X-Request-Id를 반환하지 않으며, 이는 두 경우를 빠르게 구분하는 방법입니다.

제한 사항 및 429 응답

전체 키는 동시 8개 요청과 분당 300개 요청을 허용합니다. 체험 키는 각각 2개와 60개를 허용합니다. 어느 한 쪽을 초과하면 API는 HTTP 429를 반환하며 코드 rate_limited(분당 너무 많음) 또는 concurrency(동시에 너무 많음)을 표시합니다. 일시적인 과부하 중에도 Retry-After: 5 헤더와 함께 429를 받습니다.

스트리밍 요청은 스트림이 끝날 때까지 동시 요청 슬롯을 유지하므로, 스트림을 열고 연결을 닫지 않고 버리면 애플리케이션이 자체적으로 자원을 고갈시킬 수 있습니다. 최대 요청 본문 크기는 8 MB이며, 컨텍스트 창은 프롬프트와 완료 텍스트를 합쳐 100,000 토큰을 지원합니다. 요금 및 충전 방법은 요금제 페이지를 참조하세요.

스트리밍, 도구, JSON은 동일한 URL을 사용합니다

스트리밍 또는 함수 호출을 위한 별도 주소가 없습니다. 모든 요청은 /v1/chat/completions으로 전송되며 요청 본문에서 기능을 전환합니다. 스트리밍 요청은 "stream": true을 설정하고 서버 전송 이벤트를 반환합니다. 도구 요청은 tools 및 선택적으로 tool_choice을 추가합니다. JSON 모드는 json_object 타입의 response_format을 추가합니다. temperature, top_p, stop, seed 및 페널티와 같은 샘플링 필드는 전달됩니다.

스트리밍 curl 호출 예제입니다. -N 플래그는 curl의 출력 버퍼링을 비활성화하여 청크가 도착하는 대로 볼 수 있게 합니다:

curl -N https://api.glmapi.cc/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","stream":true,"messages":[{"role":"user","content":"Count to five."}]}'

프록시 또는 호스팅 계층이 응답을 버퍼링하면 스트리밍이 하나의 큰 지연된 응답처럼 보일 수 있습니다. 리버스 프록시는 서버 전송 이벤트에 응답 버퍼링을 비활성화해야 할 수 있으므로 API를 탓하기 전에 해당 설정을 확인하세요. 각 기능의 Python 버전 예제는 빠른 시작 가이드를 참조하세요.

질문과 답변

이 API의 Base URL은 무엇인가요?

Base URL은 https://api.glmapi.cc/v1입니다. 채팅 요청은 그 아래 /chat/completions로 전송되며, 모델 목록은 /models에서 확인할 수 있습니다.

어떤 모델 이름을 사용해야 하나요?

uncensored를 사용하세요. 이것이 유일한 모델 ID이며, 사용자 지정 모델을 입력할 수 있는 모든 OpenAI 스타일 클라이언트에서 작동합니다.

이것이 공식 GLM API인가요?

아니요. 이는 독립적인 OpenAI 호환 서비스로, 하나의 오픈 웨이트 모델만 실행하며 어떤 벤더의 공식 API도 아닙니다.

어떤 헤더에 키를 넣어야 하나요?

Authorization: Bearer 뒤에 키를 붙입니다. OpenAI SDK는 키를 전달할 때 이를 자동으로 추가합니다.

연결 테스트에 카드가 필요한가요?

아니요. 회원가입 후 API 키 페이지에서 7일 동안 유효한 $0.50의 원클릭 무료 체험 크레딧을 사용할 수 있습니다.

키는 양식 하나만 작성하면 받을 수 있습니다

계정을 생성하고 키를 복사한 후 기본 URL을 변경하세요. 설정은 이것으로 끝입니다.

API 키 받기문서 읽기