2026/6/7 8:49:08
网站建设
项目流程
网站升级中,深圳华强北今晚,网站 规划方案,室内设计入门教程一、图像模型 API
Spring 图像模型 API 旨在提供一个简单且可移植的接口#xff0c;用于与专注于图像生成的各种 AI 模型 交互#xff0c;使开发人员能够以最少的代码更改在不同图像相关模型之间切换。这种设计符合 Spring 的模块化和可互换性理念#xff0c;确保开发人员能…一、图像模型 APISpring 图像模型 API 旨在提供一个简单且可移植的接口用于与专注于图像生成的各种 AI 模型 交互使开发人员能够以最少的代码更改在不同图像相关模型之间切换。这种设计符合 Spring 的模块化和可互换性理念确保开发人员能够快速调整其应用程序以适应与图像处理相关的不同 AI 能力。此外借助 ImagePrompt用于输入封装和 ImageResponse用于输出处理等辅助类的支持图像模型 API 统一了与专注于图像生成的 AI 模型的通信。它管理了请求准备和响应解析的复杂性为图像生成功能提供了直接且简化的 API 交互。Spring 图像模型 API 构建于 Spring AI 通用模型 API 之上提供了图像特定的抽象和实现。二、API 概述本节提供了 Spring 图像模型 API 接口及相关类的指南。三、图像模型以下是 ImageModel 接口定义FunctionalInterfacepublicinterfaceImageModelextendsModelImagePrompt,ImageResponse{ImageResponsecall(ImagePromptrequest);}3.1 ImagePromptImagePrompt 是一个 ModelRequest它封装了 ImageMessage 对象列表和可选的模型请求选项。以下列表显示了 ImagePrompt 类的简化版本省略了构造函数和其他实用方法publicclassImagePromptimplementsModelRequestListImageMessage{privatefinalListImageMessagemessages;privateImageOptionsimageModelOptions;OverridepublicListImageMessagegetInstructions(){...}OverridepublicImageOptionsgetOptions(){...}// 构造函数和实用方法已省略}3.2 ImageMessageImageMessage 类封装了要使用的文本以及该文本在影响生成图像时应具有的权重。对于支持权重的模型权重可以是正值或负值。publicclassImageMessage{privateStringtext;privateFloatweight;publicStringgetText(){...}publicFloatgetWeight(){...}// 构造函数和实用方法已省略}3.3 ImageOptions表示可以传递给图像生成模型的选项。ImageOptions 接口扩展了 ModelOptions 接口用于定义一些可以传递给 AI 模型的可移植选项。ImageOptions 接口定义如下publicinterfaceImageOptionsextendsModelOptions{IntegergetN();StringgetModel();IntegergetWidth();IntegergetHeight();StringgetResponseFormat();// openai - url 或 base64 : stability ai byte[] 或 base64}此外每个特定模型的 ImageModel 实现都可以有自己的选项这些选项可以传递给 AI 模型。例如OpenAI 图像生成模型有自己的选项如质量、风格等。这是一个强大的功能允许开发人员在启动应用程序时使用特定于模型的选项然后在运行时使用 ImagePrompt 覆盖它们。3.4 ImageResponseImageResponse 类的结构如下publicclassImageResponseimplementsModelResponseImageGeneration{privatefinalImageResponseMetadataimageResponseMetadata;privatefinalListImageGenerationimageGenerations;OverridepublicImageGenerationgetResult(){// 获取第一个结果}OverridepublicListImageGenerationgetResults(){...}OverridepublicImageResponseMetadatagetMetadata(){...}// 其他方法已省略}ImageResponse 类保存 AI 模型的输出每个 ImageGeneration 实例包含由单个提示产生的多个可能输出中的一个。ImageResponse 类还携带一个 ImageResponseMetadata 对象该对象保存有关 AI 模型响应的元数据。3.5 ImageGeneration最后ImageGeneration 类从 ModelResult 扩展而来表示输出响应以及与此结果相关的元数据publicclassImageGenerationimplementsModelResultImage{privateImageGenerationMetadataimageGenerationMetadata;privateImageimage;OverridepublicImagegetOutput(){...}OverridepublicImageGenerationMetadatagetMetadata(){...}// 其他方法已省略}四、可用实现为以下模型提供商提供了 ImageModel 实现OpenAI 图像生成Azure OpenAI 图像生成QianFan 图像生成StabilityAI 图像生成ZhiPuAI 图像生成五、API 文档您可以在此处找到 Javadoc。六、反馈与贡献该项目的 GitHub 讨论区 是发送反馈的好地方。