tools/firecrawl/INSTALLATION.md
This guide will help you install and configure the Firecrawl integration plugin for RAGFlow.
Download the plugin:
git clone https://github.com/firecrawl/firecrawl.git
cd firecrawl/ragflow-firecrawl-integration
Install dependencies:
pip install -r plugin/firecrawl/requirements.txt
Copy plugin to RAGFlow:
# Assuming RAGFlow is installed in /opt/ragflow
cp -r plugin/firecrawl /opt/ragflow/plugin/
Restart RAGFlow:
# Restart RAGFlow services
docker compose -f /opt/ragflow/docker/docker-compose.yml restart
pip install ragflow-firecrawl-integration
Clone the repository:
git clone https://github.com/firecrawl/firecrawl.git
cd firecrawl/ragflow-firecrawl-integration
Install in development mode:
pip install -e .
fc-)Access RAGFlow UI:
Add Firecrawl Data Source:
Test Connection:
| Option | Description | Default | Required |
|---|---|---|---|
api_key | Your Firecrawl API key | - | Yes |
api_url | Firecrawl API endpoint | https://api.firecrawl.dev | No |
max_retries | Maximum retry attempts | 3 | No |
timeout | Request timeout (seconds) | 30 | No |
rate_limit_delay | Delay between requests (seconds) | 1.0 | No |
You can also configure the plugin using environment variables:
export FIRECRAWL_API_KEY="fc-your-api-key-here"
export FIRECRAWL_API_URL="https://api.firecrawl.dev"
export FIRECRAWL_MAX_RETRIES="3"
export FIRECRAWL_TIMEOUT="30"
export FIRECRAWL_RATE_LIMIT_DELAY="1.0"
# Check if the plugin directory exists
ls -la /opt/ragflow/plugin/firecrawl/
# Should show:
# __init__.py
# firecrawl_connector.py
# firecrawl_config.py
# firecrawl_processor.py
# firecrawl_ui.py
# ragflow_integration.py
# requirements.txt
# Run the example script
cd /opt/ragflow/plugin/firecrawl/
python example_usage.py
# Check RAGFlow server logs
docker logs docker-ragflow-cpu-1
# Look for messages like:
# "Firecrawl plugin loaded successfully"
# "Firecrawl data source registered"
Plugin not appearing in RAGFlow:
API Key Invalid:
fc-Connection Timeout:
Rate Limiting:
rate_limit_delay valueEnable debug logging to see detailed information:
import logging
logging.basicConfig(level=logging.DEBUG)
# Verify all dependencies are installed
pip list | grep -E "(aiohttp|pydantic|requests)"
# Should show:
# aiohttp>=3.8.0
# pydantic>=2.0.0
# requests>=2.28.0
To remove the plugin:
Remove plugin directory:
rm -rf /opt/ragflow/plugin/firecrawl/
Restart RAGFlow:
docker compose -f /opt/ragflow/docker/docker-compose.yml restart
Remove dependencies (optional):
pip uninstall ragflow-firecrawl-integration
If you encounter issues:
After successful installation: