QwenCloud 및 Qianwen AI 플랫폼
QwenCloud 및 Qianwen AI 플랫폼 (Qwen 모델)
알리바바는 중국 본토 외 지역의 DashScope, Bailian, Model Studio를 QwenCloud로, 중국 본토의 모델 플랫폼 브랜드를 Qianwen AI Platform으로 통합했어요. LiteLLM은 두 브랜드를 모두 기존 DashScope 구현을 통해 라우팅하며, 기존 dashscope/ 접두어는 별칭으로 계속 동작해요.
개요 (Overview)
| 속성 | 내용 |
|---|---|
| 설명 | OpenAI 호환 API로 제공되는 알리바바의 Qwen 모델 플랫폼 |
| LiteLLM 제공자 라우트 | qwencloud/ (국제), qwen_ai_platform/ (중국 본토), dashscope/ (레거시 별칭) |
| 제공자 문서 링크 | QwenCloud Documentation, Qianwen AI Platform Documentation |
| 지원 작업 | /chat/completions, /embeddings, /rerank, /images/generations |
이 라우트들은 종량제(pay-as-you-go) API 키를 지원해요. Token Plan 및 Coding Plan 엔드포인트는 아직 LiteLLM에 매핑되지 않았어요 (issue #36150에서 추적 중).
QwenCloud (국제)
중국 본토 외 지역에서는 qwencloud/ 접두어를 사용해요.
| 설정 | 값 |
|---|---|
| 접두어 | qwencloud/ |
| 기본 API base | https://dashscope-intl.aliyuncs.com/compatible-mode/v1 |
| Rerank 엔드포인트 | https://dashscope-intl.aliyuncs.com/compatible-api/v1/reranks |
| 이미지 생성 엔드포인트 | https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation |
| API 키 환경변수 | QWENCLOUD_API_KEY (fallback: DASHSCOPE_API_KEY) |
| Base URL 오버라이드 | QWENCLOUD_API_BASE, QWENCLOUD_API_BASE_RERANK, QWENCLOUD_API_BASE_IMAGE |
Qianwen AI 플랫폼 (중국 본토)
중국 본토에서는 qwen_ai_platform/ 접두어를 사용해요. 본토 호스트의 동일한 경로를 호출해요.
| 설정 | 값 |
|---|---|
| 접두어 | qwen_ai_platform/ |
| 기본 API base | https://dashscope.aliyuncs.com/compatible-mode/v1 |
| Rerank 엔드포인트 | https://dashscope.aliyuncs.com/compatible-api/v1/reranks |
| 이미지 생성 엔드포인트 | https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation |
| API 키 환경변수 | QWEN_AI_PLATFORM_API_KEY (fallback: DASHSCOPE_API_KEY) |
| Base URL 오버라이드 | QWEN_AI_PLATFORM_API_BASE, QWEN_AI_PLATFORM_API_BASE_RERANK, QWEN_AI_PLATFORM_API_BASE_IMAGE |
API 키 (API Key)
환경 변수
import os
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
중국 본토에서는 대신 QWEN_AI_PLATFORM_API_KEY를 설정하면 돼요. 두 접두어 모두 자체 키가 설정되지 않았을 때 DASHSCOPE_API_KEY도 읽으므로, 기존 DashScope 자격증명으로도 변경 없이 동작해요.
모델 (Models)
두 접두어 모두 DashScope 카탈로그의 모든 모델을 받아들여요. 예: qwencloud/qwen-max, qwencloud/qwen-flash, qwencloud/qwen-image-3.0, qwen_ai_platform/qwen-plus. 모델 목록은 DashScope 페이지를 참고해 주세요.
사용법 - LiteLLM Python SDK
Chat Completions
QwenCloud Chat Completion
import os
from litellm import completion
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
response = completion(
model="qwencloud/qwen-max",
messages=[{"role": "user", "content": "hello from litellm"}],
)
print(response.choices[0].message.content)
스트리밍 (Streaming)
QwenCloud 스트리밍 Chat Completion
import os
from litellm import completion
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
response = completion(
model="qwencloud/qwen-flash",
messages=[{"role": "user", "content": "hello from litellm"}],
stream=True,
)
for chunk in response:
print(chunk)
임베딩 (Embedding)
QwenCloud Embedding
import os
from litellm import embedding
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
response = embedding(
model="qwencloud/text-embedding-v4",
input=["hello from litellm"],
)
print(response.data[0]["embedding"][:5])
Rerank
QwenCloud Rerank
import os
from litellm import rerank
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
response = rerank(
model="qwencloud/gte-rerank-v2",
query="What is the capital of France?",
documents=["Paris is the capital of France", "Berlin is the capital of Germany"],
)
print(response.results)
이미지 생성 (Image Generation)
QwenCloud Image Generation
import os
from litellm import image_generation
os.environ["QWENCLOUD_API_KEY"] = "your-api-key"
response = image_generation(
model="qwencloud/qwen-image-3.0",
prompt="A cup of coffee on a wooden table",
)
print(response.data[0].url)
사용법 - LiteLLM Proxy
LiteLLM Proxy 설정에 모델을 추가해 주세요:
config.yaml
model_list:
- model_name: qwen-max
litellm_params:
model: qwencloud/qwen-max
api_key: os.environ/QWENCLOUD_API_KEY
- model_name: qwen-plus-cn
litellm_params:
model: qwen_ai_platform/qwen-plus
api_key: os.environ/QWEN_AI_PLATFORM_API_KEY
프록시를 시작해 주세요:
export QWENCLOUD_API_KEY="your-api-key"
litellm --config config.yaml --port 4000
- OpenAI SDK
- cURL
Proxy를 통한 QwenCloud - OpenAI SDK
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:4000",
api_key="your-litellm-key",
)
response = client.chat.completions.create(
model="qwen-max",
messages=[{"role": "user", "content": "hello from litellm"}],
)
print(response.choices[0].message.content)
Proxy를 통한 QwenCloud - cURL
curl http://localhost:4000/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ***" \
-d '{
"model": "qwen-max",
"messages": [{"role": "user", "content": "hello from litellm"}]
}'
DashScope와의 하위 호환성 (Backward Compatibility with DashScope)
dashscope/ 접두어, DASHSCOPE_API_KEY, DASHSCOPE_API_BASE, 그리고 기존의 모든 DashScope 설정은 변경 없이 그대로 동작해요. qwencloud/와 qwen_ai_platform/은 동일한 구현 위의 별칭이므로 마이그레이션은 필요 없어요. 원할 때 접두어를 바꿔 쓰거나 그대로 두면 돼요.
출처: 문서