snow · 2026.4.24 13:21 · 조회 2
MiniMax API 연동 가이드
기본 설정
MiniMax API는 OpenAI 호환 인터페이스를 제공하므로, 기존 OpenAI SDK를 그대로 사용할 수 있습니다.
Base URL: https://api.minimaxi.chat/v1
Auth: Bearer {API_KEY}
텍스트 생성 API
Chat Completions
import requests
url = "https://api.minimaxi.chat/v1/chat/completions"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
payload = {
"model": "MiniMax-Text-01",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "한국어로 설명해줘"}
],
"max_tokens": 1000,
"temperature": 0.7,
"stream": False
}
response = requests.post(url, json=payload, headers=headers)
스트리밍
payload["stream"] = True
response = requests.post(url, json=payload, headers=headers, stream=True)
for line in response.iter_lines():
if line.startswith(b"data: "):
print(line[6:].decode())
영상 생성 API
import requests, time
# 1. 영상 생성 요청
res = requests.post(
"https://api.minimaxi.chat/v1/video_generation",
headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
json={"model": "video-01", "prompt": "A sunset over the ocean"}
)
task_id = res.json()["task_id"]
# 2. 완료 대기 (폴링)
while True:
status = requests.get(
f"https://api.minimaxi.chat/v1/query/video_generation?task_id={task_id}",
headers={"Authorization": f"Bearer {API_KEY}"}
).json()
if status["status"] == "Success":
print("영상 URL:", status["file_id"])
break
time.sleep(5)
음성 합성 API
import requests, base64
res = requests.post(
"https://api.minimaxi.chat/v1/t2a_v2",
headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
json={
"model": "speech-02-hd",
"text": "안녕하세요!",
"voice_setting": {"voice_id": "Korean_Female_1", "speed": 1.0},
"audio_setting": {"format": "mp3"}
}
)
audio_data = base64.b64decode(res.json()["data"]["audio"])
with open("output.mp3", "wb") as f:
f.write(audio_data)
에러 처리
| 코드 | 원인 | 해결 |
|---|---|---|
| 401 | 잘못된 API Key | Key 재확인 |
| 429 | 속도 제한 초과 | 재시도 로직 추가 |
| 402 | 크레딧 부족 | 충전 후 재시도 |
| 500 | 서버 오류 | 잠시 후 재시도 |
댓글
아직 댓글이 없습니다.
댓글을 작성하려면 로그인이 필요합니다.