Lurus API는 OpenAI API 형식과 완전히 호환되므로, OpenAI를 지원하는 모든 SDK나 도구로 직접 호출할 수 있습니다.
왜 Lurus API인가
OpenAI 호환
모든 엔드포인트 경로와 의미가 OpenAI와 일치하며, SDK는 base_url만 교체하면 변경 없이 그대로 사용 가능
완전한 오류 코드
모든 오류에 code + message + 권장 조치가 포함되어 자동화 처리에 용이
다양한 인증
Bearer Token / PAT / JWT, 스크립트부터 기업 SSO까지 전부 지원
모델 라우팅과 재시도
모델명에 따라 업스트림 채널로 자동 라우팅하고, 실패 시 백업으로 자동 전환
3단계 연동
base URL을
https://hub.lurus.cn/v1로 지정합니다.요청 헤더에
Authorization: Bearer sk-your-api-key를 담습니다(API Key 발급).원하는 OpenAI SDK로 요청을 보내면 되며, 비즈니스 코드는 변경할 필요가 없습니다. 아래 SDK 지원을 참고하세요.
Base URL
https://hub.lurus.cn/v1인증 방식
모든 API 요청은 Header에 API Key를 담아야 합니다:
Authorization: Bearer sk-your-api-key인증은 API Key뿐만이 아닙니다
사용 가능한 엔드포인트
모델 목록 조회
/v1/models모델 목록 조회/v1beta/modelsGemini 형식 조회OpenAI 형식 (Chat)
/v1/chat/completions채팅 대화 생성OpenAI 형식 (Responses)
/v1/responses응답 생성 (OpenAI Responses API)/v1/responses/compact대화 압축 (OpenAI Responses API)이미지 생성
/v1/images/generations이미지 생성 (qwen-image)/v1/images/edits이미지 편집 (qwen-image-edit)비디오 생성
/v1/videos비디오 생성 /v1/videos/{task_id}비디오 작업 상태 조회 /v1/videos/{task_id}/content비디오 콘텐츠 조회/kling/v1/videos/text2videoKling 텍스트-비디오/kling/v1/videos/text2video/{task_id}Kling 텍스트-비디오 작업 상태 조회/kling/v1/videos/image2videoKling 이미지-비디오/kling/v1/videos/image2video/{task_id}Kling 이미지-비디오 작업 상태 조회/jimeng/Jimeng 비디오 생성/v1/video/generations비디오 생성 작업 생성/v1/video/generations/{task_id}비디오 생성 작업 상태 조회Claude 형식 (Messages)
/v1/messagesClaude 채팅Gemini 형식
/v1beta/models/{model}:generateContentGemini 이미지 (Nano Banana)/v1/engines/{model}/embeddingsGemini 임베딩 (Embeddings)OpenAI 형식 (Embeddings)
/v1/embeddings텍스트 임베딩 생성텍스트 보완 (Completions)
/v1/completions텍스트 보완 생성OpenAI 오디오 (Audio)
/v1/audio/transcriptions오디오 전사/v1/audio/translations오디오 번역/v1/audio/speech텍스트 음성 변환재정렬 (Rerank)
/v1/rerank문서 재정렬Moderations
/v1/moderations콘텐츠 검수Realtime
/v1/realtime실시간 WebSocket 연결요청 형식
모든 요청은 JSON 형식을 사용합니다:
POST /v1/chat/completions HTTP/1.1
Host: hub.lurus.cn
Content-Type: application/json
Authorization: Bearer sk-your-api-key
{
"model": "deepseek-chat",
"messages": [
{"role": "user", "content": "Hello!"}
]
}응답 형식
각 필드의 타입과 필수 여부는 데이터 구조 참조 / Schema를 참고하세요(OpenAPI 사양에서 자동 동기화되며, 게이트웨이 구현과 일치합니다).
성공 응답
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677858242,
"model": "deepseek-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 12,
"total_tokens": 22
}
}오류 응답
{
"error": {
"code": "invalid_api_key",
"message": "Invalid API key provided",
"type": "authentication_error"
}
}속도 제한
| 제한 유형 | 기본값 | 설명 |
|---|---|---|
| RPM (요청/분) | 60 | 분당 최대 요청 수 |
| TPM (Token/분) | 100,000 | 분당 최대 Token 수 |
| 동시 요청 | 10 | 최대 동시 진행 요청 수 |
제한을 초과하면 429 Too Many Requests 오류가 반환됩니다. 처리 방법은 오류 처리를 참고하세요.
SDK 지원
Python (공식 OpenAI SDK)
pip install openaifrom openai import OpenAI
client = OpenAI(
base_url="https://hub.lurus.cn/v1",
api_key="sk-your-api-key"
)Node.js
npm install openaiimport OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://hub.lurus.cn/v1',
apiKey: 'sk-your-api-key'
});Go
import "github.com/sashabaranov/go-openai"
config := openai.DefaultConfig("sk-your-api-key")
config.BaseURL = "https://hub.lurus.cn/v1"
client := openai.NewClientWithConfig(config)cURL
curl https://hub.lurus.cn/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-api-key" \
-d '{"model": "deepseek-chat", "messages": [{"role": "user", "content": "Hi"}]}'특수 기능
게이트웨이 강화 기능
스트리밍 응답
stream: true 설정으로 Server-Sent Events 활성화, Token 단위로 반환
모델 라우팅
모델명으로 해당 업스트림 채널에 자동 라우팅, 하위 구성을 신경 쓸 필요 없음
자동 재시도
요청 실패 시 백업 채널로 자동 전환(여러 개를 구성한 경우)
스트리밍 응답
stream: true를 설정하여 Server-Sent Events 스트리밍 응답을 활성화합니다:
{
"model": "deepseek-chat",
"messages": [...],
"stream": true
}완전한 스트리밍 데이터 형식과 Token 단위 처리는 Chat Completions — 스트리밍 응답을 참고하세요.
모델 라우팅
모델명으로 해당 업스트림 채널에 자동 라우팅하므로, 하위 구성을 신경 쓸 필요가 없습니다.
자동 재시도
요청 실패 시 백업 채널로 자동 전환합니다(여러 개를 구성한 경우).