API 문서 & 시작하기
기존 코드베이스에 이 대체품을 삽입하고 콘텐츠 필터 없이 텍스트 생성을 시작하여 몇 분 안에 제한 없는 LLM API로 시작하세요.
Base URL 및 인증
기본 URL과 단일 API 키를 사용하여 연결하세요. 엔드포인트는 표준 헤더를 허용합니다. 대체 YOUR_API_KEY 대시보드의 문자열을 사용하세요.
- Base URL:
https://api.ollamaopenaicompatibleapi.com/v1 - 모델 ID:
uncensored
인증은 Bearer 토큰에 기반합니다. 다음에 전달하세요. Authorization 이렇게 하면 모든 OpenAI SDK 호환 클라이언트와의 호환성이 보장됩니다. Google 또는 이메일을 통해 새 키를 즉시 생성할 수 있습니다. 전화번호가 필요하지 않습니다.
채팅 완료 엔드포인트
POSTリクエストを送信 /v1/chat/completionsmessages 배열과 모델 이름을 포함하세요. API는 프롬프트를 기반으로 텍스트 출력을 반환합니다. 이는 표준 매개변수를 사용하는 모든 제공업체와 호환됩니다.
창의성을 위해 temperature를 설정하거나 정밀도를 위해 낮은 값을 유지하세요. stop 시퀀스를 정의할 수도 있습니다. 서버가 요청을 처리하고 완료를 반환합니다. 이는 대부분의 통합에서 핵심 상호작용입니다.
오류는 선불 크레딧을 소비하지 않습니다. 성공적인 완료만 청구됩니다. 이는 디버깅 단계 동안 예산을 보호합니다.
curl https://api.ollamaopenaicompatibleapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 10 Linux kernel security patches from 2023"}]
}'
SSE를 통한 스트리밍 응답
stream을 true로 설정하여 스트리밍 활성화 stream: true. 서버는 생성된 대로 청크를 보냅니다. 이는 지각된 지연 시간을 크게 줄입니다. 실시간으로 부분 응답을 받습니다.
Server-Sent Events 스트림을 파싱하세요. 마지막 청크에는 사용량 통계가 포함됩니다. 여기에는 입력 및 출력의 토큰 수가 모두 포함됩니다. 생성 중 동적으로 비용을 추적할 수 있습니다.
이 방식은 채팅 인터페이스에 잘 작동합니다. 사용자는 텍스트가 단어 단위로 표시되는 것을 봅니다. 전체 응답을 기다리는 것보다 더 반응성이 좋습니다. API는 연결 안정성을 자동으로 처리합니다.
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 모드
요청 본문에 도구를 정의하세요. 모델은 구조화된 데이터를 출력할 수 있습니다. 다음을 사용하세요. response_format with {"type": "json_object"} 엄격한 JSON 형식을 위해. 이는 매번 파싱 가능한 출력을 보장합니다.
툴 정의에는 이름, 설명, 매개변수가 포함됩니다. 모델은 어떤 툴을 호출할지 결정합니다. 함수를 실행하고 결과를 다시 피드백합니다. 이는 복잡한 에이전트 워크플로우를 가능하게 합니다.
JSON 모드는 자유 텍스트 생성을 비활성화합니다. 모델이 스키마를 따르도록 강제합니다. 데이터베이스 또는 API와 통합할 때 사용하세요. 구조화된 필드의 환각을 줄여줍니다.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaopenaicompatibleapi.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)
속도 제한 및 요청 본문
키당 분당 300회 요청. 동시 요청은 최대 8개로 제한됩니다. 최대 요청 본문 크기는 8 MB입니다. 이는 텍스트 중심 애플리케이션에 적합합니다.
컨텍스트 창은 총 100,000 토큰을 허용합니다. 여기에는 프롬프트와 완성문이 모두 포함됩니다. 요청당 최대 출력은 16,000 토큰입니다. 생략하면 max_tokens, 기본값은 2,048입니다.
HTTP 429 오류를 적절히 처리하세요. 이는 속도 제한에 도달했음을 나타냅니다. 클라이언트 코드에 지수 백오프를 구현하세요. 이는 급증 시 서버에 과부하가 걸리는 것을 방지합니다.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaopenaicompatibleapi.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);
인증 오류 및 제한
401 상태는 API 키가 유효하지 않음을 의미합니다. 오타나 만료된 세션 여부를 확인하세요. 402 상태는 잔액 부족을 나타냅니다. 크립토로 충전하여 서비스를 계속 이용하세요.
429 상태는 속도 제한을 나타냅니다. 분당 300회 요청을 초과했습니다. 처리량을 줄이거나 키를 업그레이드하세요. API는 명확한 오류 메시지를 반환합니다.
크레딧은 만료되지 않습니다. 언제든지 충전할 수 있습니다. 최소 충전 금액은 $20입니다. 큰 금액에 대해 보너스 크레딧이 적용됩니다. 이는 프로젝트가 원활하게 유지되도록 합니다.
자주 묻는 질문
uncensored LLM API의 기본 URL은 무엇입니까?
기본 URL은 HTTPS://api.ollamaopenaicompatibleapi.com/v1입니다. 모든 채팅 완료 요청에 이 엔드포인트를 사용하십시오. 표준 OpenAI SDK와 호환됩니다.
모델이 지원하는 컨텍스트 윈도우는 얼마나 되나요?
이 모델은 100,000개의 토큰 컨텍스트 윈도우를 지원합니다. 이는 프롬프트 및 완성 토큰을 모두 포함합니다. 요청당 최대 출력은 16,000개의 토큰입니다.
요율 제한에 도달하면 어떻게 되나요?
429 HTTP 상태 코드가 반환됩니다. 이는 분당 300회 요청 제한을 초과했음을 의미합니다. 잠시 후 백오프(backoff) 전략으로 재시도하세요.