기본 URL 및 인증
OpenAI 호환 클라이언트를 Mimo API 기본 URL로 설정하세요. Google 또는 이메일로 가입하면 즉시 API 키를 받게 됩니다. 이 키를 표준 Authorization 헤더에 전달하세요. 모델 식별자는 uncensored이며, 이는 합법적인 성인 콘텐츠에 대한 거부율을 줄이도록 조정된 오픈 웨이트 모델을 실행합니다.
구독 서비스와 달리 청구는 암호화폐를 통한 선불로 이루어집니다. 오류는 크레딧을 소모하지 않습니다. 모델 목록을 나열하거나 간단한 텍스트 프롬프트를 보내어 연결을 확인할 수 있습니다. 키를 안전하게 보관하세요. 새 키를 생성하면 이전 키가 대체됩니다.
표준 채팅 완성 엔드포인트
채팅 완성 엔드포인트로 표준 POST 요청을 보내세요. 모델을 uncensored로 설정하고 필요한 배열 형식으로 메시지를 제공하세요. API는 프롬프트에 기반한 텍스트 출력을 반환합니다. 창의성을 제어하기 위해 temperature 또는 top_p과 같은 매개변수를 조정할 수 있습니다.
curl https://api.mimoapi.top/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."}]
}'이 엔드포인트는 텍스트 입력 및 출력 상호작용을 처리합니다. 임베딩, 이미지, 파인튜닝은 지원하지 않습니다. 이러한 기능이 필요하면 다른 서비스를 사용해야 합니다. 컨텍스트 창은 프롬프트와 완성을 합해 총 100,000 토큰을 허용합니다.
Python SDK 통합
공식 OpenAI Python 라이브러리를 사용하여 API와 상호작용하세요. Base URL을 Mimo API 엔드포인트를 가리키도록 재정의하세요. 이를 통해 GPT-4 또는 다른 모델에 사용하는 것과 동일한 SDK 메서드를 사용할 수 있습니다. 클라이언트 구성에서 API 키와 대상 모델을 설정하세요.
from openai import OpenAI
client = OpenAI(base_url="https://api.mimoapi.top/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)이 접근 방식은 코드의 이식성을 보장합니다. 공급자를 변경하면 Base URL과 키만 변경하면 됩니다. Python SDK는 직렬화 및 재시도를 자동으로 처리합니다. 결정론적 출력을 위해 seed과 같은 매개변수를 설정할 수도 있습니다.
Node SDK 통합
OpenAI Node.js 패키지를 설치하고 Base URL을 구성하세요. 구성 객체에 API 키를 전달하세요. 클라이언트는 요청을 무검열 모델 엔드포인트로 라우팅합니다. 이는 CommonJS 및 ES 모듈 가져오기 모두에서 작동합니다.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.mimoapi.top/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);Node 개발자는 다른 OpenAI 호환 서비스에서 사용하는 것과 동일한 비동기 패턴을 사용할 수 있습니다. SDK는 스트림 파싱 및 JSON 인코딩을 처리합니다. 출력 길이를 제어하기 위해 max_tokens을 설정할 수 있으며, 지정되지 않은 경우 기본값은 2,048입니다.
스트리밍 응답 (SSE)
요청에 stream: true을 설정하여 스트리밍을 활성화하세요. API는 부분 토큰을 포함하는 Server-Sent Events (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는 스트리밍 중 정확한 토큰 수를 보장하지 않지만, 마지막 청크에는 정확한 사용량 데이터가 포함됩니다. 이는 청구 투명성에 유용합니다.
속도 제한, 오류 및 JSON 모드
API는 키당 분당 300개의 요청 제한과 8개의 동시 요청을 허용합니다. 이를 초과하면 429 오류가 발생합니다. 401 오류는 유효하지 않거나 만료된 키를 나타냅니다. 선불 크레딧은 실제 토큰 사용량에만 청구되며, 오류와 거부는 무료입니다.
구조화된 출력을 위해 response_format을 json_object로 설정하여 JSON 모드를 사용하세요. 이는 모델이 유효한 JSON만 반환하도록 강제합니다. 이는 함수 호출 또는 데이터 추출에 유용합니다. 컨텍스트 창은 요청당 최대 32,000 토큰의 출력을 지원합니다.