API 문서 및 엔드포인트
이 가이드는 클라이언트를 무검열 텍스트 생성용 OpenAI 호환 API에 연결하는 방법을 보여줍니다. 기본 URL, 인증 단계 및 선호하는 언어별 코드 예제를 확인할 수 있습니다.
인증 및 Base URL
API는 모든 요청에 유효한 키가 필요합니다. Google 또는 이메일 주소로 가입하면 이 키를 즉시 생성할 수 있습니다. 다음에 키를 전달하세요 Authorization 헤더 사용 Bearer 스키마입니다. 모든 요청의 베이스 URL은 HTTPS://api.qwenaipricing.com/v1이 URL은 기본 구성을 업데이트하는 것만으로 공식 OpenAI SDK 및 모든 호환 클라이언트와 함께 작동합니다.
채팅 완료 엔드포인트
주요 엔드포인트는 POST /v1/chat/completionsJSON 본문과 함께 messages 배열 및 a model 필드입니다. 모델 ID를 "uncensored"로 설정하여 제한 없는 출력에 맞게 조정된 대규모 언어 모델에 액세스하십시오. 대화 컨텍스트를 구조화하기 위해 system, user, assistant 역할을 정의할 수 있습니다.
curl https://api.qwenaipricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the monthly cost for the 72B model?"}]
}'
응답에는 생성된 콘텐츠, 사용 통계 및 종료 이유가 포함됩니다. 오류는 유효하지 않은 키의 경우 401, 선불 크레딧이 고갈된 경우 402와 같은 표준 HTTP 코드를 반환합니다. 이 API는 임베딩, 이미지 생성 또는 파인튜닝 엔드포인트를 지원하지 않습니다.
Python SDK 통합
공식 openai API와 상호 작용하기 위한 Python 패키지. API 키를 제공하고 베이스 URL을 엔드포인트로 설정하여 클라이언트를 초기화하세요. 이렇게 하면 익숙한 메서드를 사용할 수 있습니다. chat.completions.create() 클라이언트 로직을 다시 작성하지 않아도 됩니다. 라이브러리가 JSON 직렬화 및 응답 파싱을 자동으로 처리합니다.
from openai import OpenAI
client = OpenAI(base_url="https://api.qwenaipricing.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)
메시지를 사전의 목록으로 전달하세요. SDK는 temperature 및 top_p와 같은 모든 표준 매개변수를 지원합니다. 이 방식은 OpenAI 호환 인터페이스를 기대하는 기존 코드베이스와의 호환성을 보장합니다.
Node.js SDK 통합
Node.js SDK는 Python 버전과 유사하게 작동합니다. openai package and configure the base URL and API key. You can then call the chat completions endpoint with your desired parameters. This method is ideal for server-side applications or backend services that need to generate text asynchronously.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.qwenaipricing.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);
생성된 토큰을 처리하기 위해 응답 스트림 또는 프라미스를 처리하세요. SDK가 HTTP 연결 및 오류 처리를 대신 관리합니다. 또한 GET /v1/models 사용 가능한 모델 ID를 확인하기 위한 엔드포인트입니다.
스트리밍 및 사용량
stream을 true로 설정하여 스트리밍 활성화 stream: true 요청에 포함됩니다. API는 부분 응답의 서버 전송 이벤트(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)
스트림의 마지막 청크에는 요청에 대한 총 토큰 사용량이 포함되어 있습니다. 이러한 사용량 통계를 모니터링하여 선불 크레딧 소모량을 추적할 수 있습니다. 스트리밍 중 오류가 발생하면 연결이 조기에 종료될 수 있습니다.
제한 사항, 오류 및 컨텍스트 윈도우
이 모델은 프롬프트와 completion을 합쳐 100,000개의 토큰을 처리할 수 있는 컨텍스트 윈도우를 지원합니다. 요청당 최대 출력은 16,000개의 토큰입니다. 제한값을 설정하지 않으면 max_tokens, 제한은 2,048 토큰입니다. 키당 분당 요청 수는 300회, 동시 요청 수는 8회로 제한됩니다. 429 오류는 이러한 한도를 초과했음을 나타냅니다. 오류 또는 거절이 발생한 요청은 크레딧을 소모하지 않습니다. API는 SLA 보장이나 인증을 제공하지 않습니다.
자주 묻는 질문
uncensored 모델의 context window 제한은 어떻게 되나요?
이 모델은 프롬프트와 completion을 합쳐 100,000개의 토큰을 처리할 수 있는 컨텍스트 윈도우를 지원합니다. 단일 요청당 최대 16,000개의 토큰을 생성할 수 있습니다.
인증 오류를 어떻게 처리하나요?
401 오류는 API 키가 유효하지 않거나 누락되었음을 나타냅니다. 키가 Authorization 헤더에 Bearer 토큰으로 전달되는지 확인하십시오. 현재 키가 무효화된 경우 계정 대시보드에서 새 키를 생성하십시오.
API는 Qwen Image와 같은 이미지 생성을 지원하나요?
아니요, 이 API는 채팅-완성 엔드포인트를 통해 텍스트 생성만 제공합니다. 임베딩, 오디오, 비디오, 이미지 생성을 지원하지 않습니다. 이러한 모달리티가 필요하면 다른 엔드포인트나 서비스를 사용해야 합니다.