Spring AI

Spring AI

image-20250403165707735

image-20250223113222487

image-20240605224347123

  1. RAG

历史数据增强

  1. fine-tuning

垂直领域针对性训练回答方式

  1. function-call

大模型无法查询实时数据,需要后端处理生成

AI平台架构

image-20240920154903079

image-20250403113653149

LLM微调工具

该项目是用于微调和优化大型语言模型(LLM)的 Python 工具库。它通过动态量化和显存优化技术,提高了模型微调速度,同时将显存占用降低 70%-80%,并支持多种硬件配置、LLM、超长上下文任务等功能。除此之外,还提供了可直接在线体验的 Jupyter Notebook 示例,降低了大模型微调的门槛。

AI应用开发架构

image-20250403165959016

AI关键字

多模态、智能体、知识蒸馏、AIGC

多模态

接收多种训练材料从而高度提升感知能力

多模态学习(Multimodal Learning)是一种利用来自不同感官或交互方式的数据进行学习的方法,这些数据模态可能包括文本、图像、音频、视频等。多模态学习通过融合多种数据模态来训练模型,从而提高模型的感知与理解能力,实现跨模态的信息交互与融合。

智能体

根据某一特定的场景而训练出来的,自主决策并采取行动以实现特定目标的智能实体。

苏宁灵思大模型已广泛应用于企业管理、供应链管理、运营及导购等领域

在企业管理中,灵思大模型通过智能化赋能,提升了门店导购培训、员工效率及消费者服务体验。在供应链管理中,灵思大模型构建了智能预测补货系统供应商智能助手审核系统,优化了供应链结构,降低了运营成本。在运营方面,灵思大模型通过AIGC内容生成能力,提升了全渠道流量获取分发效率。在导购方面,灵思大模型的引导式问答能力提升了消费者的购物体验和复购率。

知识蒸馏

知识蒸馏是一种在深度学习中用于模型压缩和知识传递的技术。它通过将大型复杂模型(教师模型)的知识转移给小型简单模型(学生模型),从而优化学生模型的性能。

95ae6c0fec6d46b0ae8d5d2eb401d9ce

这种方法被广泛应用于降低模型复杂性和减少计算资源需求。知识蒸馏是通过将教师模型的输出概率分布传递给学生模型,并使用软标签作为学生模型的训练目标来实现的。蒸馏可以通过最小化软标签和学生模型输出之间的交叉熵损失来优化。这种方法已经在各种任务和数据集上取得了显著的成功,包括图像分类、自然语言处理语音识别

知识蒸馏面临的挑战主要可以分为:模型问题包括教师模型和学生模型不匹配、深层模型和浅层模型之间的容量差距等;成本问题包括模型训练过程对超参数较为敏感以及对损失函数依赖较大等;可解释性不足则是指知识蒸馏的原理解释主要是基于黑盒模型,难以解释模型的决策过程和内部机制。

AIGC

AIGC(AI-Generated Content,AI生成内容)是指基于生成对抗网络(GAN)、大型预训练模型等人工智能技术的方法,通过对已有数据进行学习和模式识别,以适当的泛化能力生成相关内容的技术。类似的概念还包括合成式媒体(Synthetic media),它主要指基于人工智能生成的文字、图像、音频等媒体内容。

工作原理

https://www.bilibili.com/video/BV1MtZnYtEB3?spm_id_from=333.788.player.switch&vd_source=70a5c913e74574ad96afc2ae210ba3e0&p=2

RAG

大模型学习文档内容

与其功能类似的还有:知识图谱

image-20250223112320196

RAG通过学习过的文档数据库提取出问题的部分答案(context),将其与用户的问题一并发给大语言模型。大语言模型就会遵循context来规范输出的答案,避免幻觉的产生。回答也会参考文档向量数据库的内容

相当于把答案告诉AI,让他做开卷考试

缺点:

  • 检索精度不高:基于相似度会检索出无关内容,大模型仅仅只有总结的作用
  • 多轮检索能力弱
  • 缺乏大局观

image-20250223112508562

优化思路

索引层面

  • 拆分更小的chunks:检索时避免检索出来更多无关内容,减少幻觉;缺点是检索速度较慢√

image-20250429112205962

  • chunks存储在向量库之前对其基于LLM生成answer同时附加在chunks;存储过程中增加了token成本 √

    这样减少了因为问题模糊带来的匹配失效问题,提高匹配精度

image-20250429112128151

  • chunks的摘要进行向量存储:避免文本块多余信息用户提问中其他无关细节的影响;缺点是减少了文本块细节

image-20250429112517877

Ollama部署Deepseek

  1. 下载ollama

如何加速下载?

1
curl -fsSL https://ollama.com/install.sh | sh
  1. 下载Deepseek并启动
1
ollama run deepseek-r1:1.5b

Ollama指令

https://www.runoob.com/ollama/ollama-commands.html

Ragflow

启动ragflow

1
cd /usr/code/ragflow/docker
1
docker compose -f docker-compose.yml up -d

停止

1
docker compose -f docker/docker-compose.yml down -v

https://zhuanlan.zhihu.com/p/18597188854

https://github.com/infiniflow/ragflow/blob/main/README_zh.md

1
http://10.152.201.14:11434
1
deepseek-r1:1.5b

maxkb

https://www.bilibili.com/video/BV1gAmHYMEHb/?vd_source=70a5c913e74574ad96afc2ae210ba3e0&spm_id_from=333.788.videopod.sections

  1. 下载/启动
1
docker run -d --name=maxkb --restart=always -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb
1
2
用户名:admin
默认密码:MaxKB@123..

微调

image-20250226102442637

MCP

[视频讲解]

将AI模型公共的Tools抽取出来单独做个服务

这里面的Tools其实是AI应用获取垂直领域/自己的服务接口的能力的工具,简单理解来说就是使AI获取除自身模型以外的知识内容

image-20250323104921285