GPT Image 2
Décrit l'état d'intégration du modèle `gpt-image-2` dans le projet actuel, ainsi que les champs de requête et la structure de réponse de l'interface unifiée d'images.
- La page conserve le chemin pour décrire l'état d'intégration dans le projet actuel
- Interface unifiée d'images :
POST /v1/images/generations - La réponse réussie est synchrone et renvoie un
ImageResponse
État actuel de l'intégration
- L'API Magick prend déjà en charge le modèle gpt-image-2
Conception de l'interface publique d'images
Routage des requêtes
POST /v1/images/generationsStructure de la réponse en cas de succès
{
"created": 1712345678,
"data": [
{
"url": "https://example.com/generated-image.png",
"b64_json": "",
"revised_prompt": ""
}
]
}Champs de requête standard
Le projet actuel garantit que les champs standard suivants sont correctement analysés par le DTO public d'images :
modelpromptnsizequalityresponse_format
Il est déconseillé de dépendre directement de champs non standardisés au niveau supérieur de l'interface publique d'images.
Exemples d'appel prêts à l'emploi
Les exemples suivants s'appliquent lorsque gpt-image-2 est déjà mappé comme modèle disponible dans le backend :
cURL
curl --request POST \
--url https://api.magickapi.com/v1/images/generations \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-image-2",
"prompt": "一只橘猫坐在窗台上看夕阳,水彩画风格",
"n": 1,
"size": "1024x1024",
"response_format": "url"
}'Python
import requests
url = "https://api.magickapi.com/v1/images/generations"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
payload = {
"model": "gpt-image-2",
"prompt": "一只橘猫坐在窗台上看夕阳,水彩画风格",
"n": 1,
"size": "1024x1024",
"response_format": "url",
}
response = requests.post(url, headers=headers, json=payload, timeout=300)
response.raise_for_status()
result = response.json()
print(result)
print("image_url:", result["data"][0]["url"])Node.js
const url = "https://api.magickapi.com/v1/images/generations";
const payload = {
model: "gpt-image-2",
prompt: "一只橘猫坐在窗台上看夕阳,水彩画风格",
n: 1,
size: "1024x1024",
response_format: "url",
};
const response = await fetch(url, {
method: "POST",
headers: {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
if (!response.ok) {
throw new Error(await response.text());
}
const result = await response.json();
console.log(result);
console.log("image_url:", result.data?.[0]?.url);Si vous souhaitez obtenir directement le contenu en Base64, remplacez response_format par b64_json et lisez data[0].b64_json.
Édition d'images
Si le canal correspondant à ce modèle prend en charge les capacités d'édition, les points d'entrée unifiés du projet actuel sont :
POST /v1/images/editsPOST /v1/edits
Remarques
- Les tâches d'images asynchrones sont prises en charge. Veuillez consulter les images générées dans 【Journal des tâches】 -> 【Journal de génération d'images】
Dernière mise à jour
OpenAI Responses
Compatible avec l'API OpenAI Responses ; prend en charge les entrées textuelles, multimodales et les événements de streaming ; la réponse réussie est le protocole brut Responses, sans utiliser choices.
GPT Image 2 Official
Décrit l'état d'intégration de `gpt-image-2-official` dans le projet actuel, ainsi que les champs de requête et la structure de réponse de l'interface d'image unifiée.