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

Spring-AI简单实践

目录

1. Spring-AI是什么

2. Spring-AI架构

3. spring-AI项目实践

3.1 Spring-AI Ailibaba是什么

3.2 引入依赖和配置

3.2 Spring-AI Ailibaba创建会话


1. Spring-AI是什么

Spring AI 项目由 Spring 官方开源并维护的 AI 应用开发框架,该项目目标是简化包含人工智能(AI)功能的应用程序的开发,避免不必要的复杂性。该项目从著名的 Python 项目(例如 LangChain 和 LlamaIndex)中汲取灵感,但 Spring AI 并非这些项目的直接移植,该项目的成立基于这样的信念:下一波生成式 AI 应用将不仅面向 Python 开发人员,还将遍及多种编程语言。从本质上讲,Spring AI 解决了 AI 集成的基本挑战:Connecting your enterprise Data and APIs with the AI Models。

2. Spring-AI架构

3. spring-AI项目实践

本文使用Spring-AI Alibaba,详细接入文档:Spring AI Alibaba 概述-阿里云Spring AI Alibaba官网官网

各大公司在Spring-AI的基础上都有一套快速开发AI应用的框架。

3.1 Spring-AI Ailibaba是什么

Spring AI Alibaba 开源项目基于 Spring AI 构建,是阿里云通义系列模型及服务在 Java AI 应用开发领域的最佳实践,提供高层次的 AI API 抽象与云原生基础设施集成方案,帮助开发者快速构建 AI 应用。

3.2 引入依赖和配置

配置大模型:application.yml

spring:application:name: SpringAI-Demo
#AI配置ai:ollama:    #AI提供商,也可以是openaibase-url: http://localhost:11434   #如果是远程第三方服务方,需要申请和填写api-keychat:model: deepseek-r1:1.6b

如果使用阿里的大模型接口,需要配置dashscope

spring.ai.dashscope.api-key=${AI_DASHSCOPE_API_KEY}
spring.ai.dashscope.chat.options.model=qwen-max

引入依赖

<dependency><groupId>com.alibaba.cloud.ai</groupId><artifactId>spring-ai-alibaba-starter</artifactId><version>1.0.0-M5.1</version>
</dependency>
<dependency>  <groupId>org.springframework.ai</groupId>  <artifactId>spring-ai-starter-model-ollama</artifactId>
</dependency>

若使用阿里的模型接口

<dependency><groupId>com.alibaba.cloud.ai</groupId><artifactId>spring-ai-alibaba-starter-dashscope</artifactId>
</dependency>

3.2 Spring-AI Ailibaba创建会话

创建chatClient,设置默认参数

chatClient是面向对话式AI模型的客户端接口,提供API与AI会话模型交互,该接口封装了请求构建、调用、响应处理等流程,支持同步、流式调用。

public ChatClient chatClient(String userInput) {//此处设置的都是默认参数,可在自己的智能体中覆盖掉return chatClient.defaultSystem()                .defaultAdvisors(new VectorStoreChatMemoryAdvisor(vectorStore)), //Chat Memorynew QuestionAnswerAdvisor(vectorStore), // RAGnew SimpleLoggerAdvisor(),//日志)                .call()          //调用大模型      .content();        //输出字符串结果}

注意:chatClient是单例,如果引入ollama模型调用商,就不能引入其它的例如openai

http://www.dtcms.com/a/399942.html

相关文章:

  • [优选算法专题三二分查找——NO.18在排序数组中查找元素的第一个和最后一个位置]
  • 智能化住宅防盗报警系统设计(论文+源码)
  • 58同城网站建设案例购买网域名的网站好
  • 创意合肥网站建设网站后台ftp账户
  • 配置文件空密码与明文密码修复方案
  • 对网站开发的理解js做网站登录界面
  • 统计二级域名的网站流量有什么用龙岗公司网站
  • vivado进行zynq开发问题总结
  • 大气金融网站peise网站
  • 计算机网站建设职业群wordpress 批量修改字体
  • 湖南省金力电力建设有限公司 网站亚太建设科技信息研究院网站
  • 北京网站建设培训网站建设先进个人材料
  • 【 GUI自动化测试】GUI自动化测试(一) 环境安装与测试
  • 如何将ISO20000的SLA与服务器响应时间有效结合?
  • 贺福建舰电磁弹射上线
  • wordpress网站分享到朋友圈小项目加盟
  • 牛客:多项式输出
  • 构建一个支撑10万设备的虚拟电厂IoT平台
  • Linux 中,`pip install`与 `apt install`
  • 宁波优质网站制作哪家好晋中市科技馆网站建设
  • SPA中篇【德国篇】钢铁齿轮与数字神经:跨国汽配巨头SPA并购整合攻坚记
  • 十大拿货网站注册app短信验证码平台
  • 山东莱州市建设局网站广西住房城乡建设厅
  • 企业网站构建方案大数据营销系统软件
  • Mysql(二十二)——InnoDB页结构
  • 亮数据|智能IDE与爬虫MCP实战
  • 网站开发的前端到底是什么建设项目一次公示网站
  • 动态做网站丰台新乡网站建设
  • 建设企业网站服务器电商网站建设制作
  • Linux安全 | 防火墙工具 iptables 详解