SDK 설치
언어용 공식 라이브러리를 설치하세요. 당사는 대부분의 개발자가 사용하는 표준 OpenAI SDK 패키지를 지원합니다. 터미널을 통해 패키지를 설치하여 다음 단계에 대비하세요.
베이스 URL 및 키 구성
클라이언트를 저희 엔드포인트로 연결하고 자격 증명을 설정하세요. Use https://api.openrouterlimits.com/v1 베이스 URL로 사용합니다. YOUR_API_KEY Get API key 페이지에서 생성한 키를 사용하세요. base_url과 API 키를 변경하면 모든 OpenAI 호환 클라이언트에서 이 설정이 작동합니다.
첫 번째 완성 보내기
텍스트를 생성하기 위한 요청을 보내세요. 모델 ID uncensored 조정된 오픈 웨이트 모델에 접근하세요. 이 모델은 합법적인 성인 또는 논쟁적인 주제에 대해 거부하지 않습니다. POST 요청을 /v1/chat/completions 메시지를 사용합니다.
curl https://api.openrouterlimits.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Process 5000 records in under 2 seconds"}]
}'
스트리밍 응답 처리
스트리밍을 활성화하여 토큰을 실시간으로 수신하세요. 다음을 설정하세요 stream 수신하여 true 요청 본문에 포함됩니다. 부분 텍스트가 포함된 서버 전송 이벤트(SSE)를 받게 됩니다. 마지막 청크에는 청구를 위한 토큰 사용량이 포함됩니다.
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)
도구와 JSON 모드 사용
함수 호출 또는 엄격한 JSON 출력을 통합하세요. 다음을 사용하세요. tools 함수 호출을 위한 매개변수입니다. 설정 response_format 수신하여 {"type": "json_object"} JSON 모드를 위한 것입니다. 지원되는 매개변수에는 temperature, top_p, stop, seed, presence_penalty, 그리고 frequency_penalty.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouterlimits.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);
토큰 사용량 모니터링
사용량을 추적하고 오류를 우아하게 처리하세요. 키당 분당 300개 요청과 8개의 동시 요청이 제공됩니다. 컨텍스트 윈도우는 100,000개 토큰입니다. 401(잘못된 키), 402(크레딧 없음), 429(속도 제한)와 같은 오류를 처리하세요. 오류와 거절은 무료입니다. 크레딧은 만료되지 않습니다.
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterlimits.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)