16.MAF预定义AIContextProvider
文章平均质量分 74
MAF预定义AIContextProvider
JaydenAI
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[MAF预定义的AIContextProvider-12]FileMemoryProvider:为Agent提供可解释、可回溯的记忆能力
`FileMemoryProvider`并不是**长期用户记忆**,而是**会话级工作记忆**的工程化实现。它的生命周期与Session绑定,但相比LLM的上下文窗口,它提供了更稳定、更结构化、更可控的记忆空间。可以将它视为在LLM上下文和跨Session长期记忆之间的记忆类型,从生命周期角度来看,由于它是基于Session存储的,所以依然属于短期记忆。原创 2026-06-08 07:22:50 · 436 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-11]ShellEnvironmentProvider:提供当前的Shell环境信息
本文介绍了ShellEnvironmentProvider工具,它能探测当前Shell环境类型(如bash、PowerShell等)并指导LLM生成兼容的Shell命令。通过示例演示了如何为不同Shell环境(Posix和PowerShell)配置Agent,使其生成对应的脚本语法。此外,文章还展示了如何通过自定义TrackingProvider查看转换后的系统指令,验证了该工具能有效将环境信息转化为LLM可理解的提示,确保生成的命令与目标Shell兼容。核心功能包括环境探测、命令适配和指令转换,适用于需要原创 2026-06-08 07:18:53 · 412 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-10]TodoProvider:用TodoList驱动Agent的任务执行
该文介绍了一种解决大型语言模型(LLM)执行多步骤复杂任务时注意力涣散问题的方法——使用TodoList机制。通过创建TodoList记录任务步骤,并在每完成一步后标记状态,可有效避免步骤遗漏或重复。文章以自动化部署为例,展示了如何通过TodoProvider和四个工具函数(PullLatestCode、BuildDockerImage等)实现可靠的多步骤部署流程。代码示例演示了Agent如何严格按TodoList顺序执行,并在每步完成后调用标记功能,最终输出清晰的部署结果和状态报告,显著提升了复原创 2026-06-05 08:34:22 · 512 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-09]AgentModeProvider:自由切换行为模式
AgentModeProvider为AI Agent提供了灵活的行为模式切换能力,通过预定义的plan和execute模式,支持任务分阶段处理。在差旅助手案例中,Agent先在plan模式下与用户交互确认行程细节,生成完整方案;待用户确认后自动切换至execute模式执行机票酒店预订。这种机制既允许LLM自主决策模式切换,也支持外部强制干预,有效提升了复杂任务的处理能力。演示代码展示了从需求收集、方案制定到最终执行的全流程自动化实现。原创 2026-06-05 08:32:35 · 441 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-08]BackgroundAgentsProvider:异步执行SubAgent
作为LangChain的Harness框架的Deep Agents,它提供了`SubAgentMiddleware`和`AsyncSubAgentMiddleware`两个中间件来支持这种模式,前者采用**本地阻塞**的方式执行SubAgent,后者则采用**远程异步**的方式执行SubAgent。MAF利用`BackgroundAgentsProvider`这个`AIContextProvider`实现了类似的功能,但是它采用了**本地异步**的方式执行SubAgent。原创 2026-06-04 08:41:24 · 470 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-07]FileAccessProvider:为Agent提供文件读写能力
通过提供7个操作文件和目录的方法定义了一个抽象的文件系统,这些方法包括:写文件、读文件、删除文件、列出目录下的文件、检查文件是否存在、搜索文件以及创建目录。通过实现,开发者可以将不同的存储系统(如本地文件系统、云存储服务等)适配到中,从而为Agent提供持久化的文件读写能力。string?:将指定内容写入到指定路径的文件中。:读取指定路径的文件内容。:删除指定路径的文件。:列出指定目录下的所有文件。:检查指定路径的文件是否存在。:在指定目录下根据正则表达式搜索文件。原创 2026-06-04 08:32:58 · 404 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-06]CompactionProvider:采用多种策略压缩对话历史[续]
本文介绍了MAF框架中的两种对话历史压缩策略。TruncationCompactionStrategy采用末位淘汰机制,当消息组超过阈值时从旧到新截断;SlidingWindowCompactionStrategy则基于对话轮次实现滑动窗口清理,保留最近N轮对话。文中通过代码示例演示了两种策略的实际应用,其中系统消息默认保留且不占用保留配额。这两种策略分别适用于基于消息组数量管理和基于对话轮次管理的不同压缩需求场景。原创 2026-06-03 07:16:25 · 414 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-05]CompactionProvider:采用多种策略压缩对话历史
本文探讨了在LLM对话中处理长上下文窗口的挑战,并介绍了两种解决方案:ReducingChatClient中间件和CompactionProvider。重点讲解了利用CompactionProvider结合SummarizationCompactionStrategy对对话历史进行摘要压缩的方法,通过消息组的概念将相关消息逻辑分组处理,在保留核心语义的同时减少上下文长度。文章通过代码示例展示了如何配置压缩策略(如设定触发条件和保留消息组数量),并分析了压缩后对话历史的结构变化,证明该方法能有效维持对话质量的原创 2026-06-02 08:48:44 · 574 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-04]Mem0Provider:长期记忆云端解决方案
本文介绍了如何利用Mem0Provider为AI Agent添加长期记忆功能,替代之前基于向量数据库的ChatHistoryMemoryProvider方案。Mem0是一个专为AI设计的记忆管理平台,通过向量+图谱的混合架构实现跨会话记忆存储。文章演示了将Mem0Provider集成到点餐Agent中的具体实现,包括API密钥配置、记忆范围初始化以及会话管理。通过示例代码展示了Agent如何根据用户历史偏好(如不吃辣)生成个性化订单,并支持多用户记忆隔离。Mem0目前提供免费试用,开发者可通过官方渠道获取A原创 2026-06-02 08:46:26 · 892 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-02]AgentSkillsProvider:将Skills引入MAF
本文介绍了Agent Skills在MAF(Microsoft Agent Framework)中的实现机制与应用。Agent Skills是一种动态加载提示词的机制,通过AgentSkillsProvider引入,封装为Tool消息并添加到对话历史中以实现技能管理。文章通过一个翻译古典诗词的实例,展示了如何定义和使用Skill,并详细解析了AgentSkill类的组成元素(元数据、内容、资源和脚本)。Agent Skills增强了LLM的输入处理能力,是提升Agent灵活性和功能性的重要手段。原创 2026-06-01 08:22:08 · 641 阅读 · 0 评论 -
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider:赋予Agent从经验中学习的能力
针对LLM无状态和知识固化的局限性,Agent通过记忆机制实现多轮对话与持续学习。ChatHistoryMemoryProvider作为关键组件,利用向量数据库存储对话历史,赋予Agent短期记忆(会话内)和长期记忆(跨会话)。以点餐Agent为例,该技术能记住用户口味偏好,实现个性化推荐。通过设置不同Scope(用户、Agent、系统),记忆可灵活共享。示例代码展示了如何基于用户ID存储和检索偏好信息,使Agent在后续点餐中主动考虑历史记录,体现了记忆机制对Agent智能化提升的重要作用。原创 2026-06-01 08:54:58 · 891 阅读 · 0 评论 -
[MAF预定义AIContextProvider-01]TextSearchProvider:在MAF中实现RAG
本文介绍了在MAF(Microsoft AI Framework)中如何利用TextSearchProvider实现检索增强生成(RAG)功能。主要内容包括: RAG实现原理:通过输入增强方式,利用检索到的上下文信息辅助LLM生成更准确的回答。 实践示例: 直接提问2026年斯诺克冠军时LLM无法回答 通过TextSearchProvider注入检索结果后,LLM能给出准确答案 关键技术: TextSearchProvider作为预定义的AIContextProvider 通过Session状态管理检索查询原创 2026-05-30 08:52:07 · 546 阅读 · 0 评论
分享