La API de OpenAI permite que, dado un prompt y/o una imagen de entrada, el modelo genere una nueva imagen. La Images API proporciona tres métodos para interactuar con imágenes:
1. Crear imágenes desde cero a partir de un prompt de texto
2. Crear ediciones de una imagen existente a partir de un nuevo prompt de texto
3. Crear variaciones de una imagen existente
Ejemplo de generador de imágenes en Delphi
La API de OpenAI tiene los siguientes métodos para crear una nueva imagen usando un prompt.
- prompt: (Obligatorio) Una descripción en texto de la(s) imagen(es) deseada(s). La longitud máxima es de 1000 caracteres.
- n: El número de imágenes a generar. Debe estar entre 1 y 10.
- size: El tamaño de las imágenes generadas. Debe ser uno de 256x256, 512x512 o 1024x1024.
- response_format: El formato en el que se devuelven las imágenes generadas. Debe ser uno de url o b64_json.
- user: Un identificador único que representa a tu usuario final, lo que puede ayudar a OpenAI a monitorizar y detectar abusos.
A continuación encontrarás un ejemplo simple en Delphi que genera una imagen a partir de 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;

A continuación encontrarás la demo compilada para windows construida con la biblioteca sgcWebSockets.
