AI个人学习
和实操指南
阿里绘蛙

Fast-Agent:声明式语法和MCP集成快速构建多智能体工作流

综合介绍

Fast-Agent 是一个由 evalstate 团队在 GitHub 上维护的开源工具,旨在帮助开发者快速定义、测试和构建多智能体工作流。它基于简单的声明式语法,支持与 MCP(Model-Compute-Platform)服务器集成,让用户专注于设计提示词和智能体逻辑,而非繁琐的配置。Fast-Agent 提供多种工作流模式(如链式、并行、评估优化等),内置命令行工具(CLI)和交互式聊天功能,适用于从原型验证到生产部署的开发场景。项目采用 Apache 2.0 许可证,支持社区贡献,强调易用性和灵活性。

Fast-Agent:声明式语法和MCP集成快速构建多智能体工作流-1


 

功能列表

  • 智能体定义:通过简单装饰器快速定义智能体,支持自定义指令和 MCP 服务器调用。
  • 工作流构建:支持链式(Chain)、并行(Parallel)、评估优化(Evaluator-Optimizer)、路由(Router)和编排(Orchestrator)等多种工作流模式。
  • 模型选择:轻松切换不同模型(如 o3-mini、sonnet),测试模型与 MCP 服务器的交互效果。
  • 交互式聊天:支持与单个智能体或工作流组件实时对话,便于调试和优化。
  • 测试支持:内置测试功能,验证智能体和工作流的表现,适合集成到持续集成(CI)流程。
  • CLI 操作:提供命令行工具,简化安装、运行和调试流程。
  • 人类输入:智能体可请求人类输入,提供额外上下文以完成任务。
  • 快速原型:从简单文件配置到运行,仅需几分钟即可启动智能体应用。

 

使用帮助

Fast-Agent 的核心目标是降低多智能体开发的门槛,以下是详细的安装和使用指南,帮助用户快速上手并掌握其功能。

安装流程

Fast-Agent 依赖 Python 环境,推荐使用 uv 包管理器。以下是安装步骤:

  1. 安装 Python 和 uv
    确保系统已安装 Python 3.9 或更高版本,然后安装 uv
pip install uv

验证安装:

uv --version
  1. 安装 Fast-Agent
    通过 uv 从 PyPI 安装:
uv pip install fast-agent-mcp

若需完整功能支持(如文件系统或 Docker MCP 服务器),运行:

uv pip install fast-agent-mcp[full]
  1. 初始化配置
    安装完成后,生成示例配置文件和智能体:
fast-agent setup

这会在当前目录生成 agent.py 和 fastagent.config.yaml 等文件。

  1. 验证安装
    检查版本:
fast-agent --version

若返回版本号,安装成功。

使用方法

Fast-Agent 支持通过命令行或代码运行智能体和工作流,以下是具体操作步骤。

创建并运行基本智能体

  1. 定义智能体
    编辑 agent.py,添加简单智能体:
import asyncio
from mcp_agent.core.fastagent import FastAgent
fast = FastAgent("Simple Agent")
@fast.agent(instruction="Given an object, respond with its estimated size.")
async def main():
async with fast.run() as agent:
await agent()
if __name__ == "__main__":
asyncio.run(main())
  1. 运行智能体
    在命令行中运行:

    uv run agent.py
    

    这将启动交互式聊天模式,输入对象名称(如 "the moon"),智能体会返回估计大小。

  2. 指定模型
    使用 --model 参数选择模型:

    uv run agent.py --model=o3-mini.low
    

创建工作流

  1. 生成工作流模板
    使用 bootstrap 命令生成示例:

    fast-agent bootstrap workflow
    

    这会创建一个包含链式工作流的目录,展示如何构建有效智能体。

  2. 运行工作流
    进入生成的工作流目录,运行:

    uv run chaining.py
    

    系统将从指定 URL 获取内容并生成社交媒体帖子。

特色功能操作

  • 链式工作流(Chain)
    编辑 chaining.py,定义链式工作流:

    @fast.agent("url_fetcher", "Given a URL, provide a summary", servers=["fetch"])
    @fast.agent("social_media", "Write a 280 character post for the text.")
    async def main():
    async with fast.run() as agent:
    result = await agent.social_media(await agent.url_fetcher("http://example.com"))
    print(result)
    

    配置 fastagent.config.yaml 中的 MCP 服务器后,运行:

    uv run chaining.py
    
  • 并行工作流(Parallel)
    定义多语言翻译工作流:

    @fast.agent("translate_fr", "Translate to French")
    @fast.agent("translate_de", "Translate to German")
    @fast.parallel(name="translate", fan_out=["translate_fr", "translate_de"])
    async def main():
    async with fast.run() as agent:
    await agent.translate.send("Hello, world!")
    

    运行后,文本将同时翻译为法语和德语。

  • 人类输入
    定义需要人类输入的智能体:

    @fast.agent(instruction="Assist with tasks, request human input if needed.", human_input=True)
    async def main():
    async with fast.run() as agent:
    await agent.send("print the next number in the sequence")
    

    运行时,若智能体需要更多信息,会提示用户输入。

  • 评估优化(Evaluator-Optimizer)
    生成研究工作流:

    fast-agent bootstrap researcher
    

    编辑配置文件并运行,智能体会生成内容并优化至满意为止。

配置 MCP 服务器

编辑 fastagent.config.yaml,添加服务器:

servers:
fetch:
type: "fetch"
endpoint: "https://api.example.com"

运行时,智能体将调用此服务器获取数据。

操作流程示例

假设需要从 URL 生成社交媒体帖子:

  1. 运行 fast-agent bootstrap workflow 生成模板。
  2. 编辑 chaining.py,设置 URL 和 MCP 服务器。
  3. 执行 uv run chaining.py,查看生成的 280 字符帖子。
  4. 使用 --quiet 参数仅返回结果:
    uv run chaining.py --quiet
    

注意事项

  • Windows 用户:需调整文件系统和 Docker MCP 服务器配置,详情见生成配置文件注释。
  • 调试:若运行失败,添加 --verbose 查看详细日志:
    uv run agent.py --verbose
    

通过以上步骤,用户可快速安装并使用 Fast-Agent,构建并测试多智能体工作流,适用于研究、开发和生产场景。

CDN1
未经允许不得转载:首席AI分享圈 » Fast-Agent:声明式语法和MCP集成快速构建多智能体工作流

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文