<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Dontla的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Dontla</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Dontla]]></copyright><item><title><![CDATA[Bose QC蓝牙耳机Headphones (Stereo)（立体声）和Headset (Hands-Free AG Audio)（免提）区别]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/168027782</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/168027782</guid><author>Dontla</author><pubDate>Thu, 15 Oct 2026 18:12:12 +0800</pubDate><description><![CDATA[注意： 如果你的 Bose 耳机是支持 LE Audio 的较新型号，并且电脑也支持相应功能，音质和双向通话限制可能有所不同。这两个都是你的 Bose QC 蓝牙耳机，但使用了不同的蓝牙音频模式。Windows 也可能在启用耳机麦克风时自动切换到免提模式。如果你必须使用 Bose 耳机自带的麦克风，就选择。这样既能保证声音质量，又能正常说话。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）6. Deployment部署——Lesson 5：Assistants助手（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897749</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897749</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 15:05:44 +0800</pubDate><description><![CDATA[例如，我需要一个用于个人任务的助手，另一个用于工作事务的助手。对我而言，是能够为不同类别的任务分别维护待办事项列表。下方更新后的代码先创建一个备用助手，然后将其删除。类似地，我们也可以为我的个人助手添加待办事项。让我们为我的工作助手添加一些待办事项。这是我将用来管理个人任务的个人助手。例如，我们可以删除不再使用的助手。应用中，助手的实际用例是什么？这是我们部署图时创建的默认助手。让我们更新此助手，为其添加我的。现在，让我们创建一个工作助手。我将用它来处理我的工作任务。助手将保存至我们部署中的。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）6. Deployment部署——Lesson 4：Double Texting重复发送消息（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897669</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897669</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 15:01:32 +0800</pubDate><description><![CDATA[We can see我们可以看到所有方法均已汇总。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）6. Deployment部署——Lesson 3：连接已部署的服务（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897611</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897611</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:59:13 +0800</pubDate><description><![CDATA[我们的部署包含一个 PostgreSQL 数据库，用于存储这些长期（跨线程）内存。将 token 流式传输回客户端，在处理可能耗时较长的生产环境智能体时尤为有用。这将保留现有线程的历史记录，同时允许我们创建独立运行，且不会影响原始线程。在我们的部署中，可通过 LangGraph SDK 使用多种方法。如果我们希望等待运行完成，使其变为阻塞式运行，该怎么办？后台运行和轮询在处理长时间运行的智能体时非常有用。这确保在当前线程上的运行完成前，不会启动新的运行。，服务器支持我们讨论过的全部人工介入循环功能。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）6. Deployment部署——Lesson 1（2）：创建部署（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897406</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897406</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:57:09 +0800</pubDate><description><![CDATA[创建并运行 LangGraph 服务器容器，并传入 Redis 和 PostgreSQL 的 URI。如果你已有正在运行的 Redis 和 PostgreSQL（例如，在本地或其他服务器上），则可。Docker 镜像是 Docker 容器的模板，其中包含运行应用所需的代码和依赖项。该操作会将我们的图及其依赖项打包进一个 Docker 镜像。是用于创建 LangGraph 平台部署的命令行接口。，并添加以下环境变量，即可运行已部署的。让我们为我们在模块 5 中创建的。，我们将按几个步骤操作。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）5. Long-Term Memory长期记忆——Lesson 5：构建具有长期记忆的智能体（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897304</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897304</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:44:09 +0800</pubDate><description><![CDATA[我们添加一个简单路由器，用于对是否保存记忆作出二元决策。Trustcallin the内存集合的更新仍由节点中的Trustcall处理，与之前一致！]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）5. Long-Term Memory长期记忆——Lesson 4：Memory Schema+Collection记忆结构与记忆集合（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897193</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897193</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:37:27 +0800</pubDate><description><![CDATA[我们不会将用户信息存储在固定的档案结构中，而是创建一个灵活的集合模式，用于存储关于用户交互的记忆。content每条记忆将作为独立条目存储，仅含一个content字段，用于保存我们希望记住的主要信息。该方法使我们能够构建一个开放式的记忆集合，随着对用户的了解不断加深而持续扩展与演进。Pydanticobject.我们可以将集合模式定义为一个Pydantic对象。chat model我们可以使用 LangChain 的聊天模型chat model接口的 with_structured_output。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）5. Long-Term Memory长期记忆——Lesson 3：Memory Schema + Profile记忆结构与用户档案（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166897080</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166897080</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:33:29 +0800</pubDate><description><![CDATA[PydanticPython 提供了多种用于结构化数据的类型，例如 TypedDict、字典、JSON 和Pydantic。让我们首先使用 TypedDict 来定义用户档案模式。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）5. Long-Term Memory长期记忆——Lesson 1（2）：LangGraph Store记忆存储（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851511</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851511</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 14:29:04 +0800</pubDate><description><![CDATA[The提供了一种在 LangGraph 中跨线程存储与检索信息的方式。This is ankey-valuestores.这是一个开源基类，用于持久化的键值（key-value）存储。Store向Store中存储对象（例如记忆）时，我们需要提供：Thenamespace对象的命名空间（namespace），为一个元组（类似于目录结构）the objectkey对象的键（key）（类似于文件名）the objectvalue对象的值（value）（类似于文件内容）We use theput。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）4. Building Your Assistant——Lesson 4：Research Assistant研究助手（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851493</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851493</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 01:00:57 +0800</pubDate><description><![CDATA[然而，研究需要定制化：原始 LLM 输出往往难以直接适用于现实世界的决策工作流。接下来，我们将整合这些理念，以应对人工智能领域最受欢迎的应用之一：研究自动化。此处，我们运行访谈流程，并传入一篇与主题相关的 llama3.1 论文索引。最后，我们将创建用于保存完整访谈内容以及撰写访谈摘要（即“章节”）的节点。我们的目标是围绕聊天模型构建一个轻量级的多智能体系统，以定制研究流程。现在，我们创建用于网络和维基百科搜索的节点。我们还将创建一个用于回答分析师问题的节点。工作流是解决此问题的一种有前景的方法。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）4. Building Your Assistant——Lesson 3：Map-Reduce映射-归约（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851482</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851482</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:59:26 +0800</pubDate><description><![CDATA[自录制这些视频以来，我们已更新 Studio，使其支持本地运行并通过浏览器访问。为构建这一多智能体助手，我们已陆续介绍了若干 LangGraph 可控性主题。我们正在构建一个多功能智能体研究助手，该助手将整合本课程所有模块的内容。—— 将一项任务拆分为若干更小的子任务，并对每个子任务进行并行处理。推荐采用此方式运行 Studio，而非视频中演示的桌面应用。—— 汇总所有已完成的并行化子任务的结果。现在，我们只需定义一个用于生成笑话的节点。使用其自身的内部状态，而我们可通过。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）4. Building Your Assistant——Lesson 2：Sub-graphs子图（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851475</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851475</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:57:32 +0800</pubDate><description><![CDATA[我们可以为每个子图简单地创建一个输出状态结构，并确保该输出状态结构包含不同的键，以便作为输出发布。这对多智能体系统尤其有用——例如由多个智能体组成的团队，每个智能体都拥有自己的状态。我们正在构建一个多功能智能体研究助手，该助手将本课程所有模块整合在一起。我们刚刚学习了并行化，这是 LangGraph 可控性的一个重要主题。子图允许你在图的不同部分创建和管理不同的状态。由于并行子图返回相同的键，因此需要一个类似。我们来定义将输入到图中的日志的结构。的归约器，以合并各子图传入的值。以下是问题摘要子图，它使用。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）4. Building Your Assistant——Lesson 1：Parallel node execution并行节点执行（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851444</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851444</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:55:55 +0800</pubDate><description><![CDATA[使用扇出时，若多个步骤向同一通道 / 键写入数据，则必须确保使用归约器（reducer）。自录制这些视频以来，我们已更新 Studio，使其现在可本地运行并通过浏览器访问。（多代理）工作流，并最终构建一个整合本课程所有模块功能的多代理研究助手。不过，我们可以使用自定义归约器来自定义此行为（例如对状态更新进行排序）。这是运行 Studio 的首选方式，而非视频中展示的桌面应用程序。我们来构建一个简单的线性图，使其在每一步都覆写状态。然而，在每一步内部，我们无法精确控制状态更新的顺序！]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）3. UX and Human-in-the-Loop——Lesson 5：Time travel时间旅行（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851431</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851431</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:50:54 +0800</pubDate><description><![CDATA[随后，我们展示了如何基于人工审批继续执行，或直接利用人工反馈编辑图状态。现在，当我们进行流式输出（stream）时，图知道该检查点尚未被执行过。——我们可以中断代理运行，将当前状态呈现给用户，并允许用户接受某项操作。我们展示了断点如何在特定节点处暂停图的执行，或让图动态地自行中断。我们可以看到，代理的当前状态已更新为我们的分叉结果。让我们运行代理，并对每个节点调用后的图状态流式输出。因此，要覆盖该消息，我们只需提供其消息 ID，即。现在，我们可以看到当前状态已是代理运行的最终状态。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）3. UX and Human-in-the-Loop-——Lesson 4：Dynamic breakpoints动态断点（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851413</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851413</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:48:24 +0800</pubDate><description><![CDATA[自录制这些视频以来，我们已更新 Studio，使其现在可本地运行并通过浏览器访问。我们介绍了断点作为一种通用机制，用于在特定步骤处停止图的执行，从而支持。——我们可以中断代理执行，将当前状态呈现给用户，并允许用户接受某项操作。（1）您可以有条件地触发中断（即在节点内部、基于开发者定义的逻辑）这是运行 Studio 的首选方式，而非视频中展示的桌面应用。让我们使用一个长度超过 5 个字符的输入来运行该图。除非状态被修改，否则我们将一直卡在此处。我们可以尝试从该断点恢复图的执行。但这样只会重新运行同一个节点！]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）3. UX and Human-in-the-Loop-——Lesson 3：Editing graph state编辑图状态（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851403</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851403</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:46:12 +0800</pubDate><description><![CDATA[自录制这些视频以来，我们已更新 Studio，使其现在可本地运行并通过浏览器访问。我们设置一个检查点器（checkpointer），以保存图在此节点之前的状态。中添加断点，但 API 的一个非常实用的功能是：我们可以直接传入断点！我们已演示断点如何支持用户审批，但尚不清楚图被中断后如何修改图状态！我们用它来中断图，并在执行下一个节点前等待用户审批。现在，让我们演示如何直接编辑图状态并插入人工反馈。我们将在代理中添加一个节点，作为人工反馈的占位符。因此，显然我们可以在断点之后编辑代理状态。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）3. UX and Human-in-the-Loop-——Lesson 2：Breakpoints断点（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851389</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851389</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:44:21 +0800</pubDate><description><![CDATA[自录制本视频以来，我们已更新 Studio，使其现在可本地运行并通过浏览器访问。为清晰起见，LangGraph 将重新发出当前状态，该状态包含带有工具调用的。我们看到工具节点使用该工具调用执行，并将结果传回聊天模型以生成最终答案。现在，让我们将上述内容整合起来，加入一个接受用户输入的具体人工审批步骤。——我们可以中断代理执行，将当前状态呈现给用户，并允许用户批准某项操作。随后，它将继续执行图中的后续步骤，这些步骤以工具节点为起点。（人在回路中），我们通常希望在图运行时实时查看其输出。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）3. UX and Human-in-the-Loop——Lesson 1: Streaming流式传输（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166851220</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166851220</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:24:21 +0800</pubDate><description><![CDATA[做好铺垫，我们将首先深入流式传输，它提供了多种方式来可视化图执行过程中的输出（例如节点状态或聊天模型生成的 token）。让我们复用模块 2 中构建的聊天机器人，并演示在图执行过程中流式传输输出的多种方式。我们构建了一个具备外部内存的聊天机器人，可支持长时间运行的对话。特别是，在调用聊天模型时，常需流式传输其逐个生成的 token。这是运行 Studio 的首选方式，而非视频中展示的桌面应用。模式流式传输，因此仅能看到图中每个节点运行后状态的更新。在模块 2 中，我们介绍了几种自定义图状态和内存的方法。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）2. State and Memory——Lesson 6：Chatbot聊天机器人消息总结与外部记忆（外部数据库）（未索引）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166736881</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166736881</guid><author>Dontla</author><pubDate>Wed, 30 Sep 2026 00:23:35 +0800</pubDate><description><![CDATA[我们已介绍如何自定义图状态模式（state schema）与规约器（reducer）。我们还展示了多种用于修剪或过滤图状态中消息的技巧。我们已在具备记忆功能的聊天机器人中应用了这些概念，该机器人可生成对话的持续摘要。这叫“滚动摘要”或“持续摘要”。]]></description><category></category></item><item><title><![CDATA[（LangGraph教程）2. State and Memory——Lesson 5：Chatbot聊天机器人消息总结与记忆（记忆功能，消息摘要，上下文压缩）]]></title><link>https://blog.youkuaiyun.com/Dontla/article/details/166735911</link><guid>https://blog.youkuaiyun.com/Dontla/article/details/166735911</guid><author>Dontla</author><pubDate>Sun, 27 Sep 2026 15:09:33 +0800</pubDate><description><![CDATA[我们已介绍如何自定义图状态模式（schema）和规约器（reducer）。我们还展示了多种在图状态中裁剪或过滤消息的方法。模型虽然看不到已经删除的旧消息，但能够通过摘要了解之前聊过什么。旧摘要 + 新消息 → 新摘要所以它是一种“滚动摘要”。消息超过 6 条才生成摘要，避免每轮对话都额外调用一次 LLM。LLM 摘要并不是无损压缩。忘记细节；日期或数字出错；误解用户意图；错误内容被不断继承。所以订单号、金额、权限、用户明确偏好等重要数据，不应该只存进自然语言摘要。]]></description><category></category></item></channel></rss>