本文较长,建议点赞收藏。更多AI大模型应用开发学习视频及资料,在智泊AI。

1.LangChain概述
❝
LangChain是 2022年10月 ,由哈佛大学的 Harrison Chase (哈里森·蔡斯)发起研发的一个开源框架,用于开发由大语言模型(LLMs)驱动的应用程序。
比如,搭建"智能体"(Agent)、问答系统(QA)、对话机器人、文档搜索系统、企业私有知识库等。
常用的LLM开发框架
| 开发语言 | 开发框架 | stars数量 | 推荐指数 |
|---|---|---|---|
| Python | LangChain | 112k | ⭐⭐⭐⭐⭐ |
| Python | LlamaIndex | 43.3k | ⭐⭐⭐⭐ |
| Java | LangChain4J | 8.5k | ⭐⭐⭐ |
| Java | SpringAl | 6.2k | ⭐⭐ |
| Java | SpringAl Alibaba | 5.0k | ⭐⭐ |
| C# | SemanticKernel | 25.5k | ⭐⭐⭐ |
LangChain:这些工具里出现最早、最成熟的,适合复杂任务分解和单智能体应用LlamaIndex :专注于高效的索引和检索,适合 RAG 场景。(注意不是Meta开发的)LangChain4J:LangChain还出了Java、JavaScript(LangChain.js)两个语言的版本,LangChain4j的功能略少于LangChain,但是主要的核心功能都是有的- SpringAI/SpringAI Alibaba :有待进一步成熟,此外只是简单的对于一些接口进行了封装
- SemanticKernel :也称为sk,微软推出的,对于C#同学来说,那就是5颗星
基于RAG架构开发(Retrieval-Augmented Generation)
- RAG:全称Retrieval-Augmented Generation(检索增强生成)
- 作用:为大模型提供"知识库",通过处理将数据存储到
向量存储中,大模型根据用户输入,在向量存储中匹配需要的数据,并根据数据进行回答
RAG架构图

类似结构图:

基于Agent架构开发
对比RAG,Agent更加依赖LLM的推理决策能力,通过增加规划、记忆和工具调用的能力,构造一个能够独立思考、逐步完成给定目标的智能体。
❝
举例
目前市面上比较火的AI编辑插件:
cline本质上也是一个Agent
- cline 是一款 Visual Studio Code 的开源 AI 编程辅助插件。
- 它能够利用模型、工具和指令这三个构建模块自主生成代码,还可在获得用户许可后创建和编辑文件、运行命令、使用浏览器等,独立完成复杂的软件开发任务,符合智能体的定义。
Agent架构图
一个个数学公式来表示:
❝
Tips
Agent和RAG不是冲突的,两个架构往往可以结合使用,实现1+1>2的效果
大模型应用开发的4个场景
场景1:纯Prompt
- Prompt是操作大模型的唯一接口
- 当人看:你说一句,ta回一句,你再说一句,ta再回一句...

场景2:Agent + Function Calling
- Agent:AI 主动提要求
- Function Calling:需要对接外部系统时,AI 要求执行某个函数
- 当人看:你问 ta「我明天去杭州出差,要带伞吗?」,ta 让你先看天气预报,你看了告诉ta,ta再告诉你要不要带伞

场景3:RAG (Retrieval-Augmented Generation)
RAG:需要补充领域知识时使用
- Embeddings:把文字转换为更易于相似度计算的编码。这种编码叫向量
- 向量数据库:把向量存起来,方便查找
- 向量搜索:根据输入向量,找到最相似的向量
举例:考试答题时,到书上找相关内容,再结合题目组成答案

RAG在智能客服中用的最广泛。
### 场景4:Fine-tuning(精调/微调)
举例:努力学习考试内容,长期记住,活学活用。

特点:成本最高;在前面的方式解决不了问题的情况下,再使用。

核心组件
- Model I/O模块:使用最多,也最简单
- Chains 模块: 最重要的模块
- Retrieval模块、Agents模块:大模型的主要落地场景
- 在这个基础上,其它组件要么是它们的辅助,要么只是完成常规应用程序的任务。
- 辅助:⽐如,向量数据库的分块和嵌⼊,⽤于追踪、观测的Callbacks任务:⽐如,Tools,Memory

学习资源推荐
如果你想更深入地学习大模型,以下是一些非常有价值的学习资源,这些资源将帮助你从不同角度学习大模型,提升你的实践能力。
本文较长,建议点赞收藏。更多AI大模型应用开发学习视频及资料,在智泊AI。