SpringAI你知道吗???

目前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连接到的 URLapi.openai.com
spring.ai.openai.api-keyThe 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 文件中:

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>

Gradle build.gradle 构建文件中。 

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连接到的 URLapi.openai.com
spring.ai.openai.api-keyThe 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 的特定选项参数,如质量和要创建的图像数量,请使用以下代码示例:

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() 创建。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/58589.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从0到1,用Rust轻松制作电子书

我之前简单提到过用 Rust 做电子书&#xff0c;今天分享下如何用Rust做电子书。制作电子书其实用途广泛&#xff0c;不仅可以用于技术文档&#xff08;对技术人来说非常方便&#xff09;&#xff0c;也可以制作用户手册、笔记、教程等&#xff0c;还可以应用于文学创作。 如果…

c++应用网络编程之十三Linux下的epoll模式应用

一、epoll的应用 epoll在实际场景的应用是非常多的&#xff0c;特别是开源的框架中&#xff0c;基本都支持这种用法。大家可以在网上轻松的得到各种形式的epoll的封装代码&#xff0c;但是一定要明白的是&#xff0c;这些代码哪些是利用了epoll的机制&#xff0c;哪些是上层多…

计算机毕业设计django+大模型租房推荐系统 租房可视化 租房大屏可视化 租房爬虫 spark 58同城租房爬虫 房源推荐系统

开题报告&#xff1a;《Django大模型租房推荐系统》 一、研究背景与意义 随着城市化进程的加快&#xff0c;房屋租赁市场日益繁荣。然而&#xff0c;传统的房屋租赁方式存在信息不对称、交易流程繁琐等问题&#xff0c;给租户和房主带来了诸多不便。因此&#xff0c;开发一套…

SAP-MM委外的异常处理

业务场景&#xff1a; 在公司创建委外订单时&#xff0c;BOM下层原材料维护为0.5&#xff0c;产成品为1&#xff0c;共计4行&#xff0c;3个物料&#xff0c;底层原材料都是同一个 物料&#xff0c;也就是总计2个原材料&#xff0c;产成品数量4个&#xff0c;三个物料编码。 …

网站安全,WAF网站保护暴力破解

雷池的核心功能 通过过滤和监控 Web 应用与互联网之间的 HTTP 流量&#xff0c;功能包括&#xff1a; SQL 注入保护&#xff1a;防止恶意 SQL 代码的注入&#xff0c;保护网站数据安全。跨站脚本攻击 (XSS)&#xff1a;阻止攻击者在用户浏览器中执行恶意脚本。暴力破解防护&a…

ubuntu进程相关操作

进程相关操作 1.查看进程top/htop top 命令输出解释 在 top 命令中&#xff0c;字段通常表示如下&#xff1a; USER&#xff1a;进程的所有者。PR&#xff1a;优先级。NI&#xff1a;nice 值&#xff08;优先级调整&#xff09;。VIRT&#xff1a;进程使用的虚拟内存总量。…

如何在算家云搭建LongWriter(长文创作)

一、 LongWriter 简介 在自然语言处理领域&#xff0c;随着对长文本处理需求的不断增加&#xff0c;能够高效生成长文本的语言模型变得至关重要。LongWriter 的推出正是为了打破传统语言模型在生成超长文本时的限制。LongWriter-glm4-9b 是基于glm-4-9b进行训练的&#xff0c;…

C语言串口接收GPS数据

要在C语言中接收GPS数据&#xff0c;需要使用串口通信来与GPS设备进行数据交互。一个简单的串口通信代码主要包含了以下几个部分&#xff1a; 1.标准库头文件 stdio.h&#xff1a;包含输入输出函数&#xff0c;如 printf string.h&#xff1a;包含字符串处理函数&#xff0c…

【天线&空中农业】蜜蜂检测系统源码&数据集全套:改进yolo11-ASF

改进yolo11-dysample等200全套创新点大全&#xff1a;蜜蜂检测系统源码&#xff06;数据集全套 1.图片效果展示 项目来源 人工智能促进会 2024.10.30 注意&#xff1a;由于项目一直在更新迭代&#xff0c;上面“1.图片效果展示”和“2.视频效果展示”展示的系统图片或者视频可…

NavVis LX系列产品典型应用—现有住宅装修改造-沪敖3D

现有住宅装修改造项目的 数据捕捉和测量技术 当Jay Ure着手翻新和美化自己的新家时&#xff0c;他敏锐地发现这是现场测试NavVis VLX的绝佳机会。 为了全面评估&#xff0c;他聘请了一位工程师&#xff0c;采用传统的全站仪技术进行地形测绘。之后&#xff0c;他用移动扫描设…

《云主机配置全攻略》

《云主机配置全攻略》 一、云主机配置的重要性二、配置云主机的关键要素&#xff08;一&#xff09;CPU 的选择&#xff08;二&#xff09;内存的考量&#xff08;三&#xff09;硬盘的抉择&#xff08;四&#xff09;带宽的确定&#xff08;五&#xff09;机房线路的考虑&…

点评项目-12-好友关注

好友关注主要有三个功能&#xff1a; 1.关注和取关 2.共同关注 3.关注推送 关注和取关 涉及到的表&#xff0c;中间表&#xff1a;tb_follow,是博主 User 和粉丝 User 的中间表 请求一&#xff0c;查询是否关注了该用户&#xff1a; 请求路径&#xff1a;follow/or/not/…

Android 在github网站下载项目:各种很慢怎么办?比如gradle下载慢;访问github慢;依赖下载慢

目录 访问github慢gradle下载慢依赖下载慢 前言 大家好&#xff0c;我是前期后期&#xff0c;在网上冲浪的一名程序员。 为什么要看这篇文章呢&#xff1f;问题是什么&#xff1f; 我们在Github上面看到一些好的项目的时候&#xff0c;想下载下来研究学习一下。但经常遇到各…

阿里面试:为什么MySQL不建议使用Delete删除数据?

MySQL有建议过不要使用他们家的DELETE吗&#xff1f;在MySQL 8.0的官方文档里没有找到不建议使用DELETE的文字。 DELETE VS NOT DELETE&#xff0c;这是由来已久的问题 时间回到2009的8月30号。大佬Ayende Rahien——也被称为Oren Eini&#xff0c;Hibernating Rhinos公司的C…

机器学习中的嵌入是什么?

一、说明 嵌入是真实世界对象的数字表示&#xff0c;机器学习&#xff08;ML&#xff09;和人工智能&#xff08;AI&#xff09;系统利用它来像人类一样理解复杂的知识领域。例如&#xff0c;计算算法了解 2 和 3 之间的差为 1&#xff0c;这表明与 2 和 100 相比&#xff0c;2…

Python | Leetcode Python题解之第517题超级洗衣机

题目&#xff1a; 题解&#xff1a; class Solution:def findMinMoves(self, machines: List[int]) -> int:tot sum(machines)n len(machines)if tot % n:return -1avg tot // nans, s 0, 0for num in machines:num - avgs numans max(ans, abs(s), num)return ans

数学建模学习(131):使用Python基于VIKOR算法的多准则决策分析

文章目录 引言VIKOR算法原理与步骤 2.1 VIKOR背景与适用性2.2 VIKOR算法的详细步骤解析与数学模型案例背景与应用场景数据说明

[Chrome插件开发]关于报错Service worker registration failed. Status code: 15

manifest.json中不能使用ts&#xff1a; "background": {"service_worker": "background.ts"}只能使用js "background": {"service_worker": "background.js"}在vite.config.js中增加以下配置&#xff0c;可以将…

若依框架部署到服务器后头像资源访问404

排错过程 第一开始以为是代理出问题了 官网给出的解决方案 第一种是用代理后端接口&#xff0c;第二种是重写路径直接访问静态文件 接口通过捕获profile开头的路径/profile/avatar…&#xff0c;转为/home…/avatar找到我们在该路径下的文件 但是我想了一下&#xff0c;我ngin…

《手写Spring渐进式源码实践》实践笔记(第十二章 aop融入bean生命周期)

提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 第十二章 将AOP融入Bean生命周期背景目标设计实现代码结构类图实现步骤 测试事先准备自定义拦截方法Spring.xml 配置AOP测试用例测试结果&#xff1a; 总结 第十二章…