---
title: FinResearch
canonical_url: "https://www.modelscope.ai/studios/ms-agent/FinResearch"
md_url: "https://www.modelscope.ai/studios/ms-agent/FinResearch.md"
repository: ms-agent/FinResearch
last_updated: 2026-06-16
sdk_type: gradio
sdk_version: 5.49.1
downloads: 0
stars: 3
---

# FinResearch

> FinResearch - An interactive demo by ms-agent on ModelScope. 本项目是一个基于 Gradio 的多智能体金融深度研究工作流应用，面向真实金融场景，结合行情 / 财报 / 宏观指标等结构化数据与新闻、社区话题等非结构化舆情信息，自动生成深度金融研究报告，适用于个股、行业和主题研究。项目源码地址：https://github.com/modelscope/ms-agent/tree/main/projects/finresearch

ms-agent/FinResearch is an interactive demo (Studio) on ModelScope. built with gradio 5.49.1.

- **Repository**: ms-agent/FinResearch
- **SDK**: gradio
- **SDK version**: 5.49.1
- **Downloads**: 0
- **Stars**: 3
- **Last updated**: 2026-06-16

Source: https://www.modelscope.ai/studios/ms-agent/FinResearch

---

# FinResearch 金融深度研究

本项目是一个基于 Gradio 的多智能体金融深度研究工作流应用，面向真实金融场景，结合行情 / 财报 / 宏观指标等结构化数据与新闻、社区话题等非结构化舆情信息，自动生成深度金融研究报告，适用于个股、行业和主题研究。项目源码地址：https://github.com/modelscope/ms-agent/tree/main/projects/fin_research

## 功能特性

- **多智能体金融研究工作流**：内置 Orchestrator、Searcher、Collector、Analyst、Aggregator 等专用智能体，完成任务拆解、数据抓取、定量分析、舆情研究与报告生成的完整链路。
- **金融与舆情双维度分析**：同时分析行情与财报等结构化数据，以及新闻、研报和社区观点等非结构化信息，输出全面的研究结论。
- **自动生成专业研究报告**：按业界常用方法论（如 MECE、SWOT、金字塔等）生成多章节研究报告，并提供过程报告（数据分析报告、舆情分析报告）。
- **可视化与文件输出**：自动生成图表、指标 CSV 以及最终报告压缩包，便于下载、本地留存和二次加工。
- **执行状态实时监控**：在界面中实时展示当前各个智能体的执行进度、状态消息以及整体任务耗时。

## 安装和运行

### 1. 安装依赖

```bash
pip install -r requirements.txt
```

### 2. 配置环境变量

建议使用 `.env` 文件统一管理配置：

```bash
cp .env.example .env
# 编辑 .env 文件，填入需要的环境变量
```

设置环境变量：

```bash
# LLM API（系统环境配置示例）
OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=your-api-url

# 搜索引擎（用于舆情研究，可选 exa 或 serpapi）
# 下列服务均提供一定的免费额度，请注册并配置API Key
# exa账号注册地址为https://exa.ai，SerpApi账号注册地址为https://serpapi.com
EXA_API_KEY=your_exa_api_key
SERPAPI_API_KEY=your_serpapi_api_key

# Gradio 并发控制，用于设置队列并发上限，默认 3
GRADIO_DEFAULT_CONCURRENCY_LIMIT=3

# 运行模式，本地运行设置为true即可
LOCAL_MODE=true

# 工作结果存储路径，不配置默认使用项目根目录下的 temp_workspace 目录
FIN_RESEARCH_WORKDIR=work_dir
```

### 3. 运行应用

```bash
python app.py
```

本地运行时，通常可在浏览器访问：`http://localhost:7860`（实际端口以控制台输出为准）。

## 使用说明（Gradio 界面）

1. **填写研究目标**  
   在左侧 “研究目标 / Research Goal” 文本框中，用中文或英文详细描述你的金融研究需求，例如：公司名称与股票代码、时间范围、关注的财务指标和研究角度等。

2. **配置舆情搜索参数**  
   - 搜索深度（Depth）：控制搜索的深度，一般设置为 1–2，数值越大，舆情研究越深入但耗时越长。  
   - 搜索宽度（Breadth）：控制每一层生成的搜索主题数，一般设置为 1–6，数值越大，覆盖面越广但耗时越长。

3. **可选搜索引擎 API Key**  
   在 “搜索引擎 API Key (可选 | Optional)” 中，可临时输入 Exa 或 SerpApi 的 Key，用于本次会话的舆情研究。如果留空，则使用环境变量或配置文件中的默认设置。

4. **启动研究任务**  
   点击 “启动研究 / Launch” 按钮后，系统会自动创建工作目录、启动多智能体工作流并开始执行。右侧 “执行状态 / Execution Status” 面板会实时滚动展示 Orchestrator、Searcher、Collector、Analyst、Aggregator 等各个智能体的执行过程和工作结果。

5. **查看与下载研究结果**  
   在下方 “研究结果 / Research Outputs” 区域中：
   - “数据分析” 标签页：查看结构化金融数据分析结果，并可下载数据分析报告。
   - “舆情洞察” 标签页：查看舆情研究过程与总结，并可下载舆情分析报告。
   - “输出文件” 标签页：查看当前任务输出目录中的文件列表。
   - “综合报告” 区域：查看最终整合后的综合研究报告，并可下载包含报告与关键资源的压缩包。

6. **清理工作区**  
   当你希望重新开始新的研究任务时，可点击 “清理工作区 / Clear” 按钮，终止当前任务并清空当前用户的工作目录及状态。

## 工作目录结构

每次运行都会在 `temp_workspace` 目录下为当前用户创建独立工作目录，并在其中创建本次任务的工作子目录。典型结构如下（以本地运行为例）：

```text
temp_workspace/
└── user_local_xxx/
    └── task_20251117_143022_a1b2c3d4/
        ├── plan.json                 # 任务拆解规划
        ├── financial_data/           # 采集到的结构化数据
        ├── sessions/                 # 数据分析过程中生成的图表和中间结果
        ├── search/                   # 舆情搜索结果
        ├── resources/                # 舆情研究过程中提取的图片等资源
        ├── analysis_report.md        # 金融数据分析报告
        ├── sentiment_report.md       # 舆情分析报告
        └── report.md                 # 最终综合研究报告。
```

每次点击 “启动研究” 会生成新的 `task_年月日_时分秒_随机ID` 任务目录，便于多轮实验与结果留存。

## 并发控制说明

- **系统并发限制**  
  - Gradio 层面的并发由 `GRADIO_DEFAULT_CONCURRENCY_LIMIT` 控制（默认 3），用于限制同时排队处理的请求数。  

- **用户级并发限制**  
  - 每个用户同一时间仅允许有一个金融研究任务在运行。  
  - 如果当前用户已有任务在执行，再次点击 “启动研究” 将无法执行，需要使用清理工作区按钮停止当前任务。

- **状态监控**  
  - 界面右侧会显示当前任务的执行状态、已运行时间以及各个智能体的阶段性结果，便于评估任务是否顺利进行。

## 注意事项

- 由于涉及大量的数据爬取、分析、舆情检索和模型推理，单次完整研究任务通常需要数分钟时间，请耐心等待执行完成。
- 外部数据源（如行情、财报和新闻接口）可能存在延迟、缺失或暂时不可用的情况，请在正式研究中对关键数据进行必要的人工复核。
- 建议定期清理 `temp_workspace` 目录中的历史任务结果，以节省存储空间。
- 在高并发和长时间运行场景下，建议为运行环境分配充足的 CPU、内存与网络带宽资源，以获得更稳定的体验。
