LangChain学习心得总结

大模型开发遇到的问题及langchain框架学习

背景:

1、微场景间跳转问题,无法实现微场景随意穿插

2、大模型幻读(推荐不存在的产品、自己发挥)

3、知识库检索,语义匹配效果较差,匹配出的结果和客户表述的语义有差异

4、场景外话题防护(如作诗、编码、翻译、敏感信息、政治任务讨论等等)

5、多场景切换不支持

6、安全问题

7、管理平台PART 02

智能体

智能体,英文名是Agent, 称智能体、代理、代理人等。人工智能智能体简称AI

智能体,是一种能够感知环境、进行决策、执行动作、完成既定目标的智能实体。

大模型

大型语言模型简称大模型(llm),是基于海量文本数据训练的深度学习模型。通过

prompt指令,通过输入客户聊天上下文,大模型理解文本含义,按照一定的思维链反馈

知识库

有时候搜索的内容,当大模型中不存在相应的知识,通过知识库里面的内容弥补,

避免大模型幻觉。

Agent 设计模式

1)Reflection:让 Agent 审视和修正自己生成的输出;

2)Tool Use:LLM 生成代码、调用 API 等进行实际操作;

3)Planning:让 Agent 分解复杂任务并按计划执行;

4)Multiagent Collaboration:多个 Agent 扮演不同角色合作完成任务;请在此处添加具体

智能体设计模式-反思模式

image.png

智能体设计模式-使用工具

image.png 智能体设计模式-规划

image.png

智能体设计模式-多智能体-路由委派

image.png

langchain

LangChain是一个开源框架,用于构建大型语言模型(LLM)应用程序。

• 具有上下文感知能力:将语言模型连接到上下文来源(提示指令,少量的示例,需要回应的内容等)

• 具有推理能力:依赖语言模型进行推理(根据提供的上下文如何回答,采取什么行动等)

它通过提供模块化组件简化了开发流程。

langchain的版本迭代

初始版本:2022年10月

稳定版本 0.1.0:2024年1月8日发布

最新稳定版本:0.1.17:2024年5月1日发布这是一个较新的版本langchain框架

LangChain 库

包含了各种组件的接口和集成,一个基本的运行时,用于将这些组件组合成链和代理

LangServe

一个用于将 LangChain 链部署为 REST API 的库。

LangSmith

一个开发者平台,让你可以调试、测试、评估和监控基于任何 LLM 框架构建的链,并且与 LangChain

无缝集成。

langgraph(构建工作流)

基于LangChain 的多智能体运行框架,这个框架的主要目的是帮助用户更方便地构建有环图,从而

在有状态的多角色应用程序中实现更复杂的逻辑

lagnchain核心组件

Models:与语言模型进行交互

• LLMs(文本补全功能): 输入一个文本字符串并返回一个文本字符串的模型

• 聊天模型: 由语言模型支持的模型,接受一个聊天消息列表作为输入并返回一个聊天消息

Prompts:提示词工程

Memory:内存记忆

Chains:构建调用链

Agents:代理,执行复杂任务

Rag检索增强:文本嵌入模型、向量存储、文档加载器和转换器、检索(向量+关键字)

回调函数:记录和传输任何链的中间步骤

prompt = ChatPromptTemplate.from_template("tell me a short joke about {topic}")model = ChatOpenAI(model="gpt-4")chain = prompt | model.bind_tools(tools=[search]) | StrOutputParser()chain.invoke({"topic": "ice cream"})

LangSmith 无侵入流程调用监控

image.png

image.png

开发实践

基于工具的智能体

image.png

image.png

基于路由代理的多智能体

image.png

image.png

基于多级路由代理的多智能体

image.png

使用总结

使用框架优点:

• 简化开发流程,提高开发效率

• 提高项目可拓展性

• 能够实现多代理工作流编排

• 可观测性和调试

缺点:

• 框架还未成熟,模型支持力度不同。

• 学习成本

• 框架封装后,隐藏了很多细节,业务设计要求高

在这里插入图片描述

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Linux基础(十二)——文件与文件系统的压缩、打包和备份

文件与文件系统的压缩、打包和备份 1.压缩1.1 压缩方法及其后缀1.2 gzip1.3 bzip21.4 xz 2.打包3.XFS文件系统备份与还原4.镜像文件创建(mkisofs) 1.压缩 1.1 压缩方法及其后缀 我们知道在 Linux 下面的扩展名是没有什么很特殊的意义的, 不…

简简单单的UDP

前言 上一篇了解了TCP的三次握手过程,目的、以及如何保证可靠性、序列号与ACK的作用,最后离开的时候四次挥手的内容,这还只是TCP内容中的冰山一角,是不是觉得TCP这个协议非常复杂,这一篇我们来了解下传输层另外一个协…

MLMs之OmniGen:OmniGen(统一图像生成模型)的简介、安装和使用方法、案例应用之详细攻略

MLMs之OmniGen:OmniGen(统一图像生成模型)的简介、安装和使用方法、案例应用之详细攻略 导读:这篇论文介绍了OmniGen,一个用于统一图像生成的扩散模型。论文的核心要点可以总结如下: >> 背景痛点: ● 图像生成领…

LeetCode 143.重排链表

题目: 给定一个单链表 L 的头节点 head ,单链表 L 表示为: L0 → L1 → … → Ln - 1 → Ln请将其重新排列后变为: L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值,而是需要实际…

Linux进程信号(信号的产生)

目录 什么是信号? 信号的产生 信号产生方式1:键盘 前台进程 后台进程 查看信号 signal系统调用 案例 理解进程记录信号 软件层面 硬件层面 信号产生方式2:指令 信号产生方式3:系统调用 kill系统调用 案例 其他产生信号的函数调用 1.rais…

【C++】STL— stack的常见用法和模拟实现

目录 1、stack的介绍 2、stack的使用 构造一个空栈 stack的简单接口应用 3、stack的模拟实现 4、栈的相关题目 4.1 最小栈 4.1.2思路 4.1.3 实现代码 4.2 栈的压入、弹出序列 4.2.2 思路 4.2.3程序实现 1、stack的介绍 在C中,stack是一种标准模板库&am…

神书《从零构建大模型》分享,尚未发布,GitHub标星22k!!

《从零构建大模型》是一本即将于今年10月底发布的书籍,github已经吸引了惊人的21.7k标星!作者是威斯康星大学麦迪逊分校的终身教授,在GitHub、油管、X上拥有大量粉丝,是一位真正的大佬。 本书免费获取地址 在本书中&#xff0…

【深度学习目标检测|YOLO算法2】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性能优化与行业应用全解析...

【深度学习目标检测|YOLO算法2】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性能优化与行业应用全解析… 【深度学习目标检测|YOLO算法2】YOLO家族进化史:从YOLOv1到YOLOv11的架构创新、性能优化与行业应用全解析… 文章目录 【深度学习目标检测|YOL…

动态避障-图扑自动寻路 3D 可视化

自动寻路是机器人导航的核心技术,其原理主要涉及机器人与环境之间的复杂信息交互与处理。在自动寻路过程中,机器人依靠先进的传感器系统,如高清摄像头、精密激光雷达和灵敏超声波装置,全方位感知周围环境。这些传感器能够实时捕捉…

Docker 镜像拉不动?自建 Docker Hub 加速站 解决镜像拉取失败

本文首发于只抄博客,欢迎点击原文链接了解更多内容。 前言 众所周知,6 月份的时候,Docker Hub 的镜像就已经无法正常拉取,那会随手用 Nginx 反代了一下 Docker Hub,建了个自用的镜像站,一直用到了 9 月份&…

RabbitMQ集群搭建

RabbitMQ集群搭建 1、RabbitMQ集群1.1、默认集群模式1.1.1、为什么集群不复制队列内容和状态到所有节点? 1.2、镜像集群模式 2、默认集群模式安装前准备2.1、准备3台机器2.2、启动三台机器2.3、使用xshell 连接三台机器2.4、服务器安装erlang和RabbitMQ2.5、修改三台机器的/et…

mysql-springboot netty-flink-kafka-spark(paimon)-minio

1、下载spark源码并编译 mkdir -p /home/bigdata && cd /home/bigdata wget https://archive.apache.org/dist/spark/spark-3.4.3/spark-3.4.3.tgz 解压文件 tar -zxf spark-3.4.3.tgz cd spark-3.4.3 wget https://raw.githubusercontent.com/apache/incubator-celeb…

系统安全第七次作业题目及答案

一、 1.RBAC0 RBAC1 RBAC2 RBAC3 2.属性 身份标识 3.接入访问控制 资源访问控制 网络端口和节点的访问控制 二、 1.B 2.A 3.ABE 4.BCD 5.ABC 三、 1. 答:基于属性的访问控制(ABAC)是通过对实体属性添加约束策略的方式实现主、客体之…

【GESP】C++一级真题练习(202312)luogu-B3922,小杨报数

GESP一级真题练习。为2023年12月一级认证真题。for循环和取余计算应用。 题目题解详见:https://www.coderli.com/gesp-1-luogu-b3922/ 【GESP】C一级真题练习(202312)luogu-B3922,小杨报数 | OneCoderGESP一级真题练习。为2023年12月一级认证真题。for…

国科大现代信息检索技术第一次作业

第一次作业 题目1:考虑以下文档 文档名内容文档1new home sales top forecasts文档2home prices rise in june文档3increase in home sales in june文档4july new home sales rise 1、画出文档集对应的词项-文档矩阵 文档1文档2文档3文档4forecasts1000home1111…

计算机视觉实验四:特征检测与匹配

特征检测与匹配 1 角点检测算法实验 1.1 实验目的与要求 (1)了解及掌握角点检测算法原理。 (2)掌握在MATLAB中角点算法的编程。 (3)掌握Moravec,Harris与SUSAN算法的差异。 1.2 实验原理及…

十八:Spring Boot 依赖(3)-- spring-boot-starter-data-jpa 依赖详解

目录 1. 理解 JPA(Java Persistence API) 1.1 什么是 JPA? 1.2 JPA 与 Hibernate 的关系 1.3 JPA 的基本注解:Entity, Table, Id, GeneratedValue 1.4 JPA 与数据库表的映射 2. Spring Data JPA 概述 2.1 什么是 Spring Dat…

如何用C++代码实现一颗闪烁的爱心?

要用 C 实现爱心闪烁效果,我们可以使用控制台输出文本,并通过在控制台中刷新屏幕来模拟闪烁的效果。由于 C 本身没有类似 turtle 这样的图形库,操作控制台输出的方式比较简单,主要通过字符绘制和时间延迟来实现。 这里给出一个基…

基于美颜SDK的实时视频美颜平台开发:技术难点与解决方案

美颜SDK作为视频美颜平台的核心,提供了多种美颜功能。这些功能通过调整参数实现对人脸特征的优化。在架构设计上,美颜SDK主要包括以下几部分: 1.人脸检测与特征点识别:通过深度学习模型,识别人脸并标记出关键特征点&a…

web实操4——servlet体系结构

servlet体系结构 我们基本都只实现service方法,其余几个都不用, 之前我们直接实现servlet接口,所有的方法都必须实现,不用也得写,不然报错,写了又不用当摆设。 能不能只要定义一个service方法就可以&…