È l'API Gemini per immagini di Google?
No. Se sei arrivato cercando un endpoint per immagini Gemini, la prima cosa da chiarire è chi gestisce cosa. Gemini è la famiglia di modelli di Google e Google offre la generazione di immagini attraverso i suoi prodotti per sviluppatori. Qualunque cosa possano fare questi prodotti, li raggiungi attraverso Google, con account, chiavi e termini di Google.
Questo sito è diverso. È un'API di testo ospitata in cui un singolo modello a pesi aperti, gestito da un provider indipendente, è ottimizzato per rispondere senza rifiuti di contenuti per l'uso adulto legale. Non è un rivenditore di Gemini, non instrada le richieste verso Google e non ha alcuna approvazione da Google o da altri fornitori di modelli. Il nome di dominio menziona la generazione di immagini perché molti visitatori cercano aiuto per i prompt, non perché qui vengano prodotte immagini.
Quello che ottieni effettivamente
L'ambito è deliberatamente piccolo, il che lo rende facile da valutare in pochi minuti.
- Protocollo: Compatibile con OpenAI. Qualsiasi SDK o client OpenAI funziona dopo aver modificato due cose, l'URL di base e la chiave.
- URL di base:
https://api.imagegenapi.com/v1 - ID modello:
uncensored - Metodi:
POST /v1/chat/completionseGET /v1/models - Funzionalità: streaming su SSE, chiamata di funzioni, modalità JSON e parametri di campionamento pass-through (
temperature,top_p,stop,seed, penalità). - Contesto: 100.000 token, prompt più completamento.
Non incluso: generazione di immagini, input immagine, audio, video, embedding e affinamento. Se una funzionalità non è nell'elenco sopra, supponi che sia assente. La pagina della documentazione ha il formato della richiesta e i codici di errore.
Terze parti contro ufficiale: come distinguerli
La confusione è comune in tutto il mercato, quindi un rapido elenco di controllo aiuta ogni volta che incontri un'API il cui nome suona come quello di un grande fornitore.
- Guarda il dominio e i termini. Un'API ufficiale vive sotto il dominio e i termini del fornitore. Un servizio di terze parti lo dice, o almeno nomina il proprio operatore.
- Controlla l'elenco dei modelli. Qui,
GET /v1/modelsrestituisce l'unico modello,uncensored. Un router elencherà molti nomi di modelli di fornitori. - Leggi cosa è promesso. Affermazioni come "la cosa vera, ma più economica" meritano sospetto. Un servizio affidabile ti dice quali funzionalità mancano.
- Provalo. Invia alcune richieste con il credito di prova prima di spostare qualsiasi carico di lavoro.
Su questo sito, le risposte sono chiare: provider indipendente, un modello a pesi aperti, solo testo. Tratta qualsiasi altra lettura come un errore. Puoi verificare l'identità del modello attraverso il comportamento, ma non dovresti aspettarti che affermi di essere il prodotto di un particolare fornitore.
Un modo sensato per combinare strumenti di testo e immagini
I modelli di immagini sono guidati dai prompt e la scrittura di buoni prompt è principalmente un'attività testuale. Un flusso di lavoro comune è quindi in due fasi: chiedi a un modello linguistico di produrre un prompt dettagliato, quindi incolla o instrada quel prompt nel servizio di immagini che hai scelto, di Google o di chiunque altro. Il modello di testo qui gestisce il primo passaggio.
from openai import OpenAI
client = OpenAI(base_url="https://api.imagegenapi.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
temperature=0.7,
messages=[
{"role": "system", "content": "Turn a short idea into a detailed prompt for a text-to-image model. Include subject, setting, lighting, color palette and mood. One paragraph."},
{"role": "user", "content": "A smuggler's market inside a hollowed-out whale skeleton, neon lanterns."},
],
)
print(resp.choices[0].message.content)
Per una pipeline, chiedi JSON in modo che la fase successiva possa leggere i campi. Ecco in Node con il pacchetto ufficiale openai:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.imagegenapi.com/v1",
apiKey: process.env.API_KEY,
});
const res = await client.chat.completions.create({
model: "uncensored",
response_format: { type: "json_object" },
messages: [
{ role: "user", content: "Return JSON with keys prompt and style for: a whale-skeleton night market." },
],
});
const out = JSON.parse(res.choices[0].message.content);
console.log(out.prompt);
Alcune note su quegli snippet. Il messaggio di sistema fa il lavoro pesante, quindi dedica il tuo tempo lì. La chiave API appartiene a una variabile di ambiente, mai nel controllo del codice sorgente. E se la chiamata fallisce con un 429, aspetta e riprova invece di eseguire un loop a velocità massima, poiché un loop stretto consuma solo più velocemente il tuo limite per minuto. Lo stesso codice funziona invariato contro altri host compatibili con OpenAI, che è il punto del protocollo condiviso: puoi cambiare provider modificando l'URL di base e il nome del modello.
Ricorda che l'orientamento all'uso adulto lecito si applica ai contenuti che richiedi. Finzione, roleplay e app companion sono l'uso tipico e i contenuti sessuali che coinvolgono minorenni sono bloccati senza eccezioni.
Scrivere prompt adatti a un modello di immagini
La maggior parte del valore nel passaggio testuale proviene dalle istruzioni che dai, non solo dal modello. Alcune abitudini rendono l'output molto più utilizzabile.
Dai al modello una ricetta fissa
Digli l'ordine delle parti che vuoi: soggetto prima, poi ambiente, poi luce, poi palette, poi stile. I modelli di immagini tendono a dare più peso alle parole iniziali, quindi un ordine stabile mantiene i risultati confrontabili tra le esecuzioni. Aggiungi un limite di parole, poiché prompt molto lunghi spesso diluiscono il soggetto principale invece di migliorarlo.
Indica cosa escludere
Alcuni strumenti di immagine prendono un prompt negativo separato, altri lo ignorano. Chiedi al modello testuale di restituire le due parti come campi JSON separati, quindi elimina la seconda se il tuo strumento non ne ha bisogno. Questo è più semplice della modifica manuale di un lungo paragrafo.
Itera nella stessa conversazione
Mantieni i messaggi precedenti nella lista messages e chiedi modifiche: luce più calda, un'inquadratura più ampia, meno personaggi. La finestra di contesto è di 100.000 token, quindi anche una lunga sessione di editing si adatta. Abbassa temperature quando vuoi piccole modifiche e aumentalo quando vuoi idee fresche.
Testa alcuni seed
Se passi lo stesso seed con gli stessi messaggi e impostazioni, l'output rimane vicino da esecuzione a esecuzione. Cambia solo una cosa alla volta, come il messaggio di sistema, e puoi dire quale modifica ha migliorato il risultato. Quella disciplina risparmia più denaro di qualsiasi livello di prezzo, poiché meno generazioni di immagini sprecate sono il vero risparmio di costo.
Costo del passaggio testuale
Il prezzo è $0,15 per 1M token di input e $0,50 per 1M token di output, dal credito prepagato, senza abbonamento. Le richieste rifiutate o fallite non vengono addebitate. Prendi un batch di 1.000 chiamate di scrittura di prompt, ognuna con 400 token di input e 250 token di output.
- Input per chiamata: 400 / 1.000.000 x $0,15 = $0,00006.
- Output per chiamata: 250 / 1.000.000 x $0,50 = $0,000125.
- Per chiamata: $0,000185.
- Per 1.000 chiamate: $0,185.
Sono 18,5 centesimi per il batch. Confrontalo con il prezzo del tuo fornitore di immagini per immagine, che dovresti cercare sulla loro pagina dei prezzi, e di solito vedrai che il passaggio di scrittura del prompt è quello più economico.
Iniziare con il credito
I nuovi utenti possono richiedere $0,50 di credito di prova con un clic nella pagina della chiave API dopo essersi registrati con Google o con email e password. Non richiede alcun pagamento e dura 7 giorni. Successivamente, ricarica con qualsiasi importo intero da $20 a $500 in cripto (USDT su TRC20 o USDC su Base). Bonus del +5% da $50, +10% da $100 e +15% da $200, e il credito non scade mai. Vedi prezzi per il quadro completo.
Limiti da considerare nella pianificazione
Una chiave completa consente 8 richieste parallele e 300 richieste al minuto. Una chiave di prova consente 2 paralleli e 60 al minuto. Il superamento del primo dà HTTP 429 con codice rate_limited, il superamento del secondo dà 429 con codice concurrency, e il sovraccarico temporaneo dà 429 con un'intestazione Retry-After: 5. Una richiesta streaming mantiene il suo slot fino alla fine dello streaming, quindi chiudi gli streaming che non ti servono più.
Le intestazioni di risposta includono X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests e X-RateLimit-Limit-Concurrency. Registra l'ID richiesta con ogni errore, perché è il modo più veloce per ottenere aiuto da support. La dimensione massima del corpo è 8 MB.
Se ti serve una chiamata API nativa per le immagini di Gemini, vai su Google e leggi la loro documentazione attuale. Se ti serve un modello di testo senza censura che parli il protocollo OpenAI, per scrivere prompt, storie o dialoghi tra personaggi per uso adulto lecito, questo è stato creato per quello.
