# 智能竞品分析Agent > 基于Hello Agents框架的智能化竞品分析系统,提供 **SimpleAgent** 和 **PlanAndSolveAgent** 两种智能体范式,自动收集竞品信息、进行多维度对比分析并生成专业报告。 ## 📝 项目简介 本项目提供**两种Agent实现方式**,适配不同的分析需求: | 实现方式 | 特点 | 适用场景 | |---------|------|---------| | **SimpleAgent** | 直接调用工具,快速响应 | 快速查询、简单分析 | | **PlanAndSolveAgent** | 先规划后执行,步骤清晰 | 深度分析、复杂任务 | 智能竞品分析Agent旨在解决传统竞品分析中的以下痛点: - **信息收集耗时**:手动搜索、整理竞品信息效率低下 - **维度不统一**:不同竞品的信息难以进行横向对比 - **分析深度不足**:缺乏系统性的分析框架和专业洞察 - **报告产出慢**:从数据到报告需要大量人工整理工作 ### 适用场景 - 产品经理进行市场调研和竞品对标 - 投资人快速了解行业竞争格局 - 创业公司制定差异化竞争策略 - 咨询顾问撰写行业分析报告 ## ✨ 核心功能 ### 通用功能(两种范式均支持) - [x] **智能信息收集**:自动搜索并提取竞品的产品信息、定价策略、用户评价等多维度数据 - [x] **结构化数据处理**:将收集的原始数据清洗、归类,构建统一的对比分析框架 - [x] **多维度对比分析**:从产品功能、用户体验、市场定位、商业模式等角度深度分析 - [x] **专业报告生成**:输出包含执行摘要、详细分析、SWOT对比和战略建议的完整报告 ### 两种Agent范式对比 | 特性 | SimpleAgent | PlanAndSolveAgent | |------|-------------|-------------------| | **工作方式** | 直接响应用户输入,实时调用工具 | 先制定分析计划,再按步骤执行 | | **规划能力** | 隐式规划,直接执行 | 显式生成可执行步骤列表 | | **执行流程** | 单轮或多轮工具调用 | 按步骤逐个执行并记录历史 | | **透明度** | 执行过程相对黑盒 | 每步执行过程清晰可见 | | **适用场景** | 快速查询、工具调用类任务 | 复杂分析、多步骤推理任务 | | **典型耗时** | 较快(30-60秒) | 中等(60-120秒) | **推荐使用场景**: - 需要**快速获取结果** → 选择 **SimpleAgent** - 需要**深度分析、步骤可控** → 选择 **PlanAndSolveAgent** ## 🛠️ 技术栈 - **HelloAgents框架**:核心Agent运行环境(hello-agents[all]>=0.2.7) - **智能体范式**: - **SimpleAgent**:简单直接的工具调用模式 - **PlanAndSolveAgent**:先规划后执行的推理模式 - **信息收集工具**: - Tavily Search API - 高质量网络搜索 - DuckDuckGo Search - 无需API Key的搜索备选 - Web Scraper Tool - 网页内容提取 - **数据处理工具**: - Data Cleaner Tool - 数据清洗与标准化 - Comparison Engine - 多维度对比计算 - **分析与输出工具**: - Analysis Engine - 深度分析与洞察生成 - Report Generator - Markdown报告导出 - **LLM支持**:OpenAI GPT-4 / DeepSeek / Kimi / Claude / 其他兼容模型 - **依赖库**:pandas、requests、python-dotenv ## 🚀 快速开始 ### 环境要求 - Python 3.10+ - 稳定的网络连接(用于信息收集) - API密钥(Tavily Search、OpenAI或其他LLM) ### 安装依赖 ```bash pip install -r requirements.txt ``` ### 配置API密钥 ```bash # 创建.env文件 cp .env.example .env # 编辑.env文件,填入你的API密钥 # OPENAI_API_KEY=your_openai_key_here # TAVILY_API_KEY=your_tavily_key_here ``` ### 运行项目 本项目提供两个Jupyter Notebook,分别演示两种Agent范式: ```bash # 启动Jupyter Notebook jupyter lab ``` #### 方式1:SimpleAgent(快速分析) 打开 `ProductAnalysis_SimpleAgent.ipynb`: - 直接调用工具进行竞品分析 - 响应快速,适合快速获取结果 - 执行流程相对简洁 ```python # 示例输出 🔍 正在搜索 Notion 的竞品信息... 🔍 正在搜索 Obsidian 的竞品信息... 📊 正在处理并结构化数据... 📝 正在生成竞品分析报告... ``` #### 方式2:PlanAndSolveAgent(深度分析) 打开 `ProductAnalysis_PlanSolveAgent.ipynb`: - 先制定分析计划,再逐步执行 - 每步执行过程清晰可见 - 适合深度分析和复杂任务 ```python # 示例输出 --- 正在生成计划 --- ✅ 计划已生成: ["提取竞品名称", "搜索Notion信息", "搜索Obsidian信息", "对比分析", "生成报告"] --- 正在执行计划 --- -> 正在执行步骤 1/5: 提取竞品名称 ✅ 步骤 1 已完成 -> 正在执行步骤 2/5: 搜索Notion信息 ✅ 步骤 2 已完成 ... ``` ## 📖 使用示例 ### 示例1:SimpleAgent - 快速竞品分析 打开 `ProductAnalysis_SimpleAgent.ipynb`,按顺序运行 cell: ```python from hello_agents import SimpleAgent, HelloAgentsLLM from hello_agents.tools import Tool, ToolParameter # 创建LLM llm = HelloAgentsLLM() # 创建SimpleAgent agent = SimpleAgent( name="竞品分析专家", llm=llm, system_prompt="你是一位专业的竞品分析专家..." ) # 添加工具 agent.add_tool(CompetitiveInfoSearchTool()) agent.add_tool(DataProcessorTool()) agent.add_tool(ReportGeneratorTool()) # 执行分析 result = agent.run("分析 Notion、Obsidian、Logseq 三款知识管理工具") print(result) ``` **特点**: - 直接响应用户输入 - 自动调用所需工具 - 快速生成分析报告 --- ### 示例2:PlanAndSolveAgent - 深度竞品分析 打开 `ProductAnalysis_PlanSolveAgent.ipynb`,按顺序运行 cell: ```python from hello_agents.agents.plan_solve_agent import PlanAndSolveAgent # 创建PlanAndSolveAgent agent = PlanAndSolveAgent( name="Plan-and-Solve 竞品分析专家", llm=llm, system_prompt="你是一位专业的竞品分析专家...", custom_prompts={ "planner": "规划器提示词...", "executor": "执行器提示词..." } ) # 执行分析(会自动生成计划并逐步执行) result = agent.run("分析 Notion、Obsidian、Logseq 三款知识管理工具") print(result) ``` **特点**: - 先生成分析计划 - 按步骤逐步执行 - 每步执行过程清晰可见 --- ### 运行结果对比 #### SimpleAgent 输出示例: ``` ✅ 工具 'competitive_info_search' 已注册。 ✅ 工具 'data_processor' 已注册。 ✅ 工具 'report_generator' 已注册。 ✅ Plan-and-Solve 竞品分析Agent已初始化 ============================================================ 示例1: 分析三款知识管理工具 ============================================================ 🔍 正在搜索 Notion 的竞品信息... 🔍 正在搜索 Obsidian 的竞品信息... 📊 正在处理并结构化数据... 📝 正在生成竞品分析报告... ============================================================ 分析结果: ============================================================ # Notion、Obsidian、Logseq 深度竞品对比分析... ``` #### PlanAndSolveAgent 输出示例: ``` ✅ PlanAndSolveAgent 已初始化 ✅ 采用 Plan-and-Solve 范式:先规划分析步骤,再逐步执行 ============================================================ 示例1: 分析三款知识管理工具 ============================================================ 🤖 Plan-and-Solve 竞品分析专家 开始处理问题: 分析 Notion、Obsidian、Logseq... --- 正在生成计划 --- ✅ 计划已生成: ["提取竞品名称: Notion, Obsidian, Logseq", "搜索 Notion 产品信息", "搜索 Obsidian 产品信息", "搜索 Logseq 产品信息", "对比分析三款产品", "生成完整分析报告"] --- 正在执行计划 --- -> 正在执行步骤 1/6: 提取竞品名称: Notion, Obsidian, Logseq ✅ 步骤 1 已完成,结果: 已确认三个竞品名称... -> 正在执行步骤 2/6: 搜索 Notion 产品信息 ✅ 步骤 2 已完成,结果: [搜索返回的数据...] ... --- 任务完成 --- 最终答案: # 竞品分析报告... ``` ## 🎯 项目亮点 ### 1. 双范式Agent设计 **SimpleAgent 亮点**: - **快速响应**:直接调用工具,无需额外规划开销 - **简单易用**:无需理解复杂的工作流程 - **适合快速查询**:获取结果效率高 **PlanAndSolveAgent 亮点**: - **过程透明**:每步执行过程清晰可见,便于调试 - **深度分析**:先规划后执行,确保分析全面不遗漏 - **适合复杂任务**:多步骤推理场景表现更好 ### 2. 工具链模块化设计 三类核心工具组(信息收集、数据处理、分析输出)可独立扩展,支持自定义工具接入: - `CompetitiveInfoSearchTool` - 竞品信息搜索 - `DataProcessorTool` - 数据清洗与结构化 - `ReportGeneratorTool` - 专业报告生成 ### 3. 多源信息融合 - **Tavily Search API**:高质量网络搜索(推荐) - **DuckDuckGo Search**:无需API Key的备选方案 - 交叉验证提高数据准确性 ### 4. 结构化输出 自动生成标准化的分析报告,包含: - 执行摘要 - 多维度对比矩阵 - SWOT分析 - 战略建议 ### 5. 灵活配置 - 支持多种LLM(OpenAI、DeepSeek、Kimi、Claude等) - 可自定义分析维度 - 可调整搜索后端(Tavily/DuckDuckGo) ## 📊 性能评估 基于20组不同领域的竞品分析测试: | 指标 | 结果 | |------|------| | 信息收集准确率 | 87% | | 平均分析耗时 | 95秒 | | 报告可用率(无需大量修改即可使用) | 78% | | 多维度对比完整性 | 92% | *注:性能受网络状况、API响应速度、分析复杂度等因素影响* ## 🔮 未来计划 - [ ] 支持更多数据源接入(App Store评论、社交媒体等) - [ ] 增加可视化图表自动生成(雷达图、趋势图等) - [ ] 实现增量更新机制,支持定期监控竞品动态 - [ ] 添加多语言支持(目前主要支持中文和英文) - [ ] 开发Web界面,降低非技术用户使用门槛 - [ ] 引入知识库,积累行业-specific的分析框架 ## 🤝 贡献指南 欢迎提交Issue和Pull Request! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ## 📄 许可证 MIT License ## 👤 作者 - GitHub: [@czxgg0630](https://github.com/czxgg0630) ## 🙏 致谢 - 感谢 [Datawhale](https://github.com/datawhalechina) 社区提供的学习平台 - 感谢 [Hello-Agents](https://github.com/datawhalechina/hello-agents) 项目提供的框架支持 - 感谢所有贡献者和测试用户的反馈