La réponse courte
L'expression image gen api openai peut signifier deux choses différentes, et il est utile de les séparer. L'une est le service de génération d'images propre à OpenAI, qui appartient à OpenAI et auquel vous accédez avec un compte OpenAI. L'autre est tout service qui copie le format de requête d'OpenAI afin que les SDK et outils existants continuent de fonctionner. Ce site est de la seconde catégorie, et uniquement pour le texte.
Ce que vous obtenez ici est une API LLM textuelle hébergée et sans censure. Vous pointez un client OpenAI vers l'URL de base ci-dessous, définissez le modèle sur uncensored, et recevez des chat completions. Aucun pixel ne revient. Il n'y a pas de génération d'image, d'audio ou de vidéo, pas d'embeddings ni de fine-tuning, et aucun de ceux-ci n'est prévu dans ce qui est décrit sur ces pages.
Ce qui est compatible et ce qui ne l'est pas
Le mot "compatible" est étiré dans le marketing, voici donc la surface exacte. L'URL de base est https://api.imagegenapi.com/v1, l'authentification est Authorization: Bearer <key>, et deux méthodes existent.
| Endpoint | Disponible ici | Notes |
|---|---|---|
POST /v1/chat/completions | Oui | Streaming, appel de fonctions, mode JSON |
GET /v1/models | Oui | Liste uncensored |
| Endpoints de génération d'images | Non | Service texte uniquement |
| Embeddings, audio, fine-tuning | Non | Non proposé |
Si votre code appelle un chemin d'image sur cette URL de base, attendez-vous à une erreur, pas à une image. C'est la même chose pour toute fonctionnalité OpenAI en dehors des deux méthodes ci-dessus. Les contrôles d'échantillonnage que vous connaissez fonctionnent : temperature, top_p, stop, seed et les pénalités sont transmises, et une réponse peut utiliser la fenêtre de contexte de 100 000 tokens partagée entre le prompt et la complétion.
Il est également utile de clarifier l'identité. Le modèle derrière uncensored est un modèle à poids ouverts unique, hébergé par un fournisseur indépendant. Il ne s'agit pas de l'API OpenAI, elle ne fait pas de proxy des modèles OpenAI et n'est pas affiliée à OpenAI. La page correspondante sur ce site, GPT image API and uncensored text, couvre la même distinction sous l'angle des noms de modèles d'image.
Pourquoi la question se pose
Les gens atterrissent sur des pages comme celle-ci pour des raisons compréhensibles. Les outils d'image sont pilotés par des prompts textuels, les prompts textuels sont rédigés par des modèles de langage, et de nombreuses passerelles de modèles de langage partagent un format de requête. L'hypothèse naturelle est qu'une seule API fait les deux.
En pratique, les deux tâches sont des systèmes séparés avec des clés séparées, des tarifs séparés et des règles séparées. Un service d'image prend un prompt et renvoie une image. Un service textuel prend des messages et renvoie plus de texte. Le lien entre eux est vous, ou un script que vous écrivez, transférant le texte de l'un à l'autre. Une fois que vous le voyez ainsi, la question utile change de "cette API fait-elle des images" à "cette API peut-elle rédiger de meilleurs prompts pour le modèle d'image que j'utilise déjà".
C'est un cas d'utilisation réel, et un endroit où un modèle textuel sans censure peut avoir de l'importance. Les assistants généralistes réécrivent souvent, adoucissent ou refusent les demandes de prompts qui touchent aux thèmes pour adultes, à la violence dans un cadre d'histoire ou à l'esthétique sombre. Un modèle ajusté pour répondre aux demandes adultes légales sans refus fera généralement la tâche d'écriture comme demandé. La limite stricte reste en place : aucun contenu sexuel impliquant des mineurs, sous quelque forme que ce soit.
Utilisation de l'API textuelle pour rédiger des prompts d'image
Voici un petit exemple fonctionnel. Il demande au modèle un prompt détaillé, que vous collez ensuite dans le générateur d'images de votre choix. Le code utilise le SDK Python officiel d'OpenAI contre cette URL de base.
from openai import OpenAI
client = OpenAI(base_url="https://api.imagegenapi.com/v1", api_key="YOUR_KEY")
reply = client.chat.completions.create(
model="uncensored",
temperature=0.8,
messages=[
{"role": "system", "content": "You write prompts for text-to-image models. Reply with one paragraph: subject, composition, lighting, palette, lens or style. No preamble."},
{"role": "user", "content": "A ruined lighthouse at dusk for a dark fantasy book cover."},
],
)
print(reply.choices[0].message.content)
Le même appel depuis la ligne de commande :
curl https://api.imagegenapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Write a one-paragraph image prompt: a ruined lighthouse at dusk, dark fantasy cover art."}]}'
Rendre la sortie utilisable
Les générateurs d'images diffèrent sur ce qu'ils acceptent, donc façonnez le résultat avec votre message système. Demandez une structure fixe, une limite de mots et une liste de choses à éviter. Si vous avez besoin du prompt dans un pipeline, demandez du JSON avec response_format défini sur le type json_object et demandez des clés telles que prompt et negative. Ensuite, analysez-le et transmettez les champs à votre client d'images. Définir un seed et une faible temperature donne des résultats plus reproductibles lorsque vous itérez sur le texte.
Un flux de travail par lots avec des chiffres réels
Supposons que vous génériez des prompts pour 1 000 scènes. Chaque requête envoie environ 300 tokens (instructions plus une courte note de scène) et reçoit un prompt d'environ 200 tokens. Le tarif est de 0,15 $ par 1M de tokens d'entrée et de 0,50 $ par 1M de tokens de sortie.
- Une requête, entrée : 300 / 1 000 000 x 0,15 $ = 0,000045 $.
- Une requête, sortie : 200 / 1 000 000 x 0,50 $ = 0,0001 $.
- Une requête au total : 0,000145 $.
- 1 000 requêtes : 1 000 x 0,000145 $ = 0,145 $.
Ainsi, mille prompts coûtent environ 14,5 centimes, et l'étape de texte représente généralement une petite partie de la facture par rapport à la génération d'image elle-même, dont le prix doit être vérifié auprès de ce fournisseur. Une clé complète permet 8 requêtes simultanées et 300 requêtes par minute, donc 1 000 requêtes tiennent en quelques minutes avec un petit pool de workers. Gérez les erreurs HTTP 429 en attendant ; l'en-tête Retry-After: 5 vous indique la durée en cas de surcharge temporaire.
Vous pouvez essayer tout cela sans payer. Après l'inscription, la page clé API propose un crédit d'essai gratuit de 0,50 $ en un clic, valable 7 jours. À plus long terme, les recharges vont de 20 $ à 500 $ et sont payées en crypto (USDT sur TRC20 ou USDC sur Base) ; consultez tarifs pour les paliers de bonus.
Les erreurs à éviter
Certaines erreurs se répètent encore et encore lorsque quelqu'un essaie d'utiliser un endpoint de forme OpenAI pour le travail d'image.
- Appeler un chemin d'image et s'attendre à une image. Seules les deux méthodes documentées existent ici. Vérifiez le corps d'erreur plutôt que de réessayer, car les nouvelles tentatives ne changeront pas le résultat.
- Demander au modèle textuel de "dessiner" quelque chose. Il peut répondre avec de l'art ASCII, une description ou une excuse. Si vous voulez une image, envoyez le prompt qu'il rédige à un véritable générateur d'images.
- Ignorer la liste des modèles. Un appel rapide
GET /v1/modelsconfirme que la clé fonctionne et que le seul modèle estuncensored. Cela ne coûte rien. - Ignorer les réponses 429. Une clé d'essai permet 2 requêtes simultanées, donc une boucle avec dix workers échouera rapidement. Limitez le nombre de workers ou ajoutez une courte attente.
- Envoi de corps très volumineux. La limite est de 8 MB par requête. Les appels de rédaction de prompts sont minuscules, donc cela importe rarement, mais les documents collés peuvent l'atteindre.
Aucune de ces erreurs n'est difficile à corriger, et le remède le plus rapide est un script de test de dix lignes exécuté avant de brancher quoi que ce soit dans un outil plus grand.
Quand un autre service est mieux adapté
Soyez pratique dans le choix. Si vous avez besoin de l'image elle-même, vous avez besoin d'un fournisseur d'images, et OpenAI en est un parmi plusieurs ; consultez sa documentation et ses tarifs actuels pour les détails de ce qu'il offre. Si votre seul objectif est un prompt propre dans un style grand public, un assistant standard peut suffire et vous n'aurez pas besoin de ce service du tout.
Cette API est le meilleur choix lorsque l'étape de texte est le goulot d'étranglement : l'assistant que vous utilisez refuse ou atténue vos demandes de prompt, vous avez besoin d'un volume élevé de prompts à un prix par token prévisible, ou vous voulez un endpoint compatible OpenAI pour la fiction, le jeu de rôle et les outils de compagnons pour une utilisation adulte légale sans réécrire le code de votre client. Pour les détails complets des paramètres, la documentation contient le format de requête et les codes d'erreur.
Une autre note pratique : les prompts envoyés à cette API ne sont pas utilisés pour l'entraînement. Cependant, traitez tout service hébergé comme étant hors de votre machine et évitez d'envoyer des secrets que vous ne colleriez pas dans un formulaire web.
