SDK 호환성 및 기본 URL 설정
기존 클라이언트 코드를 전용 엔드포인트로 가리켜 연결하세요. 이 openai compatible API 코드 변경 없이 표준 헤더 및 SDK 구성을 지원합니다. 대시보드에서 API 키를 제공하고 베이스 URL만 업데이트하면 됩니다.
https://api.openrouterratelimits.com/v1 모든 요청의 단일 진입점입니다. 인증은 대부분의 현대 LLM 라이브러리에서 사용되는 표준 Bearer 토큰 방식을 사용합니다. 키를 Authorization 신원 확인을 위한 헤더입니다. 이 설정은 OpenAI 스타일 인터페이스를 기대하는 모든 클라이언트와 호환되므로, 벤더 락인에 지친 팀의 마이그레이션을 즉시 가능하게 합니다.
- Base URL:
https://api.openrouterratelimits.com/v1 - Auth Header:
Authorization: Bearer YOUR_API_KEY - 모델 ID:
uncensored
SSE를 통한 스트리밍 응답
stream을 true로 설정하여 스트리밍 활성화 stream: true 요청 페이로드에 포함됩니다. API는 실시간 토큰 전달을 위해 서버 전송 이벤트(SSE)를 반환합니다. 각 청크에는 생성된 텍스트가 포함되며, 마지막 청크에는 사용량 통계가 포함됩니다. 이 접근 방식은 긴 컨텍스트 창에서도 UI가 반응성을 유지하도록 합니다.
스트리밍은 지연 시간이 중요한 채팅 인터페이스나 역할극 시나리오에 이상적입니다. 텍스트를 렌더링하기 위해 전체 완료를 기다릴 필요가 없습니다. 마지막 청크에는 정확한 과금을 위한 토큰 사용량이 항상 포함됩니다. 스트리밍 중 오류가 발생해도 즉시 처리할 수 있는 적절한 HTTP 상태 코드를 반환합니다.
함수 호출 및 JSON 모드
신뢰할 수 있는 데이터 추출 또는 도구 통합을 위해 구조화된 출력을 사용하세요. 활성화 response_format with {"type": "json_object"} JSON 준수를 강제합니다. 이 모드는 추가 정리 로직 없이 복잡한 중첩 구조를 파싱하는 데 필수적입니다. 함수 호출은 동적 에이전트 워크플로우를 위해 표준 텍스트 생성과 함께 작동합니다.
요청에 도구를 정의하세요. tools 배열 및 지정 tool_choice 엄격한 시행을 위해. 모델은 표준 OpenAI 형식으로 함수 호출을 반환합니다. 이 기능은 단일 턴 내에서 단일 및 다중 도구 호출을 모두 지원합니다. 외부 API나 데이터베이스와 신뢰할 수 있게 상호작용하는 에이전트 구축에 사용하세요.
토큰 및 매개변수 관리
temperature 및 top_p와 같은 표준 매개변수를 사용하여 생성 동작을 제어하세요. temperature, top_p, 그리고 stop. 컨텍스트 윈도우는 프롬프트 및 완성을 합쳐 최대 100,000 토큰을 지원합니다. 이를 통해 단일 요청에서 광범위한 역사적 컨텍스트나 대규모 문서 처리가 가능합니다.
設定 max_tokens 출력 길이를 제한하며, 생략된 경우 기본값은 2,048입니다. 모델은 presence_penalty 및 frequency_penalty 스타일 제어용. 토큰 사용량은 실제 입력 및 출력 기준에 따라 청구됩니다. 오류 발생 시 토큰이 소모되지 않아 실패한 요청에 대해 공정한 과금이 가능합니다.
키별 rate limits 이해하기
각 API 키는 분당 300회 요청을 지원하며 동시 요청 한도는 8개입니다. 이 한도는 키별로 적용되므로, 여러 키를 생성하면 처리량이 선형적으로 확장됩니다. 최대 요청 본문 크기는 8MB로, 대부분의 사용 사례에서 컨텍스트 윈도우 내에 맞습니다.
Rate limits는 슬라이딩 윈도우를 기반으로 지속적으로 초기화됩니다. 제한을 초과하면 API가 429 오류를 반환합니다. 우선 액세스를 유지하려면 선불 크레딧을 업그레이드하세요. 공유 티어와 달리 전용 서버는 이웃의 간섭을 받지 않습니다. 일관된 성능을 위해 사용량 대시보드를 모니터링하여 이러한 범위 내에 머무르세요.
일반적인 오류 문제 해결
HTTP 상태 코드 및 응답 본문을 확인하여 오류를 처리하세요. 401 오류는 유효하지 않거나 누락된 API 키를 나타냅니다. 인증에 실패한 경우 대시보드에서 키를 다시 생성하세요. 402 오류는 사전 지불 크레딧이 고갈되었음을 의미하며, 크립토를 통해 충전하여 서비스를 계속 이용하세요.
429 오류는 속도 제한을 초과했음을 나타냅니다. 요청 빈도를 줄이거나 여러 키에 작업을 분산하세요. API는 이러한 오류에 토큰을 청구하지 않으므로 재시도로 인해 크레딧이 손실되지 않습니다. 견고성을 위해 클라이언트 라이브러리가 지수 백오프로 재시도를 처리하는지 확인하세요.
cURL
curl https://api.openrouterratelimits.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Process one million logs"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterratelimits.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.openrouterratelimits.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)