板球分析代理系统

一个基于本地的端到端代理AI系统,用于使用板球分析领域理解和实验Strands代理和模型上下文协议(MCP)。

  • by manjunath-sb
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 manjunath-sb/cricket-agent-local

使用说明

板球经纪人(当地)

该项目是一个本地的端到端代理人工智能系统,旨在理解和实验 Strands代理商 和 模型上下文协议(MCP) 使用板球分析域。

该系统演示了如何清晰地进行推理(LLM)、确定性工具和数据 使用代理架构进行分离和编排。


架构概述

该项目遵循分层、模块化的设计:

  • 数据层(data/)
    包含用于受控实验的静态板球统计数据。

  • 工具层(tools/)
    执行板球相关计算的纯确定性Python函数 (例如平均值、比较)。
    这些功能包括 没有人工智能或推理逻辑.

  • MCP服务器(server/)
    使用以下方式将工具作为可调用功能公开 模型上下文协议(MCP)
    通过本地Streamable HTTP服务器。

  • MCP客户端(client/)
    连接到MCP服务器并动态发现可用工具。

  • 代理层(agent/)
    使用语言模型来解释用户查询、决定调用哪些工具, 并解释结果。
    代理人确实如此 不 计算统计数据本身。

  • 应用层(app.py)
    将MCP客户端和代理连接在一起,并提供简单的CLI界面。


当前能力

  • 具有隔离虚拟环境的本地Python项目
  • 用于可预测行为的静态板球数据集
  • 确定性板球分析工具
  • MCP服务器公开工具 localhost
  • MCP客户端动态发现工具
  • 完全工作的代理人:
    • 接受自然语言问题
    • 通过MCP使用工具进行计算
    • 清楚地解释结果
  • 本地LLM推理使用 Ollama(调用3.2)
    (无云API,无凭据)

技术栈

  • python
  • Strands代理商
  • 绞合MCP工具
  • 模型上下文协议(MCP)
  • Ollama(当地LLM-Callama3.2)

如何跑步(本地)

1.启动MCP服务器

在一个终端中(从项目根目录开始): python-m服务器.mcp_server

2.启动应用程序

在另一个终端中(从项目根目录): python app.py

然后,您可以提出以下问题:

  • What is the batting average of Virat Kohli?
  • Compare home and away performance of Rohit Sharma

设计原则

  • 明确区分关注点
  • 确定性工具、概率推理
  • 可替换模型提供程序
  • 地方优先发展
  • 优化前的架构

将来的扩展

  • 添加更多板球分析工具
  • 改善当地LLM行为的护栏
  • 引入记忆或持久性
  • 替换或添加替代模型提供程序
  • 将架构重用于其他域

状态

该项目正在积极开发中,作为一个学习和原型系统 用于代理AI架构。