使用说明
项目简介
LLMling Agent 是一个用于创建和管理由大型语言模型 (LLM) 驱动的智能体的框架。它专注于提供结构化、类型安全的方式来构建复杂的 Agent 系统,并集成了 MCP (Model Context Protocol) 服务器 的功能。该框架旨在简化 LLM 应用的开发流程,提供强大的配置系统、灵活的消息路由和 Human-AI 协作能力。
主要功能点
- Agent MCP 服务器支持: LLMling Agent 框架内建 MCP 服务器功能,允许 Agent 作为 MCP 服务器运行,对外提供资源、工具和 Prompt 模板服务,以便 LLM 客户端能够以标准化的方式与之交互。
- 资源 (Resources) 管理: 框架支持托管和管理各种类型的资源,例如文本文件、数据库连接等,并允许 Agent 通过工具访问这些资源。
- 工具 (Tools) 注册与执行: 可以注册 Python 函数作为工具,供 LLM Agent 调用,扩展 Agent 的能力,例如网页浏览、文件操作、数据分析等。
- Prompt 模板 (Prompts) 定义: 支持使用 YAML 定义 Prompt 模板,实现可定制的 LLM 交互模式,方便管理和复用 Prompt。
- YAML 配置系统: Agent、工具、资源、连接等都可以通过 YAML 文件进行配置,简化复杂 Agent 系统的部署和管理。
- 类型安全: 框架从底层到应用层都强调类型安全,使用 Pydantic 进行数据验证,提高系统的可靠性和可维护性。
- 异步消息路由: 采用基于 Connection 对象的异步消息路由系统,实现 Agent 之间灵活、强大的通信和协作模式。
安装步骤
-
环境准备: 确保已安装 Python 3.12 或更高版本。推荐使用 'uv' 包管理器。
-
安装 llmling-agent: 使用 pip 或 uv 安装 'llmling-agent' 及其默认依赖。
uv pip install llmling-agent[default]
服务器配置
MCP 服务器配置在 Agent 的 YAML 配置文件中定义。以下是一个示例配置,展示如何在 Agent 中启用和配置一个 'stdio' 类型的 MCP 服务器。
{ "agents": { "my_agent": { "model": "openai:gpt-4o-mini", "mcp_servers": [ { "type": "stdio", "command": "python", // 启动 MCP 服务器的命令,这里使用 python "args": ["-m", "llmling_agent.server.mcp_server"] // 启动命令的参数,指定运行 llmling_agent.server.mcp_server 模块 // "environment": { "DEBUG": "1" } // (可选) 环境变量配置,例如设置 DEBUG 模式 } ] } } }
配置参数说明:
- 'type': MCP 服务器类型,这里使用 'stdio',表示通过标准输入输出流进行通信。
- 'command': 启动 MCP 服务器进程的命令,通常为 'python' 或 'uv python'。
- 'args': 传递给 'command' 的参数列表,用于指定要运行的 MCP 服务器模块。对于 'llmling-agent',通常使用 '["-m", "llmling_agent.server.mcp_server"]' 来运行内置的 MCP 服务器。
- 'environment': (可选) 设置 MCP 服务器进程运行时的环境变量。
注意: MCP 客户端需要根据以上配置信息,配置相应的 'command' 和 'args',才能正确连接到 'llmling-agent' 提供的 MCP 服务器。
基本使用方法
- 创建 Agent 配置文件: 编写 YAML 文件 (例如 'agents.yml') 定义 Agent、工具、Prompt、MCP 服务器等。可以参考仓库 'README.md' 中提供的 YAML 示例。
- 启动 MCP 服务器: 当 Agent 运行时,如果配置了 'mcp_servers',MCP 服务器会自动启动。具体启动方式取决于你如何运行 Agent。例如,使用 CLI 命令 'llmling-agent run' 或 'llmling-agent chat' 启动 Agent 时,MCP 服务器会随之启动。
- 客户端连接: 使用 MCP 客户端,根据 YAML 配置文件中 'mcp_servers' 的配置信息,连接到 'llmling-agent' 提供的 MCP 服务器。连接成功后,客户端即可调用服务器提供的资源、工具和 Prompt 模板。
- 与 Agent 交互: 通过 MCP 客户端,以 JSON-RPC 协议与 MCP 服务器进行通信,发送请求 (如读取资源、调用工具、获取 Prompt),并接收服务器的响应。
示例:使用 CLI 启动带 MCP 服务器的 Agent
llmling-agent run my_agent --config agents.yml "Your prompt here"
在这个例子中,'my_agent' 是 'agents.yml' 中定义的 Agent 名称。如果 'my_agent' 的配置中包含了 'mcp_servers',那么在 Agent 启动的同时,MCP 服务器也会被启动。
详细使用方法: 请参考仓库的 官方文档,文档提供了更全面的指南、示例和 API 参考。
信息
分类
AI与计算