OpenAI API 允许根据提示词和/或输入图片让模型生成新图像。Images API 提供三种与图像交互的方法:
1. 根据文本提示词从零生成图像
2. 根据新文本提示词对现有图像进行编辑
3. 对现有图像生成变体
Delphi 图像生成示例
OpenAI API 提供以下参数来根据提示词生成新图像:
- prompt:(必填)所需图像的文本描述,最大长度为 1000 个字符。
- n:要生成的图像数量,必须在 1 到 10 之间。
- size:生成图像的尺寸,必须为 256x256、512x512 或 1024x1024 之一。
- response_format:返回生成图像的格式,必须为 url 或 b64_json 之一。
- user:代表终端用户的唯一标识符,可帮助 OpenAI 监控和检测滥用行为。
以下是一个根据提示词生成图像的简单 Delphi 示例。
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;

以下是使用 sgcWebSockets 库构建的已编译 Windows 演示程序。
