当前位置: 首页 > wzjs >正文

做任务什么网站硬件开发是什么专业

做任务什么网站,硬件开发是什么专业,太原网站建设总部地址,西湖专业网站设计公司Spring AI 前两天(4.10 日)更新了 1.0.0-M7 版本后,原来的 SimpleVectorStore 内存级别的向量数据库就不能用了,Spring AI 将其全部源码删除了。 此时我们就需要一种成本更低的解决方案来解决这个问题,如何解决呢&…

Spring AI 前两天(4.10 日)更新了 1.0.0-M7 版本后,原来的 SimpleVectorStore 内存级别的向量数据库就不能用了,Spring AI 将其全部源码删除了。

此时我们就需要一种成本更低的解决方案来解决这个问题,如何解决呢?我们一起来看。

解决方案:Redis 向量数据库

虽然 SimpleVectorStore 不支持了,但 Spring AI 内置了 Redis 或 ES 作为向量数据库的分布式存储中间件,我们可以用他们来进行向量的存储。

而在这两种方案中,显然 Redis 使用成本更低,因此,我们来看如何将向量存储到 Redis 数据库中。

它的具体实现步骤如下。

安装Redis-Stack

  1. 下载 Docker Hub:https://www.docker.com/get-started/
  2. 安装 redis-stack-server:使用“docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server”。

添加依赖

我们使用阿里云百炼平台的嵌入模型 text-embedding-v3 是兼容 OpenAI 的 SDK 的,因此,我们需要添加 OpenAI 和 Redis Vector 依赖:

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-vector-store-redis</artifactId>
</dependency><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-openai</artifactId>
</dependency>

设置配置信息

配置 Redis 连接信息,以及嵌入模型的配置信息:

spring:data:redis:host: localhostport: 6379ai:vectorstore:redis:initialize-schema: trueindex-name: custom-indexprefix: custom-prefixopenai:api-key: ${ALIYUN-AK}embedding:options:model: text-embedding-v3

阿里云百炼平台支持的向量模型:

代码实现

Redis 添加向量数据

@Autowired
private VectorStore vectorStore;// 构建数据
List<Document> documents =
List.of(new Document("I like Spring Boot"),new Document("I love Java"));
// 添加到向量数据库
vectorStore.add(documents);

当然,向量数据的数据源可以是文件、图片、音频等资源,这里为了简单演示整体执行流程,使用了更简单直观的文本作为数据源。

VectorStore 提供的常用方法如下:

  • add(List documents) :添加文档。
  • delete(List idList) :按 ID 删除文档。
  • delete(Filter.Expression filterExpression) :按过滤表达式删除文档。
  • similaritySearch(String query) 和 similaritySearch(SearchRequest request) :相似性搜索。

执行结果如下:

查询向量数据

@RestController
@RequestMapping("/vector")
public class VectorController {@Resourceprivate VectorStore vectorStore;@RequestMapping("/find")public List find(@RequestParam String query) {// 构建搜索请求,设置查询文本和返回的文档数量SearchRequest request = SearchRequest.builder().query(query).topK(3).build();List<Document> result = vectorStore.similaritySearch(request);System.out.println(result);return result;}
}

执行结果如下:

从上述结果可以看出,和“java”相似度最高的向量为“I love Java”,相似度评分为 0.77,如果我们 SearchRequest 对象中的 topK 设置为 1 的话,只会查询“I love Java”这条数据,如下图所示:

本文已收录到我的技术小站 www.javacn.site,其中包含的内容有:Spring AI、并发编程、MySQL、Redis、Spring、Spring MVC、Spring Boot、Spring Cloud、MyBatis、JVM、设计模式、消息队列、场景题等模块。


文章转载自:

http://MQPhRvMF.knzhy.cn
http://1GuiUPce.knzhy.cn
http://Ix65Dutb.knzhy.cn
http://IGntfFL6.knzhy.cn
http://UDtQXE5G.knzhy.cn
http://62u23S9D.knzhy.cn
http://T0uvD39E.knzhy.cn
http://EHNoiNlC.knzhy.cn
http://ZlmEn5uD.knzhy.cn
http://8pNrVPQG.knzhy.cn
http://OiwDn7yJ.knzhy.cn
http://RSYSYjcJ.knzhy.cn
http://kKHWAVtA.knzhy.cn
http://kaF6NyIo.knzhy.cn
http://VeRUHuQ6.knzhy.cn
http://41VxQ2Dv.knzhy.cn
http://JT0AIQ1z.knzhy.cn
http://8wMQhHud.knzhy.cn
http://fcK6aoxo.knzhy.cn
http://DaZ1ZmaC.knzhy.cn
http://zbU4ocZT.knzhy.cn
http://HGlDccg2.knzhy.cn
http://JVSD4dik.knzhy.cn
http://YWf1lSzX.knzhy.cn
http://1d2HT5So.knzhy.cn
http://iZospzL1.knzhy.cn
http://1E92fbnd.knzhy.cn
http://5N7psfIC.knzhy.cn
http://eXfepnJH.knzhy.cn
http://H3gXEz6V.knzhy.cn
http://www.dtcms.com/wzjs/665358.html

相关文章:

  • 营销型企业网站 网络服务电商网站建设费用
  • 网站微信推广怎么做如何做好网站seo优化
  • 国际设计师网站有哪些wordpress定义
  • 电子网站建设ppt百度seo招聘
  • 网站开发三层架构的系统wordpress点击分享功能
  • 东莞注塑切水口东莞网站建设福田住房和建设局网站官网
  • 毕节城乡建设局网站查询优化服务公司
  • 省水利工程建设信息网站芯片设计公司
  • 视频网站开发周期网站开发语言太老
  • it 网站模板营销最好的方法
  • 网站建设公司需要具备什么做公司网站哪家 上海
  • 免费建站系统wordpress上海监理建设协会网站
  • 天津网站建设网站推广wordpress woocommerce 插件
  • 网站开发工作分解结构二建证从住房建设厅网站调出流程
  • 英文营销网站wordpress 4.5.4
  • 厦门网站设计多少钱优秀设计作品赏析
  • 杭州定制网站三门峡网站建设费用
  • 让别人做网站推广需要多少钱网站建设建材
  • 做app网站设计王烨妮
  • 网站开发凭证做什么科目seddog站长之家
  • 郑州商务网站建设电子商城建设
  • 网站网络优化外包工业设计专业就业方向
  • 广州网站建设好公司网站收录代做
  • 长春做网站电话wordpress字号修改
  • 阿里云网站建设初衷CC wordpress 攻击
  • 建设企业网站服务器站长之家关键词挖掘工具
  • 徐州手机网站定制公司哪家好wordpress 插件钩子
  • 好的宠物网站模板厦门建设银行官方网站
  • 东莞网站关键词优化公司卖建材的网站有哪些
  • h5网站制作平台中国钓鱼网站大全