<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_20466211的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_20466211</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_20466211]]></copyright><item><title><![CDATA[深入大模型-50-MCP工具不是简单的把API重新写一遍]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/170148787</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/170148787</guid><author>qq_20466211</author><pubDate>Sat, 07 Nov 2026 21:45:55 +0800</pubDate><description><![CDATA[MCP相比API，多出来的那层不是"协议"，是把接口重写了一遍、变成一份模型在运行时读得到的说明。]]></description><category></category></item><item><title><![CDATA[深入大模型-49-MCP工具的交付和MCP网关的开发实践]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/170124904</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/170124904</guid><author>qq_20466211</author><pubDate>Sat, 07 Nov 2026 21:43:59 +0800</pubDate><description><![CDATA[MCP工具交付的四种方式，以及MCP网关的设计引入。]]></description><category></category></item><item><title><![CDATA[深入大模型-48-MCP工具的开发]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/170053138</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/170053138</guid><author>qq_20466211</author><pubDate>Fri, 06 Nov 2026 17:19:35 +0800</pubDate><description><![CDATA[使用FastMCP开发MCP工具]]></description><category></category></item><item><title><![CDATA[深入大模型-47-使用WorkBuddy开发应用和制作Skill]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/170022960</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/170022960</guid><author>qq_20466211</author><pubDate>Fri, 06 Nov 2026 17:15:51 +0800</pubDate><description><![CDATA[制作skill的关键在于描述清楚：它解决什么问题、什么时候用、按什么步骤、输出什么、绝对不能做什么。]]></description><category></category></item><item><title><![CDATA[面向OLAP的列式存储DBMS-17-[ClickHouse]常用查询语句join和select]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/127103042</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/127103042</guid><author>qq_20466211</author><pubDate>Tue, 22 Sep 2026 15:38:47 +0800</pubDate><description><![CDATA[常用查询语句]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-42-RAG之整体案例]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164208133</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164208133</guid><author>qq_20466211</author><pubDate>Mon, 14 Sep 2026 09:12:00 +0800</pubDate><description><![CDATA[基于LangChain提供的相关组件实现一个简易知识库，并结合Agent进行交互。涵盖了RAG的核心生命周期：文档加载，文本切分，向量化，向量数据库存储，相似度检索，大模型结合上下文生成回答。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-41-RAG之文档嵌入模型和向量存储]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164026707</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164026707</guid><author>qq_20466211</author><pubDate>Mon, 14 Sep 2026 09:08:27 +0800</pubDate><description><![CDATA[文档嵌入模型和向量存储，向量数据库Milvus的使用。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-40-RAG之文档切分器(二)按Token分割TokenTextSplitter和按语义分块SemanticChunker]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164299195</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164299195</guid><author>qq_20466211</author><pubDate>Mon, 07 Sep 2026 14:13:03 +0800</pubDate><description><![CDATA[按token分割，按语义分块，HTML文档分割，代码文本分割，markdown文本分割。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-39-RAG之文档切分器(一)字符文本切分器CharacterTextSplitter和递归RecursiveCharacterTextSplitter]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163827142</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163827142</guid><author>qq_20466211</author><pubDate>Mon, 07 Sep 2026 14:10:00 +0800</pubDate><description><![CDATA[字符文本切分器。CharacterTextSplitter和递归字符文本切分器RecursiveCharacterTextSplitter。split_text(字符串)，create_documents(字符串列表)，split_documents(文档列表)。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-38-RAG之文档加载器(二)pdf、word、markdown、html、文件夹]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163661274</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163661274</guid><author>qq_20466211</author><pubDate>Thu, 03 Sep 2026 09:20:15 +0800</pubDate><description><![CDATA[加载pdf(PyPDFLoader)，加载Markdown(UnstructuredMarkdownLoader)，加载HTML(UnstructuredHTMLLoader)，加载File Directory(DirectoryLoader)。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-37-RAG之文档加载器(一)txt、csv、json]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163338220</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163338220</guid><author>qq_20466211</author><pubDate>Thu, 03 Sep 2026 09:17:04 +0800</pubDate><description><![CDATA[加载txt(TextLoader)，加载csv(CSVLoader)，加载JSON(JSONLoader)，JSONLoader使用指定的jq结构来解析JSON文件。jq是一个轻量级的命令行JSON处理器 ，可以对JSON格式的数据进行各种复杂的处理，包括数据过滤、映射、减少和转换，是处理 JSON 数据的首选工具之一 。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-36-上下文与记忆Memory之长期记忆(四)静态运行时上下文(Static runtime Context)在工具中访问]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164145040</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164145040</guid><author>qq_20466211</author><pubDate>Wed, 02 Sep 2026 09:30:38 +0800</pubDate><description><![CDATA[tool参数列表中的ToolRuntime是Langchain/Langgraph运行时注入的，在工具schema中没有体现。工具函数通过runtime: ToolRuntime[UserContext, Any]参数自动获取runtime.context(用户ID)和runtime.store(存储实例)，无需手动传递。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-35-上下文与记忆Memory之长期记忆(三)静态运行时上下文(Static runtime Context)在中间件中访问]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164139151</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164139151</guid><author>qq_20466211</author><pubDate>Wed, 02 Sep 2026 09:20:04 +0800</pubDate><description><![CDATA[静态运行时上下文(Static runtime Context)表示不可变的数据，如用户元数据、工具和传递给应用程序的数据库连接对象。通常在运行开始时通过invoke/stream的context参数传递，此类数据在运行期间不会更改。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-34-上下文与记忆Memory之长期记忆(二)在Agent运行图中访问长期记忆]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/164089282</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/164089282</guid><author>qq_20466211</author><pubDate>Mon, 31 Aug 2026 09:34:14 +0800</pubDate><description><![CDATA[在Agent运行图中访问长期记忆，即通过runtime.store接口可以在工具(Tools)，通过request.runtime.store接口可以在中间件或钩子(Hooks)中访问长期记忆。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-33-上下文与记忆Memory之长期记忆(一)基础API的使用]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/162973628</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/162973628</guid><author>qq_20466211</author><pubDate>Mon, 31 Aug 2026 09:15:17 +0800</pubDate><description><![CDATA[长期记忆记录的是用户特定或应用级别的数据，任何会话都可以随时访问。长期记忆的存储是store -> namespace -> key -> value的四层架构。相关的API有：put() ：负责写入。get() ：负责读取。search() ：负责检索。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-32-上下文与记忆Memory之短期记忆(二)记忆治理策略:消息裁剪、消息删除、摘要]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/162966559</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/162966559</guid><author>qq_20466211</author><pubDate>Fri, 28 Aug 2026 09:38:08 +0800</pubDate><description><![CDATA[消息裁剪：调用模型前裁剪上下文，目标是控制token用量，通常保留系统初始消息和最近若干消息。消息删除：强调模型调用完成后将某些消息从消息列表中移除。摘要：是更适合长会话的折中方案，保语义，不保原文。这三个策略都会永久改变消息列表。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-31-上下文与记忆Memory之短期记忆(一)State(会话内部状态)+Checkpointer(持久化机制)+Thread ID(会话作用域)]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/162935027</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/162935027</guid><author>qq_20466211</author><pubDate>Fri, 28 Aug 2026 09:07:40 +0800</pubDate><description><![CDATA[LangGraph提供了三种管理上下文的方法：动态运行时上下文(state)、动态跨会话上下文(store)、静态运行时上下文(context)。记忆分为短期记忆(state)和长期记忆(store)。短期记忆可以使用InMemorySaver或SqliteSaver。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-30-中间件Middleware之自定义中间件(三)装饰器和类的选择]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163949625</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163949625</guid><author>qq_20466211</author><pubDate>Tue, 25 Aug 2026 13:24:05 +0800</pubDate><description><![CDATA[当一个中间件只需要实现一个钩子函数时，直接使用装饰器最简单。当一个中间件需要实现多个钩子函数时，类写法更合适。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-29-中间件Middleware之自定义中间件(二)包装风格钩子]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163922623</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163922623</guid><author>qq_20466211</author><pubDate>Mon, 24 Aug 2026 16:00:14 +0800</pubDate><description><![CDATA[Wrap-style(包装式)：它们像洋葱一样完整包裹了模型或工具的实际调用过程。它们完全掌握被包裹函数的控制权，可以决定是调用0次(直接短路/缓存命中)、调用1次(正常透传)，还是调用多次(实现重试逻辑)。]]></description><category></category></item><item><title><![CDATA[langchain1.X学习笔记-28-中间件Middleware之自定义中间件(一)节点风格钩子]]></title><link>https://blog.youkuaiyun.com/qq_20466211/article/details/163823663</link><guid>https://blog.youkuaiyun.com/qq_20466211/article/details/163823663</guid><author>qq_20466211</author><pubDate>Mon, 24 Aug 2026 15:59:46 +0800</pubDate><description><![CDATA[Node-style(节点式)：它们是在Agent执行流程的固定节点上按顺序触发。它们不掌握模型或工具调用的控制权，不能决定模型是否被调用。它们的作用是在到达该节点时，观察状态、修改状态或进行简单的拦截跳转。]]></description><category></category></item></channel></rss>