Basis-URL und Authentifizierung
Richte deinen OpenAI-kompatiblen Client zunächst auf die Mimo API Base URL ein. Du erhältst sofort nach der Anmeldung mit Google oder E-Mail deinen API-Schlüssel. Übergebe diesen Schlüssel im Standard-Authorization-Header. Die Modell-ID ist uncensored, das ein Open-Weight-Modell nutzt, das für weniger Ablehnungen bei rechtlich zulässigem Adult-Content optimiert ist.
Im Gegensatz zu Abonnementdiensten erfolgt die Abrechnung im Voraus per Krypto. Fehler verbrauchen kein Guthaben. Du kannst die Konnektivität prüfen, indem du Modelle auflistest oder einen einfachen Prompt sendest. Bewahre deinen Schlüssel sicher auf; ein Schlüssel pro Konto ersetzt den vorherigen, wenn du einen neuen generierst.
Standard Chat Completions Endpunkt
Sende eine Standard-POST-Anfrage an den Chat-Endpunkt. Lege das Modell auf uncensored fest und gib deine Nachrichten im erforderlichen Array-Format an. Die API gibt Textausgaben basierend auf deinem Prompt zurück. Du kannst Parameter wie temperature oder top_p anpassen, um die Kreativität zu steuern.
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."}]
}'Dieser Endpunkt verarbeitet Text-Eingaben und Text-Ausgaben. Er unterstützt keine Einbettungen, Bilder oder Fine-Tuning. Wenn du diese Funktionen benötigst, musst du einen anderen Dienst verwenden. Das Kontextfenster erlaubt insgesamt 100.000 Token für Prompt und Vervollständigung zusammen.
Python SDK Integration
Nutze die offizielle OpenAI Python-Bibliothek, um mit der API zu interagieren. Überschreibe die Base URL, um auf den Mimo API-Endpunkt zu verweisen. So kannst du dieselben SDK-Methoden nutzen, die du auch für GPT-4 oder andere Modelle verwendest. Setze den API-Schlüssel und das Zielmodell in deiner Client-Konfiguration.
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)Dieser Ansatz stellt sicher, dass dein Code portabel bleibt. Wenn du den Anbieter wechselst, änderst du nur die Base URL und den Schlüssel. Das Python SDK übernimmt Serialisierung und Wiederholungen automatisch. Du kannst auch Parameter wie seed für deterministische Ausgaben setzen.
Node SDK Integration
Installiere das OpenAI Node.js-Paket und konfiguriere die Base URL. Übergebe deinen API-Schlüssel im Konfigurationsobjekt. Der Client leitet Anfragen an den Endpunkt des unzensierten Modells weiter. Das funktioniert sowohl mit CommonJS- als auch mit ES-Modul-Imports.
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-Entwickler können dieselben asynchronen Muster verwenden, die sie auch mit anderen OpenAI-kompatiblen Diensten nutzen. Das SDK verarbeitet Stream-Parsing und JSON-Codierung. Du kannst max_tokens festlegen, um die Ausgabelänge zu steuern; standardmäßig werden 2.048 verwendet, wenn nichts angegeben ist.
Streaming-Antworten (SSE)
Aktiviere das Streaming, indem du stream: true in deiner Anfrage setzt. Die API gibt Server-Sent Events (SSE) zurück, die partielle Token enthalten. Dies ermöglicht es dir, die Ausgabe schrittweise an Benutzer anzuzeigen. Token-Nutzungsstatistiken erscheinen im letzten Block des Streams.
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)Streaming reduziert die wahrgenommene Latenz bei langen Antworten. Du musst die Stream-Events in deinem Client-Code verarbeiten. Die API garantiert keine exakten Token-Zählungen während des Streamings, aber der letzte Chunk enthält genaue Nutzungsdaten. Das ist nützlich für Abrechnungstransparenz.
Ratenlimits, Fehler und JSON-Modus
Die API erzwingt ein Limit von 300 Anfragen pro Minute pro Schlüssel und erlaubt 8 parallele Anfragen. Wenn du dieses Limit überschreitest, erhältst du einen 429-Fehler. Ein 401-Fehler deutet auf einen ungültigen oder abgelaufenen Schlüssel hin. Prepaid-Guthaben wird nur für tatsächliche Token-Nutzung berechnet; Fehler und Ablehnungen sind kostenlos.
Für strukturierte Ausgabe verwende den JSON-Modus, indem du response_format auf json_object setzt. Dies zwingt das Modell, gültiges JSON zurückzugeben. Dies ist nützlich für Function Calling oder Datenextraktion. Das Kontextfenster unterstützt bis zu 32.000 Token Ausgabe pro Anfrage.