DeepResearch
February 12, 2026 Β· View on GitHub
π Introduction
DeepResearch is an intelligent research Agent built on Spring AI Alibaba Graph, designed to tackle complex research tasks. It adopts a Multi-Agent collaborative pattern, supporting dynamic task planning and execution. The system integrates multi-source online search and Hybrid RAG technology, combined with Secure Sandbox for Python code execution, enabling efficient data analysis. Through Reflection, HITL, and Self-evolution Memory, the Agent can continuously self-optimize, ultimately outputting high-quality research reports with deep insights.
β¨ Technical Features
- πPlan and Execute: Dynamic planning and automatic execution for complex problems
- π€Multi Agent: Multi-agent collaboration (e.g., Researcher, Coder)
- πOnline Search: Integrated multi-source search services including Tavily, Jina, Aliyun AI Search
- πHybrid RAG: Combines vector and keyword retrieval for comprehensive information acquisition
- πReflection: Agent self-reflection for continuous output quality optimization
- πΆββοΈHITL: Human-in-the-loop feedback for enhanced controllability
- π§¬Self-evolution Memory: Self-evolving memory structure and user role memory based on interaction feedback
- ποΈMCP Allocation: Support for MCP allocation in multi-agent scenarios
- πSecure Sandbox: Secure Python code execution in Docker sandbox environment
- πReport Generation: Supports HTML report preview, Markdown, PDF and other report formats
π Project Architecture
DeepResearch/
βββ βββ src/
β βββ agents # Multi-Agent initialization, MCP allocation, observability initialization
β βββ config # Graph construction, project Config classes
β βββ controller # HTTP endpoints
β βββ dispatcher # Graph EdgeAction
β βββ model # Base project entities
β βββ node # Graph key node definitions
β βββ rag # RAG core implementation
β βββ repository # Model configuration loading
β βββ serializer # Message serialization implementation
β βββ service # Business logic implementation
β βββ tool # Agent Tool definitions
β βββ util # Project utilities
β βββ DeepResearchApplication # Application entry point
βββ βββ resource/
β βββ prompts # Core prompts
β βββ mcp-config.json # Agent MCP configuration
β βββ model-config.json # Multi-Agent model configuration
βββ βββ website-weight-config.json # Search engine weight configuration
π§© System Architecture

π Running Example


π Quick Start
Prerequisites
- Java 17+
- Maven 3.6+
- DashScope API Key
1. Clone and Build
git clone https://github.com/spring-ai-alibaba/deepresearch.git
cd deepresearch
mvn clean install -DskipTests
2. Configure API Key
export AI_DASHSCOPE_API_KEY=your-api-key-here
3. Start Application
Start from Project
Backend:
cd deepresearch
mvn spring-boot:run
Frontend:
cd ui-vue3
pnpm install
npm run dev
Docker Startup
- Build the Docker image from the project directory. This may take ~5 minutes depending on network speed.
cd deepresearch
docker build -t alibaba-deepresearch:v1.0 .
- After building, run the container and set environment variables:
docker run -d \
--name alibaba-deepresearch \
-e AI_DASHSCOPE_API_KEY="your_key_here" \
-e TAVILY_API_KEY="your_key_here" \
# -e JINA_API_KEY="your_key_here" \ optional
-p 8080:8080 \
alibaba-deepresearch:v1.0
- Alternatively, use docker-compose to start Redis, ElasticSearch, and the app:
docker-compose up
π‘Note:
- Set API keys in the
.envfile- Config files are under
dockerConfig; you can also set keys and related configs there
4. Configuration
5. Debug and Observability
Supports integration with Langfuse observability system. See documentation for configuration details.
Related API Documentation
Test Cases
See DeepResearch.http for sample requests.
curl --location 'http://localhost:8080/chat/stream' \
--header 'Content-Type: application/json' \
--data '{
"thread_id": "__default_",
"enable_deepresearch": false,
"query": "Please analyze the reasons for the explosive popularity of Pop Mart",
"max_step_num": 2,
"auto_accepted_plan": true
}'
π Reference Documentation
π€ Join Community & Contributing
Contributions are welcome! Please refer to CONTRIBUTING for guidelines.
π License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Contributors
Thanks to the following contributors for improving this project (unordered):
yingziγzhouyouγNOBODYγxiaohai-78γVLSMBγdisaster1-teskγAllen HuγMakotoγsixiyidaγGfangxinγAliciaHuγswlγhuangzhenγTfh-Yqfγanyin-xyzγzhou youkangγsupermonkeyguysγyuluo-yxγKen Liuγco63oxγbenym