개발자 빠른 시작: 무검열 API
표준 OpenAI 호환 엔드포인트를 사용하여 애플리케이션에 무검열 LLM을 통합하세요. 이 가이드는 호스팅 API의 인증, 요청 형식화, 스트리밍 및 도구 사용 방법을 다룹니다.
Base URL 및 인증
base_url을 https://api.abliteratedmodels.cc/v1로 설정하세요. Authorization 헤더에 API 키를 Bearer 토큰으로 포함하여 모든 요청을 인증하세요. Google 또는 이메일로 가입한 후 API 키 받기 페이지에서 즉시 키를 생성할 수 있습니다. 키는 한 번만 표시됩니다; 환경 변수에 안전하게 저장하세요.
- 헤더:
Authorization: Bearer YOUR_API_KEY - 인증에 추가 쿼리 매개변수가 필요하지 않습니다.
클라이언트 라이브러리가 사용자 정의 Base URL을 지원하는지 확인하세요. 이렇게 하면 코드 구조를 변경하지 않고 기본 OpenAI 엔드포인트를 바꿀 수 있습니다.
첫 번째 요청
모델 ID uncensored로 /v1/chat/completions로 POST 요청을 보내세요. API는 표준 채팅 완료 매개변수를 허용합니다. 텍스트가 들어가면 텍스트가 나옵니다. 임베딩이나 이미지 생성 엔드포인트는 없습니다.
- 모델:
uncensored - 엔드포인트:
POST /v1/chat/completions
연결을 확인하려면 다음 curl 명령을 사용하세요:
curl https://api.abliteratedmodels.cc/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."}]
}'
Python SDK 통합
공식 OpenAI Python SDK는 이 API와 직접 작동합니다. 올바른 Base URL과 키로 클라이언트를 초기화하세요. 이 방법은 temperature 및 top_p과 같은 매개변수에 대한 완전한 제어를 유지하면서 HTTP 세부 정보를 추상화합니다.
OpenAI(base_url=..., api_key=...)사용client.chat.completions.create()호출
코딩 LLM 작업을 위한 최소 예제입니다:
from openai import OpenAI
client = OpenAI(base_url="https://api.abliteratedmodels.cc/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 SDK 통합
Node.js 환경에서는 openai npm 패키지를 사용하세요. baseURL을 우리 서버를 가리도록 구성하세요. 이 방법은 프로그래밍 방식으로 무검열 모델에 접근해야 하는 백엔드 서비스 또는 서버리스 함수에 이상적입니다.
openai패키지 설치baseURL을https://api.abliteratedmodels.cc/v1로 설정
구현 예제:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.abliteratedmodels.cc/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);
스트리밍 응답(SSE)
요청에 stream: true을 설정하여 스트리밍을 활성화하세요. API는 서버 전송 이벤트(SSE)를 반환합니다. 토큰 사용 통계는 마지막 청크에 포함됩니다. 이는 콘텐츠 생성 중 최종 사용자의 지각된 지연 시간을 줄입니다.
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)
속도 제한 및 컨텍스트 창
각 API 키는 분당 300개의 요청과 8개의 동시 요청을 허용합니다. 요청 본문은 8 MB를 초과할 수 없습니다. 컨텍스트 창은 총 100,000 토큰입니다. 별도의 출력 제한이 없으며, max_tokens이 설정되지 않은 경우 응답은 창 끝까지 이어질 수 있습니다. 제한에 도달하면 요청이 대기열에 들어가거나 실패합니다. 8개의 동시 요청 임계값 내에서 유지하려면 동시성을 관리하세요. 크레딧 세부 정보는 가격 페이지를 확인하세요.
질문과 답변
무검열 모델은 콘텐츠 거부를 어떻게 처리합니까?
이 모델은 논리적 성인 사용, 논란의 여지가 있거나 허구적인 주제까지 포함하여 거부 없이 답변하도록 조정되었습니다. 다른 벤더가 적용하는 기업용 필터를 적용하지 않습니다. 하지만 미성년자가 포함된 성적인 콘텐츠는 프롬프트와 관계없이 항상 거부되는 하드 제한이 있습니다.
선불 크레딧을 초과하면 어떻게 됩니까?
선불 크레딧이 소진되면 이후 요청이 실패합니다. USDT(TRC20), USDC(Base)를 사용하여 $20에서 $500 사이 금액으로 충전할 수 있습니다. 크레딧은 만료되지 않으므로 구독료 없이 언제든지 자금을 추가할 수 있습니다.
이 API는 함수 호출을 지원합니까?
네, 함수 호출을 위해 tools 및 tool_choice 매개변수를 사용할 수 있습니다. response_format: {"type": "json_object"}를 사용하여 JSON 출력을 강제할 수도 있습니다. 이는 구조화된 데이터 생성 또는 다른 시스템 통합에 유용합니다.
키는 양식 하나만 작성하면 받을 수 있습니다
계정을 생성하고 키를 복사한 후 Base URL을 변경하세요. 설정은 이것뿐입니다.
기술 사양
크레딧을 구매하기 전에 확인할 수 있도록 API의 실제 한도와 기능을 한곳에 정리했습니다.
| 항목 | 내용 |
|---|---|
| 형식 | OpenAI 호환: 어떤 OpenAI SDK든 base URL과 키만 바꾸면 동작 |
| Base URL | https://api.abliteratedmodels.cc/v1 |
| 엔드포인트 | POST /v1/chat/completions · GET /v1/models |
| 인증 | Authorization: Bearer YOUR_KEY |
| 모델 ID | uncensored |
| JSON 모드 | response_format: {"type": "json_object"} |
| 최대 출력 | 100,000 토큰 윈도우의 남은 만큼; max_tokens는 선택 사항(별도 상한 없음) |
| 컨텍스트 창 | 100,000 토큰 (입력 + 출력) |
| 파라미터 | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| 함수 호출 | 지원 — tools, tool_choice; 응답에 tool_calls (스트리밍 포함), 결과는 role: tool로 전송 |
| 스트리밍 | 지원 — SSE, 마지막 청크에 토큰 사용량 포함 |
| 요청 크기 | 최대 8 MB |
| 속도 제한 | 키당 분당 300회 |
| 동시 요청 | 키당 동시 8개 |
| 응답 헤더 | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 무료 체험 | $0.50, 7일, 카드 불필요 · 체험 키: 동시 요청 2건, 분당 60건. 첫 충전 후 전체 한도(8건, 300건) 적용 |
| 충전 | 암호화폐: USDT (TRC20) 또는 USDC (Base), $20~$500 사이 원하는 정수 금액 |
| 가격 | 입력 100만 토큰당 $0.15 · 출력 100만 토큰당 $0.50 |
| 유효기간 | 유료 크레딧은 만료되지 않으며 구독 없음 |
| 보너스 | $50 이상 +5%, $100 이상 +10%, $200 이상 +15% |
| 과금 | 선불 크레딧에서 실제 사용량만큼 차감, 오류·거부는 무료 |
| 키 | 계정당 활성 키 1개, 새 키를 만들면 이전 키는 무효 |
| 로그인 | Google 또는 이메일과 비밀번호 |
| 콘텐츠 | 성인 콘텐츠 허용, 미성년자가 관련된 성적 콘텐츠는 거부 |
오류 코드
오류는 고정된 type을 가진 JSON으로 반환되며, 실패하거나 거부된 요청은 과금되지 않습니다.
| HTTP | 유형 | 의미 |
|---|---|---|
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 | 모델 혼잡 — 몇 초 후 재시도 |