Akemi

Akemi

it's better to burn out than to fade away

Langchain模块Agent组件常规应用
agent迭代器AgentExecutorAgent 迭代器( AgentExecutor)是 LangChain 中实际执行 Agent 决策循环的引擎 即思考 → 行动 → 观察 → 再思考 → … → 结束 特性 Agent自带迭代器 自定义迭代器 开发难度 ✅ 零配置 🟡 需要编程 标准化 ✅ 符合ReAct框架 🟡 任意设计 错误处理 ✅ 内置完善 🟡 需自行实现 工具集成 ✅ 自动适配 🟡 手动集成 循环控制 🟡 固定模式 ✅ 完全定制 状态管理 ✅ 自动维护 🟡 手动管理 性能优化 🟡 一般优化 ✅ 可深度优化 特殊需求...
Langchain模块Agent组件
LangChain Agent 是一个让大型语言模型(LLM)自主决策、选择工具并执行任务的框架。它把 LLM 从一个”纯对话者”变成了一个”能动手的智能助手”。用户问题 → LLM分析 → 选择工具 → 执行工具 → 观察结果 → 继续思考 → … → 最终答案 类型 特点 适用场景 ZERO_SHOT_REACT 无需示例,根据工具描述决策 通用任务,结构清晰 CONVERSATIONAL 记忆对话历史,上下文感知 多轮对话任务 STRUCTURED_CHAT 结构化输出,更可控 复杂多步骤任务 OPENAI_FUNCTIONS 利用OpenAI函数调用 需要...
Langchain模块Memory组件常用用法
个性化对话前缀 多输入memory 实体记忆 对话知识图谱记忆 个性化前缀这个个性化只限于在memory中,如果是希望在对话中有前缀,直接在prompt中规定就行了 123456789101112131415161718192021222324252627282930313233343536373839from langchain_deepseek import ChatDeepSeekfrom langchain.chains import ConversationChainfrom langchain.memory import ConversationBufferMemoryf...
Langchain模块Memory常用组件
会话缓冲记忆ConversationBufferMemory 将预设的聊天记录保存起来,为之后的聊天提供上下文信息,同时也可以将实时聊天信息保存起来 会话缓冲窗口记忆ConversationBufferWindowMemory 记录最近k次的聊天交互信息 会话缓冲记忆ConversationBufferMemory123456789101112131415161718192021222324252627from langchain.memory import ConversationBufferMemoryfrom langchain.chains import Conversa...
Langchain模块Chain组件-多种chain
路由chain路由链是LangChain中用于智能决策和分发的核心机制,它可以根据输入内容自动选择最合适的处理路径。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970from langchain_core.runnables import RunnablePassthrough, RunnableLambda, RunnableBranchfrom langchain.pro...
NFS权限与绑定挂载
前情提要:https://akemi.zj.cn/2025/08/26/Pacemaker-NFS/忘记做nfs迁移测试了 后续的权限挂载问题使用nfs-client 10.163.2.109挂载10.163.2.150后,发现写入失败,这个问题是因为nfs server共享后,虽然共享权限为rw,但server默认给client的权限为nobody匿名用户,为的是防止client使用root权限直接操作server文件。(默认选项root_squash,即默认对root权限进行控制 有两种处理方法: nfs server把挂载目录给777权限 nfs server共享时指定挂载选项n...
Docker根目录迁移
隔壁桌的嵌入式哥们ubutnu机器满了 一看根目录200G 100%,家目录1.8T 50% 结果全是空的文件夹,这种一看就是docker的问题,果然使用docker system df 可以看到所有容器都是用的临时存储,并且几个exited状态的容器占了大量空间 12345678910# 删除所有不使用的容器docker container prune -f# root@master:~# df -Th文件系统 类型 容量 已用 可用 已用% 挂载点udev devtmpfs 16G 0 16G 0% /devtmpf...
Langchain模块Chain组件基本用法
Chain是一种接口,将多个组件(llm、prompt等)串联在一起,以实现更复杂的应用或功能 模块化:将复杂的应用拆解成多个更简单,更易于管理和维护的模块,每个模块都可以独立进行开发和测试 可重用性:创建可以重复使用的组件和功能 可扩展性:可以轻松添加、修改、删除链中的组件,以满足应用的新需求或改变现有功能 API异步调用123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354import asyncioimport timefrom lan...
Langchain模块Callback组件
回调的基本概念: 在llm应用执行的每个阶段,比如日志记录、监控、流处理等 回调处理器是实现了callbackhandler接口的对象,每个可以订阅的事件都有一个方法,当事件被触发时,CallbackManager会在每个处理器上调用相应的方法 在哪些地方定义回调函数: 构造函数时定义:llmchain=(callbacks=[handler]) 发出请求时定义:llm.invoke(callbacks=… 构造函数中设置verbose为true,调用StdOutCallHandler 使用最简单回调123456789101112131415161718...
Langchain模块-DataCollection组件-Retriever检索器
用以查询嵌入到向量数据库中的数据 MultiQueryRetriever请求拆分多索引:将问题拆分出不同的问答 Contextual compression上下文压缩:对每个文件块进行摘要,方便于定位 self-querying元数据过滤器:将请求过滤成请求+过滤器,进行查询 时间加权向量存储检索器:加上时间因素 请求拆分多索引MultiQueryRetriever通过请求拆分多索,生成多维度的查询输入,其本身是一种增强了的检索器,可以被RetrievalQAWithSourcesChain所引用 1234567891011121314151617181920212223242526...
avatar
王盛
当生命指向成长,时间就是你的朋友
FRIENDS
MyCSDN