Base URL e autenticazione
Inizia puntando il tuo client compatibile con OpenAI alla base URL dell'API Mimo. Riceverai una chiave API immediatamente dopo esserti registrato con Google o email. Passa questa chiave nell'intestazione standard Authorization. L'identificatore del modello è uncensored, che esegue un modello a pesi aperti ottimizzato per ridurre i rifiuti su contenuti adulti leciti.
A differenza dei servizi in abbonamento, la fatturazione è prepagata tramite cripto. Gli errori non consumano credito. Puoi verificare la connettività elencando i modelli o inviando un semplice prompt di testo. Mantieni la tua chiave sicura; una chiave per account sostituisce la precedente se ne generi una nuova.
Endpoint standard Chat Completions
Invia una richiesta POST standard all'endpoint delle chat completions. Imposta il modello su uncensored e fornisci i tuoi messaggi nel formato array richiesto. L'API restituisce un output testuale basato sul tuo prompt. Puoi regolare parametri come temperature o top_p per controllare la creatività.
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."}]
}'Questo endpoint gestisce interazioni testo-in, testo-out. Non supporta embedding, immagini o fine-tuning. Se ti servono queste funzionalità, devi usare un servizio diverso. La finestra di contesto permette 100.000 token in totale per prompt e completamento combinati.
Integrazione SDK Python
Usa la libreria ufficiale OpenAI Python per interagire con l'API. Sovrascrivi la base URL per puntare all'endpoint dell'API Mimo. Questo ti permette di usare gli stessi metodi SDK che usi per GPT-4 o altri modelli. Imposta la chiave API e il modello target nella configurazione del tuo client.
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)Questo approccio assicura che il tuo codice rimanga portatile. Se cambi provider, modifichi solo la base URL e la chiave. L'SDK Python gestisce serializzazione e ritentativi automaticamente. Puoi anche impostare parametri come seed per output deterministici.
Integrazione SDK Node.js
Installa il pacchetto OpenAI Node.js e configura la base URL. Passa la tua chiave API nell'oggetto di configurazione. Il client instraderà le richieste all'endpoint del modello senza censura. Questo funziona sia con importazioni CommonJS che ES module.
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);Gli sviluppatori Node possono usare gli stessi pattern asincroni che usano con altri servizi compatibili con OpenAI. L'SDK gestisce il parsing dello stream e la codifica JSON. Puoi impostare max_tokens per controllare la lunghezza dell'output, con un default di 2.048 se non specificato.
Risposte in streaming (SSE)
Abilita lo streaming impostando stream: true nella tua richiesta. L'API restituisce Server-Sent Events (SSE) contenenti token parziali. Questo ti permette di visualizzare l'output progressivamente agli utenti. Le statistiche di utilizzo dei token appaiono nell'ultimo chunk dello stream.
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)Lo streaming riduce la latenza percepita per le risposte lunghe. Devi gestire gli eventi dello stream nel codice del tuo client. L'API non garantisce conteggi esatti di token durante lo streaming, ma l'ultimo chunk include dati di utilizzo accurati. Questo è utile per la trasparenza di fatturazione.
Limiti di richiesta, errori e modalità JSON
L'API impone un limite di 300 richieste al minuto per chiave e permette 8 richieste parallele. Se superi questo limite, ricevi un errore 429. Un errore 401 indica una chiave non valida o scaduta. Il credito prepagato viene addebitato solo per l'utilizzo reale di token; errori e rifiuti sono gratuiti.
Per output strutturati, usa la modalità JSON impostando response_format su json_object. Questo forza il modello a restituire JSON valido. Questo è utile per la chiamata di funzioni o l'estrazione di dati. La finestra di contesto supporta fino a 32.000 token di output per richiesta.