SpringAI系列 - 基于Spring AI 1.0.0 的AI助手实现示例

目录

    • 一、基于 Spring AI 1.0.0 的AI助手实现示例
    • 二、AI助手架构设计
      • 2.1 系统范围与上下文 C1
      • 2.2 容器图 C2
      • 2.3 AI助手组件图 C3
    • 三、注意事项
    • 四、快速启动
    • 五、如何启用MCP

一、基于 Spring AI 1.0.0 的AI助手实现示例

结合前文系列的介绍,本专栏提供了一个基于Spring AI 1.0.0的AI助手实现供大家参考。

注:
该AI助手实现仅做简单的入门示例,实际使用时还需自行进行完善和扩展,
笔者也会不定期完善该AI助手示例。

在这里插入图片描述

该AI助手的核心功能包括:

  • 知识库管理(上传文档、训练文档)
  • 文件上传时设置元数据对(使用x-file-storage机制),在后续训练时将元数据写入VectorStore
  • RAG支持设置Filter(知识类型)过滤指定知识库
  • 支持新建会话、会话列表管理
  • 聊天支持设置相似度、历史记录数量等(chatConvId、chatHistoryCount、similarity、topK)
  • 支持MCP Client和MCP Server的集成

二、A

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

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

相关文章

电池预测 | 第33讲 Matlab基于CNN-LSTM-Attention的锂电池剩余寿命预测,附锂电池最新文章汇集

电池预测 | 第33讲 Matlab基于CNN-LSTM-Attention的锂电池剩余寿命预测,附锂电池最新文章汇集 目录电池预测 | 第33讲 Matlab基于CNN-LSTM-Attention的锂电池剩余寿命预测,附锂电池最新文章汇集预测效果基本描述程序设计参考资料源码地址: 电…

软考(软件设计师)数据库原理-SQL

一、SQL基本数据类型 SQL 数据类型速查表类别数据类型说明范围/示例适用场景整数类型INT / INTEGER标准整数类型-2 到 2-1 (-2,147,483,648 到 2,147,483,647)ID、年龄、数量等SMALLINT小范围整数-32,768 到 32,767小范围数值BIGINT大范围整数-2⁶ 到 2⁶-1大额订单号、时间戳T…

docker 安装数据集成平台 Apache SeaTunnel 服务

获取官方镜像 从 Docker Hub 上拉取最新的 Apache SeaTunnel 镜像: docker pull apache/seatunnel:latest创建目录 sudo mkdir -p /data/{conf,logs} # 需要 root 权限创建 /data 目录 sudo chown -R $USER:$USER /data # 将目录权限给当前用户(可选&a…

数据结构:数组:线性查找(Linear Search)

目录 什么是线性查找? 时间复杂度分析 🧠 线性查找的优化 方法一:Move to Front(哨兵) 方法二:Transportation(向前交换一步) 什么是线性查找? 我们先问&#xf…

石子入水波纹效果:UV扰动着色器实现

利用UV坐标扰动来模拟水面是一种常见且有效的技术手段,上述效果主要通过对水面纹理的UV坐标进行动态偏移或扰动,从而模拟水波的流动和波纹效果。资源下载具体实现和原理如下: 基本思路:通过对水面纹理的UV坐标加上时间相关的扰动函数(如正弦波、余弦波、噪声函数等),使纹…

Java Lambda 类型推断详解:filter() 方法与 Predicate<? super T>

一、问题核心解析1. 代码示例分析List<String> strings Arrays.asList("abc", "", "bc", "efg", "abcd","", "jkl"); List<String> filtered strings.stream().filter(string -> !str…

XSS:xss.haozi.me靶场练习

超链接:alert(1) 知识点: html <&#xff01;--被注释的内容--> <&#xff01;--被注释的内容!--> php /*被注释的内容*/ //被注释的内容 javascript /*被注释的内容*/ //被注释的内容 MySQL …

ubuntu 20.04 安装中文输入法 (sougou pin yin)

安装搜狗输入法包 参照官方指南完成 如果提示没有找到相关依赖&#xff0c;添加一下源&#xff1a; sudo add-apt-repository universe sudo apt update重启。

(DETR)End-to-End Object Detection with Transformers论文精读(逐段解析)

(DETR)End-to-End Object Detection with Transformers论文精读&#xff08;逐段解析&#xff09; 论文地址&#xff1a;https://arxiv.org/abs/2005.12872 CVPR 2020 Facebook AI 发布 Abstract. We present a new method that views object detection as a direct set pred…

[linux][shell]通过分析 Nginx 的访问日志,检测异常 IP 地址并使用iptables 将其封禁

这段脚本的作用是通过分析 Nginx 的访问日志&#xff0c;检测异常的 IP 地址&#xff0c;并使用 iptables 封禁这些 IP。#!/bin/bash# 配置变量 LOG_FILE"/usr/local/nginx/logs/access.log" THRESHOLD10 DROP_LOG_FILE"/tmp/drop_ip.log" DATE$(date &quo…

stm32cube ide如何将工具链替换成arm-none-eabi-gcc

在 STM32Cube IDE 中替换工具链为GNU Arm Embedded Toolchain (arm-none-eabi-gcc)&#xff0c;可按以下步骤操作&#xff1a; 1. 检查是否已安装工具链 首先确认系统中是否已安装 arm-none-eabi-gcc&#xff1a; Windows&#xff1a;检查环境变量 PATH 中是否包含工具链路径…

Linux 系统 /etc/ 配置

在Linux系统中&#xff0c;/etc/ 目录是系统配置文件的核心存放位置&#xff0c;包含了各种系统服务、应用程序和硬件的配置信息。以下是该目录下常见的重要配置文件和子目录&#xff1a; 核心系统配置文件 /etc/hostname 系统主机名配置&#xff0c;直接决定当前系统的名称。/…

【跟着PMP学习项目管理】项目管理 之 成本管理知识点

目录 一、估算成本 1、知识点汇总 2、输入 3、工具 4、输出 二、预算成本 1、知识点汇总 2、输入 3、工具 4、输出 三、控制成本 1、知识点汇总 2、输入 3、工具 4、输出 一、估算成本 1、知识点汇总 1) 估算工具的用法 2、输入 范围基准、人力资源计划、项…

TCP相关实验

目录 TCP相关实验 理解CLOSE_WAIT状态 理解​​​TIME_WAIT状态 解决TIME_WAIT状态引起的bind失败的方法 理解listen的第二个参数 ​编辑 使用Wireshark分析TCP通信流程 TCP与UDP TCP与UDP对比 用UDP实现可靠传输&#xff08;经典面试题&#xff09; TCP相关实验 理解…

Spring Boot项目初始化:官方与阿里云服务地址对比指南

服务提供商 官方&#xff08;start.spring.io Spring&#xff09; 官方提供的服务&#xff0c;由Pivotal&#xff08;VMware&#xff09;维护&#xff0c;是标准的初始化工具。 阿里云&#xff08;start.aliyun.com&#xff09; 阿里云提供的国内镜像服务&#xff0c;针对中国开…

创客匠人创始人IP案例:从个人品牌到企业增长的全链路拆解

认知破局&#xff1a;为什么创客匠人创始人IP能撬动企业增长&#xff1f;在知识付费工具竞争同质化的当下&#xff0c;创客匠人创始人老蒋以“IP变现领军人”的IP形象&#xff0c;为企业打开了差异化增长通道。当同行还在比拼“功能数量”时&#xff0c;老蒋通过《领导者请停止…

UVC(USB Video Class,USB 视频类)协议

UVC&#xff08;USB Video Class&#xff0c;USB 视频类&#xff09;协议并非专门仅用于相机&#xff0c;但其核心应用场景集中在视频采集设备&#xff0c;相机是最典型的代表。其适用设备除了常见的 USB 相机&#xff08;包括 webcam、工业相机、监控摄像头等&#xff09;&…

如何使用 eBPF 监控 Linux 内存情况:Linux 内存调优之 eBPF 内存监控分析

写在前面 博文内容整理自 《BPF Performance Tools》 书中 内存部分对书中提到BPF工具配合实际Demo进行说明,以及一些变体的输出涉及下面一些内存问题的 BPF 观测 Demo:为什么进程的物理内存占用(RSS)不停增长?哪些代码路径会导致缺页错误的发生,缺页错误来自哪些文件?大页的…

SQL 表结构转 Go、Java、TS 自定义实体类,支持自编模板

SQL 表结构一键转自定义模型&#xff0c;支持 Golang Template 自由编写&#xff01; 有没有想过 —— 一份 SQL 表结构&#xff0c;不止能转成 Java 实体类、Go struct&#xff0c;甚至可以&#xff1a; ✨ 一键生成 TypeScript 接口✨ 输出 Protobuf 定义文件✨ 输出任意你…

新型BERT勒索软件肆虐:多线程攻击同时针对Windows、Linux及ESXi系统

趋势科技安全分析师发现&#xff0c;一个代号为BERT&#xff08;内部追踪名Water Pombero&#xff09;的新型勒索软件组织正在亚洲、欧洲和美国展开多线程攻击。该组织主要针对医疗保健、科技和会展服务行业&#xff0c;其活动范围显示其正成为勒索软件生态中的新兴威胁力量。攻…