A OpenAI API permite que, dado um prompt e/ou uma imagem de entrada, o modelo gere uma nova imagem. A Images API oferece três métodos para interagir com imagens:
1. Criar imagens do zero a partir de um prompt de texto
2. Criar edições de uma imagem existente com base em um novo prompt de texto
3. Criar variações de uma imagem existente
Exemplo Delphi de gerador de imagens
A OpenAI API possui os seguintes parâmetros para criar uma nova imagem a partir de um prompt.
- prompt: (obrigatório) Descrição em texto da(s) imagem(ns) desejada(s). O comprimento máximo é de 1000 caracteres.
- n: O número de imagens a gerar. Deve estar entre 1 e 10.
- size: O tamanho das imagens geradas. Deve ser um de: 256x256, 512x512 ou 1024x1024.
- response_format: O formato em que as imagens geradas são retornadas. Deve ser url ou b64_json.
- user: Um identificador único que representa seu usuário final, podendo ajudar a OpenAI a monitorar e detectar abusos.
Veja abaixo um exemplo simples em Delphi que gera uma imagem a partir de um 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;

Veja abaixo a demo compilada para Windows, criada com a biblioteca sgcWebSockets.
