GLM API: 클라이언트를 세 줄로 전환
두 가지 구성 값만 업데이트하면 몇 분 만에 기존 코드를 무검열 GLM API에 연결할 수 있습니다. 이 빠른 시작 가이드는 선불 크레딧을 사용하여 표준 OpenAI 호환 엔드포인트를 사용하는 방법을 안내합니다.
준비 사항: 키 받기
코드를 작성하기 전에 API 키가 필요합니다. 이 사이트의 API 키 받기 페이지를 방문하여 이메일과 비밀번호로 회원가입하세요. 시작하려면 전화번호나 신용카드가 필요하지 않습니다. 등록 시 7일 동안 유효한 $0.50 무료 체험 크레딧을 받거나, 암호화폐(USDT 또는 USDC)로 충전할 수 있습니다. 키는 회원가입 직후 표시됩니다. 이전 키를 무효화하기 위해 언제든지 재생성할 수 있으므로 안전하게 보관하세요.
이 키는 모든 요청을 glm api 엔드포인트에 인증합니다. 당사는 프롬프트를 학습에 사용하지 않으며, 키는 단일 계정에 연결됩니다. 더 많은 용량이 필요하면 만료되지 않는 선불 크레딧을 구매할 수 있습니다.
베이스 URL 및 키 구성
OpenAI의 대체재로 서비스를 사용하려면 SDK를 베이스 URL로 연결해야 합니다. 이것이 필요한 유일한 인프라 변경 사항입니다. 베이스 URL은 https://api.glmapikey.com/v1입니다. 또한 가입 시 받은 값으로 인증 헤더 또는 SDK 클라이언트 키를 설정해야 합니다.
공식 Python 및 Node SDK를 포함한 대부분의 OpenAI 호환 클라이언트는 베이스 URL을 재정의할 수 있습니다. 이를 통해 기본 모델을 변경하면서도 기존 애플리케이션 로직을 유지할 수 있습니다. 인증 오류를 피하려면 요청 전에 키가 올바르게 설정되었는지 확인하세요.
첫 번째 채팅 완료 요청 수행
/v1/chat/completions에 POST 요청을 보내 텍스트를 생성하세요. 이 모델은 user 및 assistant와 같은 역할이 포함된 표준 메시지 구조를 받습니다. 반드시 지정해야 하는 모델 ID는 uncensored입니다. 이는 합법적인 성인용 콘텐츠에 대한 콘텐츠 거부 없이 답변하도록 조정된 GPU에서 호스팅되는 오픈 웨이트 모델을 활성화합니다.
응답에는 생성된 텍스트가 포함된 JSON이 포함됩니다. 401 오류가 발생하면 키를 확인하세요. 402 오류가 발생하면 선불 크레딧이 고갈된 것입니다. $10부터 충전을 시작할 수 있습니다. 이 엔드포인트에서는 임베딩, 이미지 또는 파인튜닝을 지원하지 않는다는 점에 유의하세요.
Python SDK 사용
공식 OpenAI Python 라이브러리는 당사 API와 직접 작동합니다. 키와 특정 베이스 URL을 사용하여 클라이언트를 초기화하세요. 이 접근 방식은 구조화된 JSON 응답이 필요한 백엔드 서비스나 스크립트에 이상적입니다. 클라이언트는 직렬화 및 재시도 로직을 자동으로 처리합니다.
당사의 특정 엔드포인트에 접근하려면 모델 이름 uncensored을 전달하세요. 컨텍스트 창은 프롬프트와 완료의 합계가 최대 100,000 토큰까지 지원합니다. 이는 8 MB 요청 본문 제한 내에 머무는 한 잘림 없이 상당한 입력 데이터를 허용합니다.
Node SDK 사용
JavaScript 및 TypeScript 애플리케이션의 경우 openai NPM 패키지가 호환됩니다. Python 예제와 동일한 베이스 URL과 키로 클라이언트를 구성하세요. 이는 무검열 텍스트 생성이 필요한 서버 측 렌더링 또는 API 엔드포인트를 활성화합니다. SDK는 올바르게 구성되면 데이터를 효율적으로 스트리밍합니다.
이 SDK에서는 함수 호출이 지원됩니다. 요청에 함수 스키마를 정의하면 모델이 스키마와 일치하는 구조화된 JSON 출력을 반환합니다. 이를 통해 원시 텍스트를 구문 분석하지 않고도 외부 데이터 소스나 작업을 애플리케이션 흐름에 쉽게 통합할 수 있습니다.
스트리밍 응답 활성화
요청에 stream: true를 설정하여 서버 전송 이벤트(SSE)를 받으세요. 이를 통해 생성되는 대로 사용자에게 텍스트를 표시하여 지각된 지연 시간을 개선할 수 있습니다. API는 텍스트 청크를 반환하며, 클라이언트는 이를 연결하거나 점진적으로 렌더링해야 합니다.
스트리밍은 Python 및 Node SDK 모두에서 지원됩니다. 이는 사용자가 즉각적인 피드백을 기대하는 채팅 인터페이스에 특히 유용합니다. 각 청크에는 응답의 일부가 포함됩니다. 모델은 완료되거나 컨텍스트 창 제한에 도달할 때까지 생성을 계속합니다. 스트리밍과 함께 함수 호출을 사용하는 경우 클라이언트가 부분 JSON 구조를 올바르게 처리하는지 확인하세요.
제한 사항, 오류 및 모델
당사 API는 키당 분당 300개의 요청에 대한 속도 제한을 적용합니다. 이를 초과하면 429 오류가 발생합니다. 최대 요청 본문 크기는 8 MB입니다. 모델 검색을 위해 GET /v1/models 엔드포인트를 사용하세요. 이는 uncensored 모델 ID를 포함한 사용 가능한 모델 목록을 반환합니다.
잘못된 키로 인한 401 오류와 부족 크레딧으로 인한 402 오류가 일반적입니다. 크레딧은 만료되지 않지만, 무료 체험 크레딧은 7일 동안 유효합니다. SLA나 인증을 제공하지 않습니다. 이 모델은 미성년자가 포함된 성적인 콘텐츠를 차단하지만 그 외에는 무검열입니다. 이러한 제한을 고려하여 재시도 로직과 사용자 알림을 적절히 설계하세요.
cURL
curl https://api.glmapikey.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.glmapikey.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.glmapikey.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);스트리밍
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)기술 사양
크레딧을 구매하기 전에 확인할 수 있도록 API의 실제 한도와 기능을 한곳에 정리했습니다.
| 항목 | 내용 |
|---|---|
| 형식 | OpenAI 호환: 어떤 OpenAI SDK든 base URL과 키만 바꾸면 동작 |
| 인증 | Authorization: Bearer YOUR_KEY |
| 모델 ID | uncensored |
| 엔드포인트 | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.glmapikey.com/v1 |
| 파라미터 | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| 최대 출력 | 100,000 토큰 윈도우의 남은 만큼; max_tokens는 선택 사항(별도 상한 없음) |
| 함수 호출 | 지원 — tools, tool_choice; 응답에 tool_calls (스트리밍 포함), 결과는 role: tool로 전송 |
| 컨텍스트 창 | 100,000 토큰 (입력 + 출력) |
| 스트리밍 | 지원 — SSE, 마지막 청크에 토큰 사용량 포함 |
| JSON 모드 | response_format: {"type": "json_object"} |
| 요청 크기 | 최대 8 MB |
| 속도 제한 | 키당 분당 300회 |
| 동시 요청 | 키당 동시 8개 |
| 응답 헤더 | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 보너스 | $50 이상 +5%, $100 이상 +10% |
| 과금 | 선불 크레딧에서 실제 사용량만큼 차감, 오류·거부는 무료 |
| 무료 체험 | $0.50, 7일, 카드 불필요 · 체험 키: 동시 요청 2건, 분당 60건. 첫 충전 후 전체 한도(8건, 300건) 적용 |
| 유효기간 | 유료 크레딧은 만료되지 않으며 구독 없음 |
| 가격 | 입력 100만 토큰당 $0.25 · 출력 100만 토큰당 $1.00 |
| 충전 | USDT (TRC20) 또는 USDC (Base), $10~$500 사이 원하는 정수 금액 |
| 키 | 계정당 활성 키 1개, 새 키를 만들면 이전 키는 무효 |
| 로그인 | Google 또는 이메일과 비밀번호 |
| 콘텐츠 | 성인 콘텐츠 허용, 미성년자가 관련된 성적 콘텐츠는 거부 |
오류 코드
오류는 고정된 type을 가진 JSON으로 반환되며, 실패하거나 거부된 요청은 과금되지 않습니다.
| 코드 | 유형 | 의미 |
|---|---|---|
400 | bad_request | 잘못된 JSON, 빈 메시지, 잘못된 파라미터 또는 컨텍스트 초과 |
401 | missing_key · invalid_key · key_revoked | 키 없음·잘못됨·새 키로 교체됨 |
402 | no_credit | 잔액 없음 — 충전하면 즉시 재개 |
403 | content_blocked | 미성년자 관련 성적 콘텐츠 — 거부, 과금 없음 |
404 | not_found | 알 수 없는 엔드포인트 |
413 | request_too_large | 본문 8 MB 초과 |
429 | rate_limited · concurrency | 분당 300회 또는 동시 8개 초과 — 잠시 후 재시도 |
503 | upstream_busy | 모델 혼잡 — 몇 초 후 재시도 |
질문과 답변
공식 GLM API인가요?
아니요, 당사는 독립적인 서비스입니다. 오픈 웨이트 무검열 모델을 호스팅하고 OpenAI 호환 엔드포인트를 제공합니다. 원래 GLM 제작자나 기타 주요 AI 벤더와 제휴 관계가 없습니다.
기존 OpenAI 키를 사용할 수 있나요?
아니요, 당사 사이트에서 키를 발급받아야 합니다. 하지만 클라이언트 구성에서 베이스 URL과 키만 변경하면 OpenAI용 SDK 코드를 그대로 사용할 수 있습니다.
크레딧이 부족하면 어떻게 되나요?
요청 시 402 오류가 반환됩니다. 암호화폐(USDT 또는 USDC)로 언제든지 선불 크레딧을 충전할 수 있습니다. 크레딧은 만료되지 않으므로 필요할 때 자금을 추가할 수 있습니다.
키는 양식 하나만 작성하면 받을 수 있습니다
계정을 생성하고 키를 복사한 후 베이스 URL을 변경하세요. 설정은 이것뿐입니다.