前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringAI你知道吗???

SpringAI你知道吗???

作者头像
ma布
发布2024-10-30 08:48:39
1120
发布2024-10-30 08:48:39
举报
文章被收录于专栏:Java开发

目前AI的浪潮已经居高不下了,因此我最近也开始了有关AI的项目,再开始AI的项目之前,我们也要先熟知AI的开发文档和知识,才能更好的开发项目,因此特地从官网查看了有关SpringAI的使用。

Spring AI 官方说明文档:https://docs.spring.io/spring-ai/reference/api/

Open AI生成对话

连接属性参数

参数前缀是spring.ai.openai,让您连接到 OpenAI。

参数

描述

默认值

spring.ai.openai.base-url

连接到的 URL

api.openai.com

spring.ai.openai.api-key

The API Key

-

对话参数

属性前缀为 spring.ai.openai.chat,可用于配置 OpenAI 的聊天客户端属性。

属性

描述

默认值

spring.ai.openai.chat.enabled

是否启用 OpenAI 聊天客户端。

TRUE

spring.ai.openai.chat.base-url

可选,如配置,将覆盖基础 URL,专门针对聊天场景。

-

spring.ai.openai.chat.api-key

可选,配置时覆盖聊天场景下的 API 密钥。

-

spring.ai.openai.chat.options.model

使用的 OpenAI 聊天模型。

gpt-3.5-turbo

spring.ai.openai.chat.options.temperature

模型温度,控制输出的创意程度。

0.8

spring.ai.openai.chat.options.frequencyPenalty

影响重复行可能性的惩罚值。

0.0f

spring.ai.openai.chat.options.logitBias

调整特定令牌出现概率。

-

spring.ai.openai.chat.options.maxTokens

返回的最大令牌数量。

-

spring.ai.openai.chat.options.n

每个输入生成的回复选项数量。

1

spring.ai.openai.chat.options.presencePenalty

鼓励新话题的惩罚值。

-

spring.ai.openai.chat.options.responseFormat

输出格式配置,如 JSON。

-

spring.ai.openai.chat.options.seed

控制采样确定性的种子值(测试阶段)。

-

spring.ai.openai.chat.options.stop

停止生成令牌的序列标记。

-

spring.ai.openai.chat.options.topP

核采样中考虑的概率质量比例。

-

spring.ai.openai.chat.options.tools

可供模型调用的工具列表,如函数。

-

spring.ai.openai.chat.options.toolChoice

控制模型如何选择调用函数。

-

spring.ai.openai.chat.options.user

终端用户的唯一标识,用于监控和防滥用。

-

spring.ai.openai.chat.options.functions

函数列表,用于在请求中调用。函数需预先注册。

-

重试参数

属性前缀为 spring.ai.retry,用于配置 OpenAI 聊天客户端的重试机制:

属性

描述

默认值

spring.ai.retry.max-attempts

最大重试次数。

10

spring.ai.retry.backoff.initial-interval

指数退避策略的初始睡眠持续时间。

2 sec.

spring.ai.retry.backoff.multiplier

退避策略间隔倍数。

5

spring.ai.retry.backoff.max-interval

最大退避持续时间。

3 min.

spring.ai.retry.on-client-errors

如果为 false,则引发 NonTransientAiException,并且对4xx客户端错误代码不尝试重试

FALSE

spring.ai.retry.exclude-on-http-codes

不触发重试的 HTTP 状态代码列表(例如,抛出 NonTransientAiException)。

empty

Open AI 生成图像

Spring AI 为 OpenAI Image Generation Client 提供了 Spring Boot 自动配置。要启用它,请将以下依赖项添加到您项目的 Maven pom.xml 文件中:

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>

Gradle build.gradle 构建文件中。 

代码语言:javascript
复制
dependencies {
    implementation 'org.springframework.ai:spring-ai-openai-spring-boot-starter'
}
图像生成属性参数

配置前缀是 spring.ai.openai.image,可让您配置基于 OpenAI 的 ImageClient 实现:

参数

描述

默认值

spring.ai.openai.image.enabled

启用 OpenAI 图像客户端。

true

spring.ai.openai.image.base-url

可选,覆盖 spring.ai.openai.base-url 以提供特定于图片生成的 URL。

-

spring.ai.openai.image.api-key

可选,覆盖 spring.ai.openai.api-key 以提供特定于图片生成的 API 密钥。

-

spring.ai.openai.image.options.n

要生成的图像数量。必须在 1 和 10 之间。对于 dall-e-3,仅支持 n=1。

-

spring.ai.openai.image.options.model

用于图像生成的模型。

OpenAiImageApi.DEFAULT_IMAGE_MODEL

spring.ai.openai.image.options.quality

生成的图像的质量。HD 创建具有更细节和更一致性的图像。此参数仅适用于 dall-e-3。

-

spring.ai.openai.image.options.response_format

生成的图像返回的格式。必须是 URL 或 b64_json 之一。

-

spring.ai.openai.image.options.size

生成的图像的尺寸 dall-e-2: 256x256、512x512、1024x1024;dall-e-3: 1024x1024、1792x1024、1024x1792。

-

spring.ai.openai.image.options.size_width

生成的图像的宽度。dall-e-2: 256、512、1024。

-

spring.ai.openai.image.options.size_height

生成图像的高度。dall-e-2: 256、512、1024。

-

spring.ai.openai.image.options.style

生成图像的风格。生动或自然。仅支持 dall-e-3。

-

spring.ai.openai.image.options.user

终端用户唯一标识符,帮助监控和检测滥用。

-

连接属性参数

参数前缀是spring.ai.openai,让您连接到 OpenAI。

参数

描述

默认值

spring.ai.openai.base-url

连接到的 URL

api.openai.com

spring.ai.openai.api-key

The API Key

-

重试参数

参数前缀 spring.ai.retry,让您为 OpenAI Image 客户端配置重试机制。

已经为您重新整理了表格,使其更加直观:

参数

描述

默认值

spring.ai.retry.max-attempts

最大重试次数。

10

spring.ai.retry.backoff.initial-interval

指数退避策略的初始等待时间。

2 sec.

spring.ai.retry.backoff.multiplier

退避间隔的乘数,用于计算后续重试的等待时间。

5

spring.ai.retry.backoff.max-interval

重试期间的最大等待时间。

3 min.

spring.ai.retry.on-client-errors

控制是否对 4xx 客户端错误进行重试。如果为false,遇到此类错误时不重试并抛出异常。

false

spring.ai.retry.exclude-on-http-codes

不触发重试的特定 HTTP 状态码列表。

empty

代码调用

OpenAiImageOptions 提供了模型配置,例如要使用的模型、质量、大小等,在运行时,您可以通过向 ImagePrompt 添加新的、特定于请求的选项参数来覆盖默认选项参数。例如,要覆盖 OpenAI 的特定选项参数,如质量和要创建的图像数量,请使用以下代码示例:

代码语言:javascript
复制
ImageResponse response = openaiImageClient.call(
        new ImagePrompt("A light cream colored mini golden doodle",
        OpenAiImageOptions.builder()
                .withQuality("hd") // 设置品质
                .withN(4) // 要生成的图像数量
                .withHeight(1024)
                .withWidth(1024).build())
);

 除了特定于模型的 OpenAiImageOptions ,您还可以使用一个可移植的 ImageOptions 实例,使用 ImageOptionsBuilder#builder() 创建。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-10-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Open AI生成对话
    • 连接属性参数
      • 对话参数
        • 重试参数
        • Open AI 生成图像
          • 图像生成属性参数
            • 连接属性参数
              • 重试参数
                • 代码调用
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档