17.MAF预定义Agent中间件
文章平均质量分 72
MAF预定义Agent中间件
JaydenAI
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[MAF预定义Agent中间件-05]ToolApprovalAgent-摆脱重复审批的烦恼
摘要 本文介绍了一种基于人机交互(HITL)的工具审批机制,通过ToolApprovalAgent中间件实现"don't ask again"的审批模式。核心内容包括: 三种审批模式: 严格模式:每次工具调用都需人工审批 参数记忆模式:相同工具和参数可免审批 工具记忆模式:相同工具可免审批(不限参数) 实现方式: 使用ApprovalRequiredAIFunction装饰敏感工具 通过UseToolApproval()启用审批机制 用户可选择三种审批响应方式 示例演示: 展示转账工具的审批流程 用户可选择原创 2026-06-10 07:27:03 · 487 阅读 · 0 评论 -
[MAF预定义Agent中间件-04]OpenTelemetryAgent:基于Agent的调用链跟踪和性能监控
本文介绍了如何利用OpenTelemetryAgent中间件实现LLM(大语言模型)调用的链路跟踪和性能监控。通过搭建本地Jaeger(链路跟踪)、Prometheus(指标收集)和Grafana(数据可视化)的Docker环境,结合OpenTelemetry框架,开发者可以轻松监控Agent调用链和性能指标。文章提供了一个C#示例程序,展示了如何配置TracerProvider(输出到Jaeger)和MeterProvider(暴露Prometheus指标),并通过嵌套Activity模拟多级调用链路。最原创 2026-06-09 08:06:36 · 546 阅读 · 0 评论 -
[MAF预定义Agent中间件-03]FunctionInvocationDelegatingAgent:将AOP引入工具函数
工具让Agent具备了与外界交互的能力。按照工具的执行,MAF的工具可以划分为服务端或者承载端工具和客户端工具两大类。前者在承载LLM的服务器端执行,以Hosted前缀命名的工具基本属于这一类;后者是在客户端(Agent端)定义的函数,通过`AIFunction`来表示。大部分Agent都会涉及`AIFunction`,通过一种调用拦截机制将AOP引入函数调用是很有意义的。使用`FunctionInvocationDelegatingAgent`中间件也容易实现这一点。原创 2026-06-09 08:02:54 · 416 阅读 · 0 评论 -
[MAF预定义Agent中间件-02]MessageAIContextProviderAgent:利用MessageAIContextProvider实现输入增强
本文介绍了MAF框架中MessageAIContextProvider及其子类MessageAIContextProviderAgent在增强LLM输入输出中的应用。重点演示了如何结合TextSearchProvider实现RAG功能,通过动态注入上下文回答LLM无法直接回答的问题(如2026年斯诺克冠军)。文章对比了两种实现方式(中间件管道与AIContextProvider管道)的差异,并解析了MessageAIContextProviderAgent内部处理消息的流程,包括上下文创建、消息修改和异常处原创 2026-06-06 08:19:49 · 446 阅读 · 0 评论 -
[MAF预定义Agent中间件-01]LoggingAgent:在Agent调用前后输出日志
LoggingAgent是Agent中间件管道中的预定义中间件,用于记录Agent调用的输入输出及时间戳等信息,便于调试与监控。其设计与LoggingChatClient类似,通过装饰现有AIAgent并设置日志级别(如Debug或Trace)控制输出详细程度。示例代码演示了如何基于OpenAIClient创建AIAgent并注册LoggingAgent,在调用前后输出日志。当设置为Trace级别时,会以JSON格式记录完整输入输出内容;若调用异常,则输出Error级日志。此外,该中间件支持流式调用原创 2026-06-06 08:16:44 · 450 阅读 · 0 评论
分享