인증 및 기본 URL
당사의 API는 기존 OpenAI 클라이언트에 대한 대체재로 설계되었습니다. 구성에서 변경해야 할 것은 두 가지뿐입니다. 기본 URL과 API 키입니다. 이 서비스의 기본 URL은 https://api.uncensoredgpt.top/v1입니다. 대시보드에서 Google 또는 이메일로 가입한 후 즉시 API 키를 생성할 수 있습니다. 전화번호는 필요하지 않으며, 키는 생성 시 한 번만 표시됩니다.
키를 안전하게 저장해야 합니다. 키를 분실하면 대시보드에서 새 키를 생성할 수 있으며, 이전 키는 무효화됩니다. 이 간단한 설정을 통해 표준 라이브러리를 사용하여 커스텀 어댑터 없이 무검열 ai api에 연결할 수 있습니다.
채팅 완료 엔드포인트
핵심 기능은 표준 POST /v1/chat/completions 엔드포인트를 통해 제공됩니다. 이 엔드포인트는 텍스트 입력을 받아 텍스트 출력을 반환하며, 동기식 및 비동기식 요청을 모두 지원합니다. 모델 라우팅이나 집계 걱정할 필요가 없습니다. 우리는 제한 없는 콘텐츠에 최적화된 단일 고성능 무검열 대형 언어 모델을 제공합니다.
요청을 할 때 모델 ID를 uncensored로 지정해야 합니다. 이 모델은 오픈 웨이트 모델이며 GPT, Claude 또는 기타 벤더 모델과 구별되는 자체 서버에서 호스팅됩니다. 합법적인 성인 사용에 대한 콘텐츠 거부 없이 답변하도록 설계되어 NSFW나 논쟁적인 주제에 이상적입니다.
시작하려면 간단한 cURL 명령어로 엔드포인트를 테스트할 수 있습니다. YOUR_API_KEY을 실제 키로 바꿉니다.
curl https://api.uncensoredgpt.top/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."}]
}'
스트리밍 응답 (SSE)
실시간 애플리케이션의 경우 API는 서버 전송 이벤트(SSE)를 지원합니다. 스트리밍을 사용하면 토큰이 생성되는 대로 받을 수 있어 채팅 인터페이스에 더 나은 사용자 경험을 제공합니다. 요청에 stream: true를 설정하면 API는 단일 전체 응답 대신 청크 스트림을 반환합니다.
각 청크에는 부분 텍스트가 포함되며, 마지막 청크에는 청구 목적의 토큰 사용 통계가 포함됩니다. 이 기능은 즉각적인 피드백이 필요한 애플리케이션에 특히 유용합니다. 선호하는 언어와 적절한 SDK를 사용하여 스트림을 처리할 수 있습니다.
cURL을 사용하여 스트리밍 요청을 시작하는 방법은 다음과 같습니다:
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는 함수 호출을 지원하여 애플리케이션이 외부 도구 및 서비스와 상호 작용할 수 있습니다. tools 매개변수에 함수 목록을 정의하면 모델이 적절한 경우 함수 호출로 응답합니다. 이는 특정 작업을 수행해야 하는 에이전트나 애플리케이션을 구축하는 데 유용합니다.
tool_choice를 사용하여 모델의 동작을 제어할 수 있으며, 이는 auto, none 또는 특정 함수 ID로 설정할 수 있습니다. 모델은 응답에서 함수 이름과 인수를 반환하며, 이를 애플리케이션에서 실행할 수 있습니다.
OpenAI 호환 SDK를 사용하여 함수 호출 기능을 사용하는 Python 예제는 다음과 같습니다:
from openai import OpenAI
client = OpenAI(base_url="https://api.uncensoredgpt.top/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)
JSON 모드 구성
구조화된 출력이 필요한 경우 response_format 매개변수를 {"type": "json_object"}로 설정하여 JSON 모드를 활성화할 수 있습니다. 이는 모델이 유효한 JSON 구문에 부합하는 출력을 생성하도록 지시합니다. 이는 응답을 프로그래밍 방식으로 구문 분석해야 하는 애플리케이션에 특히 유용합니다.
JSON 모드를 사용할 때 모델은 JSON 객체 주위에 마크다운 펜스나 추가 텍스트를 추가하지 않습니다. 이를 통해 파서가 추가 정리 단계 없이 응답을 직접 소비할 수 있습니다. 이는 LLM에서 구조화된 데이터를 얻는 신뢰할 수 있는 방법입니다.
JSON 모드에 대해 클라이언트를 구성하는 Node.js 예시는 다음과 같습니다:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.uncensoredgpt.top/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);
매개변수: 온도 및 Top P
temperature 및 top_p과 같은 매개변수를 사용하여 모델 응답의 무작위성과 창의성을 제어할 수 있습니다. temperature 매개변수는 샘플링 온도를 조정하며, 낮은 값은 출력을 더 결정론적으로, 높은 값은 더 창의적으로 만듭니다. top_p 매개변수는 뉴클리어스 샘플링을 제어하여 모델이 토큰의 상위 p 확률 질량만 고려하도록 제한합니다.
기타 지원되는 매개변수에는 stop 시퀀스, 재현성을 위한 seed 및 presence_penalty 및 frequency_penalty에 대한 페널티가 포함됩니다. 이러한 매개변수를 통해 특정 사용 사례에 맞게 모델의 동작을 미세 조정할 수 있습니다.
이러한 매개변수를 이해하는 것은 생성된 텍스트의 품질을 최적화하는 데 중요합니다. 애플리케이션에 적합한 균형을 찾기 위해 다양한 값으로 실험해 보세요.
API 사양
크레딧을 구매하기 전에 확인할 수 있도록 API의 실제 한도와 기능을 한곳에 정리했습니다.
| 항목 | 내용 |
|---|---|
| 형식 | OpenAI 호환: 어떤 OpenAI SDK든 base URL과 키만 바꾸면 동작 |
| 엔드포인트 | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.uncensoredgpt.top/v1 |
| 인증 | Authorization: Bearer YOUR_KEY |
| 모델 ID | uncensored |
| 스트리밍 | 지원 — SSE, 마지막 청크에 토큰 사용량 포함 |
| 파라미터 | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| 함수 호출 | 지원 — tools, tool_choice; 응답에 tool_calls (스트리밍 포함), 결과는 role: tool로 전송 |
| JSON 모드 | response_format: {"type": "json_object"} |
| 최대 출력 | 100,000 토큰 윈도우의 남은 만큼; max_tokens는 선택 사항(별도 상한 없음) |
| 컨텍스트 창 | 100,000 토큰 (입력 + 출력) |
| 요청 크기 | 최대 8 MB |
| 속도 제한 | 키당 분당 300회 |
| 동시 요청 | 키당 동시 8개 |
| 응답 헤더 | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 가격 | 입력 100만 토큰당 $0.25 · 출력 100만 토큰당 $1.00 |
| 무료 체험 | $0.50, 7일, 카드 불필요 · 체험 키: 동시 요청 2건, 분당 60건. 첫 충전 후 전체 한도(8건, 300건) 적용 |
| 과금 | 선불 크레딧에서 실제 사용량만큼 차감, 오류·거부는 무료 |
| 충전 | USDT (TRC20) 또는 USDC (Base), $10~$500 사이 원하는 정수 금액 |
| 보너스 | $50 이상 +5%, $100 이상 +10% |
| 유효기간 | 유료 크레딧은 만료되지 않으며 구독 없음 |
| 키 | 계정당 활성 키 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 | 모델 혼잡 — 몇 초 후 재시도 |
질문과 답변
속도 제한을 초과하면 어떻게 되나요?
분당 300개 요청 또는 8개 동시 요청 한도를 초과하면 429 Too Many Requests 오류가 발생합니다. API 키는 최대 8개의 동시 연결로 제한되므로, 이 한도에 도달하지 않도록 애플리케이션에서 동시 요청을 적절히 처리해야 합니다.
402 오류가 발생하는 이유는 무엇인가요?
402 오류는 선불 크레딧이 소진되었음을 나타냅니다. 선불 토큰 모델을 사용하므로 API 사용을 계속하려면 계정을 충전해야 합니다. 오류와 거부는 크레딧을 소모하지 않으므로 성공적인 토큰 사용에 대해서만 요금이 부과됩니다.
컨텍스트 창 한도는 어떻게 되나요?
이 모델은 프롬프트와 생성 텍스트를 모두 포함하는 100,000개의 토큰 컨텍스트 창을 지원합니다. 요청당 최대 출력은 32,000개 토큰이며, max_tokens 값을 지정하지 않을 경우 2,048개 토큰입니다. 이는 장문 콘텐츠 생성과 복잡한 추론 작업을 가능하게 합니다.
키는 양식 하나만 작성하면 받을 수 있습니다
계정을 생성하고 키를 복사한 후 기본 URL을 변경하세요. 이것이 전체 설정입니다.