APIMaster.ai

GLM API 가이드: GLM-5.2, GLM-5.3 및 GLM-5.3-Flash

APIMaster에서 Python 또는 curl로 GLM-5.2, GLM-5.3 및 GLM-5.3-Flash를 호출합니다. Chat, Responses, Messages, 스트리밍, JSON 및 도구 호출을 테스트했습니다.

APIMaster API 키와 베이스 URL https://apimaster.ai/v1을 사용하여 glm-5.2, glm-5.3 또는 glm-5.3-flash를 사용하세요. OpenAI 호환 애플리케이션은 Chat Completions로 시작하는 것이 좋습니다. Codex는 Responses를 사용하고, Claude Code는 Messages 인터페이스를 사용합니다.

이 내용은 APIMaster 게이트웨이 통합 결과이며, 모든 GLM 업스트림이 모든 프로토콜을 기본적으로 구현한다는 주장이 아닙니다. GLM은 모델 계열이며, OpenAI 및 Anthropic SDK가 클라이언트 인터페이스를 제공합니다.

테스트된 호환성

검증은 2026-09-15 UTC에 공개 APIMaster 엔드포인트와 일반 라우팅을 사용하여 시작되었습니다. 각 모델은 다음 확인 항목을 통과했습니다:

확인 항목 glm-5.2 glm-5.3 glm-5.3-flash
Chat Completions: 일반 및 스트리밍 통과 통과 통과
Responses: 일반 및 스트리밍 통과 통과 통과
Messages: 일반 및 스트리밍 통과 통과 통과
함수/도구 호출 및 도구 결과 왕복, 세 가지 프로토콜 모두 통과 통과 통과
Chat JSON 객체 출력 통과 통과 통과

텍스트 테스트는 HTTP 200 여부만이 아니라 실제 답변과 스트림 종료 이벤트를 확인했습니다. 도구 테스트는 날씨 함수를 요청한 후 도구 결과에만 제공된 확인 코드를 반환하도록 했습니다. 이는 처리량 벤치마크나 가용성 SLA가 아닌 기능적 통합 확인입니다. 긴 세션, 최대 컨텍스트, 비디오 및 모든 고급 매개변수는 이 테스트 매트릭스에 포함되지 않습니다.

1. API 키 발급

APIMaster API 키를 생성하고, 원하는 모델을 활성화하고, 계정에 충전하세요. 위의 정확한 모델 ID를 사용하세요. BigModel, OpenAI 또는 Anthropic의 키로는 APIMaster에 인증할 수 없습니다.

macOS / Linux:

export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'

Windows PowerShell:

$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'

2. curl로 Chat Completions 호출

curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/chat/completions' \
  -H "Authorization: Bearer $APIMASTER_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"model":"glm-5.3-flash","messages":[{"role":"user","content":"Reply with exactly GLM_API_OK."}],"max_tokens":2048}'

choices[0].message.content를 읽으세요. modelglm-5.2 또는 glm-5.3으로 변경하여 모델을 전환할 수 있습니다. 추론 모델은 최종 답변을 출력하기 전에 출력 예산의 일부를 소비할 수 있습니다.

3. Python OpenAI SDK 사용

python -m pip install -U openai
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["APIMASTER_API_KEY"],
    base_url="https://apimaster.ai/v1",
    timeout=120.0,
)

response = client.chat.completions.create(
    model="glm-5.3-flash",
    messages=[{"role": "user", "content": "Reply with exactly GLM_API_OK."}],
    max_tokens=2048,
)
print(response.choices[0].message.content)

스트리밍의 경우 stream=True로 설정하세요. 빈 choices를 확인하세요. 마지막 usage 청크는 텍스트 델타 없이 사용량 정보만 포함할 수 있습니다.

stream = client.chat.completions.create(
    model="glm-5.3-flash",
    messages=[{"role": "user", "content": "Explain binary search briefly."}],
    max_tokens=4096,
    stream=True,
    stream_options={"include_usage": True},
)
for chunk in stream:
    if chunk.choices:
        text = chunk.choices[0].delta.content
        if text:
            print(text, end="", flush=True)
    if chunk.usage:
        print("\nUsage:", chunk.usage)

첫 번째 이벤트에는 보이는 답변 텍스트 대신 추론 내용이 포함될 수 있습니다. 이를 반환하는 라우트에서 어시스턴트 메시지를 도구 대화로 전달할 때는 reasoning_content를 보존하고, 최종 텍스트만으로 어시스턴트 메시지를 재구성하지 마세요.

4. 올바른 엔드포인트 선택

애플리케이션 베이스 URL 요청 엔드포인트
Python OpenAI SDK / Chat https://apimaster.ai/v1 /v1/chat/completions
Responses API / Codex https://apimaster.ai/v1 /v1/responses
Claude Code https://apimaster.ai /v1/messages

최소 Responses 요청:

curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/responses' \
  -H "Authorization: Bearer $APIMASTER_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"model":"glm-5.3","input":"Reply with exactly GLM_API_OK.","max_output_tokens":2048}'

콘텐츠 유형이 output_text인 메시지 항목에서 텍스트를 읽고, 추론 항목은 별도로 유지하세요. 스트리밍의 경우 stream: true를 사용하고 response.completed 또는 오류 이벤트를 확인하세요.

매개변수 및 문제 해결

상황 권장 조치
401 APIMaster 키와 해당 키를 발급한 계정을 확인하세요.
404 클라이언트가 기대하는 베이스 URL을 사용하세요. /v1을 중복해서 넣지 마세요.
빈 답변 또는 출력 한도 finish reason과 추론 사용량을 확인하고, 출력 예산을 늘리세요.
JSON 출력 Chat response_format: {"type":"json_object"}가 기본 JSON 테스트를 통과했습니다. 애플리케이션에서 반환된 JSON을 검증하세요.
reasoning.summary 거부 지원 여부는 선택한 업스트림에 따라 다릅니다. 기본 구성에서는 생략하세요. 게이트웨이 테스트 성공은 BigModel의 기본 지원을 보장하지 않습니다.
thinking.type: disabled 거부 공식 GLM-5.3-Flash 모델 가이드는 enabled만 허용합니다. thinking 비활성화를 요구하지 마세요.
429 / 5xx / 스트림 중단 요청 ID, 모델, UTC 시간 및 오류를 기록하세요. 안전한 경우 범위가 제한된 재시도를 사용하되, 이미 실행된 도구를 무작정 반복하지 마세요.

자주 묻는 질문

GLM-5.3-Flash는 APIMaster에서 무료인가요?

Flash라는 단어는 모델 이름의 일부일 뿐, 무료 사용을 약속하는 것이 아닙니다. 현재 라우트 가격은 모델 마켓플레이스에서, 실제 청구 금액은 지갑에서 확인하세요.

높은 캐시 적중률이 모든 요청에 적용되나요?

아니요. 캐시 재사용은 입력 접두사 일치와 업스트림에 따라 달라집니다. 반환된 사용량 정보와 사용량 로그를 확인하세요. 이전 워크로드의 캐시 적중률이 새 애플리케이션에 대한 보장은 아닙니다.

이것이 OpenAI 또는 Anthropic과의 완전한 호환성을 증명하나요?

이는 테스트된 텍스트, 스트리밍, JSON 및 도구 워크플로를 확인한 것입니다. 제공자별 필드, 저장된 Responses 상태, 내장 웹 검색 및 멀티미디어는 별도의 검증이 필요합니다.

관련 가이드 및 참고 자료