自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 如何使用词嵌入模型

本文介绍了词嵌入模型的使用方法,包括其作用(将文本转换为向量)及应用场景(语言模型训练和文本检索)。文章提供了安装依赖的指令,并演示了如何加载模型、编码文本、计算相似度得分以及进行分词处理。此外,还展示了如何获取词库大小、解码文本、转换token列表等操作。通过FlagEmbedding和SentenceTransformers库,用户可以方便地实现文本向量化处理,适用于自然语言处理任务。

2025-09-16 19:17:12 234

原创 NLLLoss为什么一个是一个softmax的值,但是target却是索引值,这是怎么计算的?

NLLLoss计算过程摘要:模型输出logits经过softmax得到概率分布,target索引指定正确类别位置。NLLLoss只取正确类别对应的概率值计算负对数损失(如target=0则取p[0])。对于batch数据,先逐样本计算−log(p[target])再求平均。其核心思想是通过索引定位概率向量中的正确项,忽略其他无关概率值,最终反映模型预测与真实标签的差异程度(约150字)

2025-09-16 18:43:41 317

原创 word2vec

Word2Vec是一种将词语转换为向量的浅层神经网络方法。它通过构建一个词表大小V×词向量维度D的嵌入矩阵(如800×1000),将输入词索引(如长度为5)转换为对应的词向量。模型采用CBOW架构:输入词向量求平均后经过全连接层和LogSoftmax输出,通过NLLLoss计算目标词损失并反向传播更新参数。具体实现包括嵌入层、线性变换和激活函数,训练完成后可直接使用嵌入层获取词向量表示。该方法能有效捕捉词语间的语义关系。

2025-09-16 18:40:21 382

原创 LangGraph教程(四):智能客服项目示例(流程+完整代码)

本文介绍了一个基于LangGraph的智能客服工作流实现。该工作流通过意图识别将用户问题分类到不同处理分支,包括常规问答、专业领域RAG检索、人工转接和拒绝回答等流程。文章详细展示了项目结构,包含状态定义、工具函数、节点操作和图构建模块,并提供了测试运行结果。整个系统采用模块化设计,将业务逻辑拆解为独立节点,通过条件边连接形成可扩展的工作流,便于后续添加新功能或替换具体实现(如真实RAG检索)。这种设计使复杂的对话路由逻辑变得清晰直观,显著提升了系统的可维护性和扩展性。

2025-09-11 13:09:43 1224

原创 循环神经网络(五):LSTM(长短期记忆网络)

LSTM(长短期记忆网络)是RNN的改进版本,通过门控机制解决长期依赖问题。其核心结构包括细胞状态(长期记忆)和隐藏状态(短期记忆),通过三个门(遗忘门、输入门、输出门)控制信息流动。遗忘门决定丢弃哪些历史信息,输入门筛选新信息,输出门生成当前输出。LSTM变体包括窥视孔连接、耦合门结构和简化的GRU。代码实现展示了LSTM单元的前向计算过程,包含线性变换和门控操作。相比标准RNN,LSTM能更有效地处理长序列数据,在复杂时序任务中表现优异。

2025-09-11 06:00:00 1353

原创 循环神经网络(四):GRU

GRU(门控循环单元)是一种改进的循环神经网络,通过更新门和重置门机制有效解决了传统RNN的梯度问题。图中详细展示了GRU的计算流程:1)更新门计算zt;2)重置门计算rt(使用不同权重);3)候选隐藏状态ht`的计算;4)最终隐藏状态ht的加权更新。这种门控机制实现了选择性记忆和梯度管理,在保持结构简洁的同时提升了长序列处理能力。文章还提供了基于PyTorch的GRU实现代码,包括GRUCell和GRU模块的具体实现方法,展示了前向传播过程中各状态的计算步骤。

2025-09-10 14:11:29 642

原创 循环神经网络(三):小练习

这篇技术文章介绍了如何使用PyTorch的RNN模块实现一个简单的序列预测任务。主要内容包括:1) 准备数据集,将"吃 了 没 ?"四个字进行one-hot编码;2) 构建RNN模型,包含64维隐层和全连接层;3) 训练过程,使用交叉熵损失函数和SGD优化器;4) 验证模型预测结果。文章提供了完整的代码实现,演示了如何将输入序列"吃 了 没"映射到输出序列"了 没 ?"。

2025-09-10 10:11:41 177

原创 循环神经网络(二):多种结构的RNN

本文介绍了四种循环神经网络(RNN)结构及其PyTorch实现:1)一对一RNN,单个输入对应单个输出;2)一对多RNN,通过设置最大循环次数和结束标记控制输出序列长度;3)多对一RNN,处理序列输入后输出单个结果;4)多对多RNN,先编码输入序列再解码输出序列。每种结构都包含类定义、前向传播逻辑和示例代码,展示了RNN在序列数据处理中的灵活应用,适用于不同输入输出维度的场景。

2025-09-10 01:00:00 290

原创 循环神经网络(一):基础RNN结构、双向RNN

本文介绍了循环神经网络(RNN)的基本概念和实现方法。RNN是一种专门处理序列数据的神经网络,具有循环连接、参数共享和序列处理三大特点。文章通过Python代码展示了标准RNN和双向RNN的实现过程:标准RNN通过隐藏状态传递时间信息,双向RNN则结合正向和反向两层RNN来增强序列特征提取能力。代码示例使用PyTorch框架,构建了RNN单元类和前向传播过程,并演示了如何处理变长输入序列。这两种结构为自然语言处理等时序任务提供了基础解决方案。

2025-09-09 16:23:52 438

原创 大模型微调以及它与RAG技术的区别

摘要: 大模型微调通过调整预训练模型参数,使其适配特定领域知识、输出风格与任务需求,提升性能并降低成本,但存在数据更新困难和高成本的问题。RAG技术则通过外部检索实时知识库增强生成结果,具备更新便捷、准确性高和成本低的优势。两者各有侧重:微调擅长技能重塑与风格控制,RAG强于知识实时性与数据安全。实际应用中,二者可互补结合——RAG保障答案时效性,微调优化信息处理与输出格式,以实现更高效的业务适配。

2025-09-09 11:45:42 976

原创 LangGraph教程(三):记忆组件memory

本文介绍了LangGraph中的记忆管理机制,分为短期记忆和长期记忆两部分。短期记忆采用"状态快照+可插拔存储"设计,通过检查点(checkpoint)自动保存每次对话的完整状态,不同用户/会话通过thread_id隔离。文章提供了两种实现方式:使用operator.add自动合并消息列表,或手动管理历史消息。长期记忆则通过BaseStore接口实现跨会话数据持久化,支持键值存储和检索。文中给出了InMemoryStore的示例代码,展示了如何存储和读取用户偏好数据。最后还演示了一个结合

2025-09-06 07:00:00 1236

原创 LangGraph教程(二):工具调用、llm.bind_tools(tools)、ToolNode(tools)原理

本文介绍了LangGraph工具调用的实现原理,通过一个天气查询和乘法计算的小项目演示了工具调用流程。关键点包括:1)使用@tool装饰器定义工具函数,自动生成函数描述和参数信息;2)llm.bind_tools(tools)绑定工具使模型能识别可用工具;3)ToolNode(tools)节点实现工具执行。文章还深入分析了Python函数信息的获取方式,包括使用inspect模块获取函数签名,以及如何自定义JSON Schema来描述工具参数。这些机制共同实现了大模型对工具的自动发现和调用能力,开发者可以据

2025-09-05 07:00:00 1564

原创 LangGraph教程(一):入门从0到1(零基础)

LangGraph入门指南:从零到一构建自动化流程 本文用厨房流水线比喻,通俗讲解LangGraph核心概念: 核心组件:图(流程图)、节点(步骤)、边(箭头)、状态(共享数据) 最小实例:构建一个复读机器人,展示基本运行流程 进阶功能: 节点串联(文本大写转换) 条件边实现流程控制(识别quit指令) 状态管理(计数器自动累加) 通过多个可运行代码示例(复制即用),演示了如何: 定义状态类型 创建功能节点 构建流程图 实现条件跳转 使用注解实现自动状态累加 每个概念都配有厨房类比,无需前置知识,适合零基础

2025-09-04 19:55:03 964 2

原创 PyTorch 学习率调度器(LR Scheduler)

PyTorch学习率调度器(LR Scheduler)是自动调整优化器学习率的工具。核心使用流程:先调用optimizer.step()更新参数,再调用scheduler.step()调整学习率(ReduceLROnPlateau需传入监控指标)。常用调度器包括:LambdaLR(自定义函数)、StepLR(固定间隔下降)、MultiStepLR(指定里程碑下降)、CosineAnnealingLR(余弦退火)和ReduceLROnPlateau(基于指标自适应调整)。关键注意点:执行顺序不能颠倒,不同类型

2025-09-04 14:10:57 521

原创 MCP(一):创建你的第一个MCP服务(0->1)

本文介绍了如何从零开始创建第一个MCP服务项目。教程分为环境配置和MCP客户端实现两部分:环境配置包括初始化项目、创建虚拟环境、安装依赖及设置OpenAI API密钥;MCP客户端部分详细讲解了通过Python代码实现与MCP服务器的连接、工具调用和基于大模型的查询处理流程。核心功能是通过OpenAI的function calling机制,动态调用服务器端工具并整合结果,实现智能问答交互。项目示例展示了如何将MCP框架与OpenAI API结合,构建一个支持工具扩展的智能对话系统。

2025-09-04 07:00:00 967

原创 python环境依赖配置从pip到uv(从以前到现在): uv的使用教程

本文介绍了Python环境依赖管理从pip到uv的演进过程。最初使用pip全局安装依赖会导致版本冲突,于是引入虚拟环境(python -m venv)隔离项目依赖。进一步使用requirements.txt或pyproject.toml管理依赖关系,但仍存在间接依赖问题。新工具uv集成了venv和pip的功能,通过uv init创建项目、uv venv建立虚拟环境、uv add安装依赖并自动更新配置文件。uv run可直接执行代码,uv sync能快速同步项目环境。uv简化了Python项目依赖管理流程,提

2025-09-03 07:15:00 1587

原创 卷积神经网络(三):LeNet-5(经典卷积神经网络入门)

LeNet-5是Yann LeCun于1998年提出的经典卷积神经网络,为手写数字识别而设计。该网络开创了CNN工业化应用的先河,采用7层结构(3卷积+2池化+2全连接),通过5×5小卷积核提取局部特征,结合平均池化降维和tanh激活函数,最终实现高效分类。其在USPS数据集上错误率仅1%,推动了MNIST数据集的创建,并确立了"卷积→池化→全连接"的基础架构范式,为后续深度学习发展奠定重要基础。文章还提供了PyTorch实现代码,包含完整的网络结构说明。

2025-09-03 07:00:00 890

原创 卷积神经网络(二):手写数字识别项目(二)

本文介绍了手写数字识别的完整流程,主要包含7个步骤:1)读取连续手写数字图片;2)通过灰度转换、边缘检测、轮廓检测和外接矩形计算实现单数字分割;3)融合相交矩形避免误分割;4)提取单个数字图像;5)填充为正方形保持比例;6)缩放为28×28匹配MNIST输入格式;7)加载预训练模型进行预测。该流程采用OpenCV进行图像处理,PyTorch作为深度学习框架,通过递归方法融合相交矩形,并保持数字从左到右的书写顺序。关键预处理步骤包括Canny边缘检测和轮廓处理,确保最终输入与MNIST数据集格式一致。

2025-09-02 07:15:00 1051

原创 卷积神经网络(二):手写数字识别项目(一)

本文介绍了手写数字识别项目的完整实现流程,主要包括: 数据集准备:使用PyTorch内置的MNIST数据集,包含6万张28x28的灰度手写数字图片,通过DataLoader实现批量加载和随机打乱。 模型设计:构建卷积神经网络模型,包含两个"卷积-激活-池化"模块,通过最大池化逐步缩小特征图尺寸,最后接全连接层进行分类输出。模型核心结构为ConvActivatePool→ConvActivatePool→Flatten→Dense(2048)→Dense(1024)→Dense(10)。

2025-09-02 07:00:00 638

原创 MCP(Model Context Protocol,模型上下文协议):MCP与 LangChain 的工具调用机制差异

MCP(Model Context Protocol)是Anthropic推出的开放标准协议,旨在标准化LLM与外部数据源和工具的交互。它采用JSON-RPC 2.0格式,支持本地/远程通信,实现动态工具调用和上下文管理。与LangChain不同,MCP将工具封装为独立服务,通过协议实现跨平台解耦交互,而LangChain采用本地函数调用的紧密耦合方式。MCP使LLM能动态发现和使用远程工具,适合复杂企业集成场景,代表AI交互的标准化发展方向。

2025-09-02 06:45:00 1718

原创 Pytorch的CUDA版本安装使用教程

CUDA是英伟达开发的显卡计算架构,用于加速AI模型训练。使用CUDA需要英伟达显卡支持,可通过官网查询兼容性。安装方式包括直接下载CUDA驱动或通过PyTorch等框架自带版本。使用时需检查设备可用性(torch.cuda.is_available()),并将模型和数据移至CUDA设备。PyTorch用户可选择CUDA版本简化安装流程。

2025-09-01 15:03:59 586

原创 机器视觉opencv(六):图像几何变换(旋转、镜像、缩放、校正)

图像几何变换是计算机视觉中调整图像空间形态的基础操作,主要包括旋转、镜像、缩放和透视校正四类。旋转通过旋转矩阵和仿射变换实现,镜像围绕坐标轴翻转,缩放依赖插值算法调整尺寸。OpenCV提供专用函数实现这些变换,如cv2.getRotationMatrix2D生成旋转矩阵,cv2.flip实现镜像翻转,cv2.resize进行缩放。每种变换都有对应的参数设置和注意事项,如旋转角度正负、中心点坐标、边界填充方式等。实际应用中需根据具体需求选择合适的变换方法和参数,以获得最佳效果。

2025-09-01 07:15:00 1586

原创 机器视觉opencv(五):ROI图像切割与视频读取

摘要:本文介绍了OpenCV中的ROI图像切割与视频读取技术。ROI(感兴趣区域)用于聚焦目标区域,减少计算干扰,其实现依赖Numpy数组切片,需注意OpenCV特殊的坐标体系(y轴向下)和图像数据结构(BGR通道顺序)。视频读取通过VideoCapture类实现,支持本地文件和摄像头,关键步骤包括帧率控制、帧读取循环和退出机制。二者均为计算机视觉任务的基础操作,ROI可提升后续处理效率,视频读取是动态分析的前提。代码示例包含异常处理和关键参数说明,强调坐标校验和资源释放的鲁棒性设计。

2025-09-01 07:00:00 991

原创 机器视觉opencv(四):图像颜色识别与颜色替换

图像颜色识别与替换技术基于HSV颜色空间和掩膜操作,可精准定位和修改目标颜色。HSV模型(色调、饱和度、亮度)比RGB更符合人眼感知,适合颜色分割。核心步骤包括:1)将图像转为HSV空间;2)通过阈值范围生成掩膜;3)使用位与运算提取目标区域;4)结合形态学操作优化掩膜;5)替换目标颜色。该技术广泛应用于交通标志识别、产品分拣和图像美化等领域。关键难点在于准确确定目标颜色的HSV范围,可通过调试或拾色工具解决。

2025-08-31 20:01:29 1449

原创 机器视觉opencv(三):形态学变换(腐蚀与膨胀)

本文介绍了图像处理中的形态学变换技术。形态学变换基于核与二值图像的交互,通过极值计算调整像素分布。核心包括两种基本操作:腐蚀使白色区域变瘦,用于分离物体;膨胀使白色区域变胖,用于连接物体。组合操作开运算(先腐蚀后膨胀)可去除白色噪点,闭运算(先膨胀后腐蚀)可填充黑色空洞。核的形状和尺寸直接影响变换效果,矩形、十字形和椭圆形核各有特点。这些技术在图像去噪、物体分离和空洞填充等场景具有重要应用价值。

2025-08-31 19:33:27 1579

原创 机器视觉opencv(二):二值化、自适应二值化

这篇教程介绍了OpenCV中的二值化处理方法,主要包括传统二值化方法和OTSU自动阈值法。二值化将灰度图转换为仅含0和255两种值的图像,用于简化数据、消除噪声和突出目标区域。传统方法通过全局固定阈值实现,包括阈值法、反阈值法、截断阈值法等5种方式。OTSU大津法则能自动计算最优阈值,通过最大化类间方差来区分前景和背景。教程提供了详细的Python代码示例,包括OpenCV接口实现和手动实现原理,帮助理解不同二值化方法的特点和应用场景。

2025-08-29 16:00:12 1449

原创 机器视觉opencv(一):图像定义、灰度化

本文介绍了机器视觉中的图像基础概念和灰度化处理方法。主要内容包括: 像素是图像的最小单元,彩色图像由RGB三通道组成,OpenCV默认读取为BGR格式。 灰度图像是单通道图像,通过三种方法可将彩色图转为灰度图: 加权均值法(最符合人眼视觉) 平均值法(简单直观) 最大值法(适合暗图提亮) 提供了Python代码示例,并强调了OpenCV处理中的关键注意事项,如图像尺寸顺序、数据类型和通道顺序等。 (150字)

2025-08-29 15:35:46 846

原创 卷积神经网络(一):卷积神经网络基础

本文系统介绍了卷积神经网络的基础理论与实现方法。主要包括:1)卷积操作原理,通过滑动窗口计算提取特征;2)输出尺寸计算公式及参数估算方法;3)分组卷积和空洞卷积等变体结构;4)感受野概念及其计算方法;5)Python实现卷积的核心代码示例。重点阐述了卷积核参数、计算量与输出尺寸的量化关系,并对比了常规卷积与全连接层的参数规模差异。通过公式推导和代码实现相结合的方式,完整呈现了卷积操作从理论到实践的关键技术细节,为理解CNN工作机制提供了系统化的基础知识框架。

2025-08-28 19:59:00 1064

原创 PyTorch 张量常用核心知识点

PyTorch张量核心知识点摘要: 张量是PyTorch的基本数据单元,本质是多维数组。主要知识点包括: 张量创建:直接创建、特殊值(zeros/ones)、随机数(rand/randn)等方法 数据类型:支持int/float/bool等类型,可通过dtype指定和转换 访问操作:支持索引、切片、布尔掩码等多种访问方式 形状操作:reshape/view重塑形状,permute/transpose重排维度,squeeze/unsqueeze处理单维度 特性:支持自动求导,是神经网络计算的基础结构 掌握这些

2025-08-28 13:23:24 1149

原创 深度学习(五):正则化:约束模型的复杂度

正则化是机器学习中防止模型过拟合的关键技术,通过约束模型复杂度来提升泛化能力。主要方法分为三类:1)参数正则化(如L1/L2正则化),通过在损失函数中添加参数惩罚项限制参数大小;2)结构正则化(如Dropout、早停),随机关闭部分神经元或提前终止训练;3)数据正则化(如数据增强、批量归一化),通过扩充数据或标准化处理改善数据分布。这些方法从不同角度降低模型复杂度,避免模型过度拟合训练数据中的噪声,从而提升对新数据的预测能力。

2025-08-26 17:33:58 1040

原创 深度学习(四):优化器

本文介绍了机器学习中常用的优化器算法及其实现原理。主要内容包括:1) 随机梯度下降(SGD)通过加入随机数摆脱局部最优;2) 牛顿法直接更新参数;3) 多项式衰减和指数衰减两种学习率调整方法;4) 动量法利用历史梯度信息加速收敛;5) RMSprop自适应调整学习率;6) Nesterov加速梯度法改进动量法;7) AdaGrad根据梯度历史动态调整学习率;8) Adam算法综合RMSprop和动量法优点,是当前最常用的优化器之一。每种方法都配有数学公式和Python代码示例,展示了参数更新过程。这些优化器

2025-08-26 16:30:39 866

原创 深度学习(三):PyTorch 损失函数:按任务分类的实用指南

PyTorch损失函数选择指南:根据任务类型匹配最佳方案。回归任务可选MSELoss(标准回归)或SmoothL1Loss(含异常值);多分类推荐CrossEntropyLoss(自带log_softmax),二分类用BCEWithLogitsLoss(自带sigmoid);特殊任务如语音识别用CTCLoss。关键要匹配任务类型和模型输出形式,注意激活函数搭配要求以避免常见错误。

2025-08-26 09:48:56 767

原创 深度学习(二):数据集定义、PyTorch 数据集定义与使用(分板块解析)

简单说,数据集就是 AI “学习时用的素材库”—— 就像我们上学要靠课本、练习册积累知识,AI 要学会识别图片、预测结果,也得靠一堆数据 “喂” 进去,这些用来教 AI 的所有数据,合起来就是数据集。:自定义数据集的 “模板”,必须实现 3 个方法才能用:批量加载数据的 “工具”,解决单条取数据效率低的问题:划分数据集的 “助手”,用于拆分训练集 / 验证集要让 PyTorch 识别我们的数据集,必须创建一个类继承Dataset,并实现3 个强制方法__init____len__。init定义数据集。

2025-08-25 17:02:18 1168

原创 深度学习(一):全连接神经网络(AI 的「全员协作团队」)

全连接神经网络是AI中的基础结构,通过全连接层实现信息处理。其核心特点是前一层的每个神经元都与后一层的每个神经元直接连接,形成类似"全员协作团队"的结构。PyTorch中的nn.Linear通过矩阵运算高效实现这种连接,包含权重和偏置两个关键参数。多层感知机(MLP)由输入层、隐藏层和输出层组成,通过增加层数和神经元数量来提升模型处理能力。全连接层的主要作用是增加模型可学习参数,实现精准分类输出。计算参数量时,总参数量=输入特征数×输出特征数+输出特征数。这种结构简单有效,是深度学习的基

2025-08-25 16:00:15 1426

原创 RAG 教程(二):RAG文本加载

本文介绍了RAG系统中文本加载的基础操作,重点讲解如何使用LangChain工具加载多种格式文件。主要包括:TXT文件的TextLoader加载、CSV文件的CSVLoader处理、PDF文件的PyPDFLoader分页处理、Markdown文件的UnstructuredMarkdownLoader解析、JSON文件的JSONLoader字段提取,以及HTML文件的两种加载方式(UnstructuredHTMLLoader和BSHTMLLoader)。每种加载器都能将原始文件转换为包含文本内容和元数据的Do

2025-08-22 17:25:16 1114

原创 LangChain教程(全):从入门到起飞(零基础快速上手、示例代码)

本教程从零基础快速入门LangChain框架,通过示例代码讲解核心功能。首先介绍如何调用大模型,对比OpenAI(文本补全)和ChatOpenAI(对话补全)两种接口的使用场景与区别。然后重点讲解Prompt模板功能,包括基础PromptTemplate和对话专用ChatPromptTemplate,帮助开发者实现结构化输入、避免提示词注入等问题。教程采用"边学边做"方式,每个知识点都配有可运行的小项目,强调实践应用。通过分离提示词结构与动态内容,使大模型调用更规范、可维护,适合构建聊天

2025-08-21 19:57:29 1341

原创 RAG 教程(一):检索与生成的智能融合(工作流程)

RAG(检索增强生成)技术通过检索器与生成器的协同工作,将外部知识库与大语言模型相结合,实现更精准的信息输出。检索器负责从知识库中快速定位相关内容,生成器则依据检索结果和自身语言能力生成回答。该技术解决了大模型的时效性、专业性和"幻觉"问题,通过更新知识库即可获取最新信息,无需重新训练模型,在专业咨询、实时数据等场景中表现突出,实现了事实准确性与语言流畅性的统一。

2025-08-21 18:11:26 467

原创 LangChain教程(七):OutputParser(输出解析器)—— 让模型输出结构化

LangChain的OutputParser(输出解析器)可将大模型输出的非结构化文本转换为结构化数据(如JSON、列表等),解决格式不一致、信息提取困难等问题。核心功能包括格式转换、校验及与提示词协同。教程介绍了多种解析器: CommaSeparatedListOutputParser:解析逗号分隔列表; EnumOutputParser:限定输出为预定义枚举值; DatetimeOutputParser:将时间字符串转为datetime对象; StructuredOutputParser:通过R

2025-08-21 16:59:43 1077

原创 LangChain教程(五):Agent代理执行器核心机制+核心机制agent_scratchpad 的作用(一图看懂)

本文揭示了Agent代理执行器的核心工作机制。代理系统通过四个关键步骤实现工具调用:1)工具注册时建立名称与函数的映射;2)将工具描述注入模型提示;3)模型分析需求并生成工具调用指令;4)执行器根据指令路由到具体工具。核心机制在于agent_scratchpad的作用,它作为对话历史记录工具调用状态,包含工具执行结果,使模型能基于已有操作继续处理而避免循环调用。这种设计通过维护工具调用上下文,实现了从决策到执行再到结果反馈的完整闭环。

2025-08-20 17:36:51 1195

原创 LangChain 教程(六):链(Chains)的进阶组合 —— 构建复杂工作流

LangChain 教程:链(Chains)的进阶组合摘要 本文介绍了如何通过LangChain的链(Chains)功能构建复杂AI工作流。主要内容包括: 链组合的核心思想:通过Runnable接口实现组件的有序组合,支持序列、并行、条件和嵌套等组合方式。 基础序列链实现: 使用"|"运算符串联多个链 示例展示了两步骤处理流程(提取关键词→生成搜索查询) 多步骤序列链演示了如何传递多个参数 条件路由链: 根据输入内容动态选择执行不同的链 提供了基于规则和模型驱动的两种路由判断方式。

2025-08-19 19:12:57 1093

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除