Skip to content

wxqee/LureMaster-Agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎣 路亚钓鱼宗师 (LureMaster-Agent)

垂直领域 AI Agent 开源项目

基于大语言模型的路亚钓鱼智能指导助手

Python License GitHub Stars GitHub Issues

English | 功能特性快速开始API Key 申请项目结构API 文档


📖 项目简介

路亚钓鱼宗师 是一个专注于路亚钓鱼场景的 AI Agent 开源项目。它通过智能问答交互,收集用户的钓鱼计划信息,结合天气、位置等实时数据,为钓友提供专业、个性化的钓鱼指导建议。

🎯 核心能力

  • 智能问答:通过多轮对话收集钓鱼计划信息
  • 天气分析:获取目标地点天气预报,评估钓鱼适宜度
  • 知识检索:内置丰富的路亚钓鱼知识库
  • 装备建议:根据目标鱼种推荐合适的装备和饵料
  • 钓法指导:提供专业的控饵手法和水层选择建议

🌟 项目亮点

特性 说明
🏗️ 清晰架构 分层设计,Agent/LLM/Tools/Config 模块解耦
🔄 多模型支持 通义千问、智谱 GLM、DeepSeek 一键切换
🎭 模拟模式 无 API Key 也能体验完整功能
📚 丰富知识库 7 种鱼种、8 个钓点、装备技巧全覆盖
🌐 API 预留 FastAPI 接口,方便扩展小程序/Web
📖 完整文档 快速开始指南 + API 文档

✨ 功能特性

功能 描述 状态
🤖 多模型支持 支持通义千问、智谱 GLM、DeepSeek 等多种 LLM
💬 智能对话 多轮对话收集钓鱼计划信息
🌤️ 天气查询 和风天气 API 集成,支持模拟模式
📍 地理服务 高德地图 API 集成,支持模拟模式
📚 知识库 内置丰富的路亚钓鱼知识
🖥️ CLI 界面 命令行交互界面
🌐 REST API FastAPI 接口,方便扩展

🚀 快速开始

1. 环境要求

  • Python 3.9+
  • pip 或 poetry

2. 克隆项目

git clone https://github.com/yourusername/LureMaster-Agent.git
cd LureMaster-Agent

3. 安装依赖

pip install -r requirements.txt

4. 配置环境变量

# 复制配置模板
cp .env.example .env

# 编辑 .env 文件,填入您的 API Key
# 至少配置一个 LLM API Key

5. 运行 CLI

python -m cli.main

6. 运行 API 服务(可选)

uvicorn api.main:app --reload --host 0.0.0.0 --port 8000

访问 http://localhost:8000/docs 查看 API 文档


🔑 API Key 申请指南

必需配置(至少一个)

通义千问(推荐)

  1. 访问 阿里云百炼平台
  2. 登录/注册阿里云账号
  3. 开通"模型服务",在左侧菜单找到「API-KEY管理」
  4. 创建 API Key,将 Key 填入 .env 文件的 BAILIAN_API_KEY

免费额度:新用户赠送免费 tokens,Qwen-Turbo 百万 tokens 仅 0.3 元

智谱 GLM(备选)

  1. 访问 智谱开放平台
  2. 登录/注册账号
  3. 创建 API Key
  4. 将 Key 填入 .env 文件的 ZHIPU_API_KEY

免费额度:新用户赠送 tokens

DeepSeek(备选)

  1. 访问 DeepSeek 开放平台
  2. 登录/注册账号
  3. 创建 API Key
  4. 将 Key 填入 .env 文件的 DEEPSEEK_API_KEY

可选配置(增强功能)

和风天气

  1. 访问 和风天气开发者平台
  2. 注册账号并创建应用
  3. 选择"免费订阅"(每天 1000 次调用)
  4. 将 Key 填入 .env 文件的 QWEATHER_API_KEY

高德地图

  1. 访问 高德开放平台
  2. 注册账号并创建应用
  3. 选择"Web 服务"类型
  4. 将 Key 填入 .env 文件的 AMAP_API_KEY

💡 提示:不配置天气和地图 API 也可以使用,系统会自动启用模拟模式


📁 项目结构

LureMaster-Agent/
├── agents/                 # Agent 核心模块
│   ├── __init__.py
│   ├── base.py            # Agent 基类
│   └── lure_master.py     # 路亚宗师 Agent 实现
├── llm/                    # LLM 抽象层
│   ├── __init__.py
│   ├── base.py            # LLM 基类
│   ├── qwen.py            # 通义千问
│   ├── zhipu.py           # 智谱 GLM
│   └── deepseek.py        # DeepSeek
├── tools/                  # 工具模块
│   ├── __init__.py
│   ├── base.py            # 工具基类
│   ├── weather.py         # 天气工具
│   ├── location.py        # 地理工具
│   └── knowledge.py       # 知识检索工具
├── config/                 # 配置模块
│   ├── __init__.py
│   ├── settings.py        # 配置管理
│   └── prompts.py         # 提示词模板
├── data/                   # 数据文件
│   └── fishing_knowledge.json  # 钓鱼知识库
├── cli/                    # CLI 界面
│   ├── __init__.py
│   └── main.py            # 命令行入口
├── api/                    # REST API
│   ├── __init__.py
│   └── main.py            # FastAPI 应用
├── main.py                # 主入口
├── requirements.txt        # 依赖列表
├── .env.example           # 环境变量模板
└── README.md              # 项目文档

📚 API 文档

启动 API 服务后,访问以下地址查看完整文档:

主要接口

接口 方法 描述
/api/chat POST 对话接口
/api/weather POST 天气查询
/api/location POST 地理查询
/api/knowledge POST 知识检索
/api/fish-species GET 鱼种列表
/api/fishing-spots GET 钓点列表

对话示例

import requests

# 创建会话并发送消息
response = requests.post(
    "http://localhost:8000/api/chat",
    json={
        "message": "明天打算早起钓鳜鱼"
    }
)

print(response.json())
# {
#   "session_id": "xxx-xxx-xxx",
#   "response": "好的,明天早起钓鳜鱼是个不错的选择!...",
#   "stage": "collecting",
#   "collected_info": {"time": "明天早上", "target_fish": "鳜鱼"}
# }

cURL 示例

# 对话接口
curl -X POST "http://localhost:8000/api/chat" \
  -H "Content-Type: application/json" \
  -d '{"message": "明天打算早起钓鳜鱼"}'

# 获取鱼种列表
curl "http://localhost:8000/api/fish-species"

🎮 使用示例

CLI 交互示例

╔═══════════════════════════════════════════════════════════════╗
║                                                               ║
║     🎣 欢迎来到【路亚钓鱼宗师】🎣                             ║
║                                                               ║
║     我是您的专属路亚钓鱼顾问,拥有30年实战经验               ║
║     让我们一起制定完美的钓鱼计划吧!                         ║
║                                                               ║
╚═══════════════════════════════════════════════════════════════╝

您: 明天打算早起去太湖钓鳜鱼

╭─────────────────── 路亚宗师 ───────────────────╮
│                                               │
│ 好的!明天早起去太湖钓鳜鱼是个不错的选择!    │
│ 让我帮您分析一下:                            │
│                                               │
│ 📍 地点确认:太湖(江苏省苏州市)             │
│ 🌤️ 天气情况:                                │
│ - 明天:晴,8-18°C,东南风 3级               │
│ - 钓鱼适宜度:极佳(85分)                   │
│                                               │
│ 🐟 目标鱼种:鳜鱼                            │
│ - 习性:底层肉食性鱼类,喜欢清澈水质         │
│ - 推荐饵:软虫、亮片、VIB                    │
│ - 推荐钓法:跳底、慢速收线                   │
│                                               │
│ 🎣 装备建议:                                │
│ - 路亚竿:MH调性(中硬调)                   │
│ - 渔轮:纺车轮 2500型                        │
│ - 钓线:PE线 1.5-2.0号 + 碳线前导           │
│                                               │
│ 💡 作钓建议:                                │
│ 1. 鳜鱼喜欢在障碍物附近活动                  │
│ 2. 早上6-8点是黄金时段                       │
│ 3. 使用跳底手法                              │
│                                               │
│ 祝您爆护!🎣                                  │
│                                               │
╰───────────────────────────────────────────────╯

🛠️ 技术栈

类别 技术
语言 Python 3.9+
Agent 框架 自研轻量级框架
LLM 通义千问 / 智谱 GLM / DeepSeek
API 框架 FastAPI
CLI Rich
天气 API 和风天气
地图 API 高德地图

🗺️ 未来规划

  • Web 界面(Streamlit)
  • 微信小程序前端
  • RAG 知识增强
  • 钓点地图可视化
  • 钓鱼记录管理
  • 社区分享功能
  • 多语言支持

🤝 贡献指南

欢迎贡献代码、提出问题或建议!

贡献步骤

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 提交 Pull Request

代码规范

  • 遵循 PEP 8 编码规范
  • 添加必要的注释和文档字符串
  • 确保代码通过测试

📄 许可证

本项目采用 MIT 许可证 - 详见 LICENSE 文件


🙏 致谢


📮 联系方式


如果这个项目对您有帮助,请给一个 ⭐ Star 支持一下!

Made with ❤️ by 路亚钓鱼爱好者


English

🎣 LureMaster-Agent

A Vertical Domain AI Agent for Lure Fishing

An intelligent fishing assistant based on Large Language Models.

Features

  • 🤖 Multi-LLM Support (Qwen, GLM, DeepSeek)
  • 💬 Intelligent Q&A for fishing planning
  • 🌤️ Weather analysis with fishing suitability scoring
  • 📍 Location services integration
  • 📚 Built-in fishing knowledge base
  • 🖥️ CLI interface
  • 🌐 REST API for easy integration

Quick Start

# Clone
git clone https://github.com/yourusername/LureMaster-Agent.git
cd LureMaster-Agent

# Install
pip install -r requirements.txt

# Configure
cp .env.example .env
# Edit .env with your API keys

# Run CLI
python -m cli.main

# Run API
uvicorn api.main:app --reload

License

MIT License - See LICENSE for details.

About

🎣 垂直领域 AI Agent:路亚钓鱼宗师。基于环境参数(气压、水温、鱼情)的智能选饵与标点分析系统。

Resources

License

Stars

3 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages