L'API OpenAI permet, à partir d'un prompt et/ou d'une image d'entrée, de générer une nouvelle image avec le modèle. L'API Images propose trois méthodes pour interagir avec les images :
1. Créer des images à partir de zéro à partir d'un prompt textuel
2. Créer des modifications d'une image existante à partir d'un nouveau prompt textuel
3. Créer des variations d'une image existante
Exemple Delphi Image Generator
L'API OpenAI propose les méthodes suivantes pour créer une nouvelle image à partir d'un prompt.
- prompt : (obligatoire) une description textuelle de la ou des images souhaitées. La longueur maximale est de 1000 caractères.
- n : le nombre d'images à générer. Doit être compris entre 1 et 10.
- size : la taille des images générées. Doit être 256x256, 512x512 ou 1024x1024.
- response_format : le format dans lequel les images générées sont renvoyées. Doit être url ou b64_json.
- user : un identifiant unique représentant ton utilisateur final, qui peut aider OpenAI à surveiller et détecter les abus.
Tu trouveras ci-dessous un exemple Delphi simple qui génère une image à partir d'un prompt.
procedure TFRMOpenAIImages.DoCreateImage(const aPrompt: string);
var
oRequest: TsgcOpenAIClass_Request_Image;
oResponse: TsgcOpenAIClass_Response_Image;
oStream: TBytesStream;
oPNG : TPngImage;
begin
oRequest := TsgcOpenAIClass_Request_Image.Create;
Try
oRequest.Prompt := aPrompt;
oRequest.ResponseFormat := 'b64_json';
oResponse := OpenAI.CreateImage(oRequest);
Try
if Length(oResponse.Data) > 0 then
begin
oStream := TBytesStream.Create(DecodeBase64(AnsiString(oResponse.Data[0].B64_json)));
Try
oPNG := TPngImage.Create;
Try
oPNG.LoadFromStream(oStream);
Image1.Picture.Assign(oPNG);
Finally
oPNG.Free;
End;
Finally
oStream.free;
End;
end;
Finally
oResponse.Free;
End;
Finally
oRequest.Free;
End;
end;

Tu trouveras ci-dessous la démo compilée pour Windows construite avec la bibliothèque sgcWebSockets.
