本地启动Flower来监控Dify的Celery任务队列

本地启动Flower来监控Dify的Celery任务队列

说明:

启动Middleware服务

bash 复制代码
git clone https://github.com/langgenius/dify.git
cd dify
cd docker
cp middleware.env.example middleware.env
docker compose -f docker-compose.middleware.yaml --profile weaviate -p dify up -d

准备SECRET_KEY:

bash 复制代码
cd ../api
cp .env.example .env
# Generate a `SECRET_KEY` in the `.env` file.
sed -i "/^SECRET_KEY=/c\SECRET_KEY=$(openssl rand -base64 42)" .env

创建Python环境并安装依赖:

bash 复制代码
python3 -m venv venv
source venv/bin/activate
pip install poetry
poetry run which python
poetry shell
poetry install
poetry add flower

运行迁移命令使得数据库保持最新:

bash 复制代码
poetry run python -m flask db upgrade

注释掉api/app.py中的monkey.patch_all(),注释后头部代码如下:

python 复制代码
import os

if os.environ.get("DEBUG", "false").lower() != "true":
    from gevent import monkey

    # monkey.patch_all()

    import grpc.experimental.gevent

    grpc.experimental.gevent.init_gevent()

如果不关闭monkey patching,flower的页面将无法正常刷新出来,见我在flower库上提出的issue: https://github.com/mher/flower/issues/1390

启动Flask API服务:

bash 复制代码
poetry run python -m flask run --host 0.0.0.0 --port=5001 --debug

启动Web服务:

bash 复制代码
cd ../web
npm install
npm run dev

启动Celery任务队列:

bash 复制代码
# source venv/bin/activate
poetry run python -m celery -A app.celery worker -P gevent -c 1 --loglevel INFO -Q dataset,generation,mail,ops_trace,app_deletion

启动Flower:

bash 复制代码
# source venv/bin/activate
poetry run python -m celery -A app.celery flower --port=5555 --address='0.0.0.0' --debug --enable_events
相关推荐
一只小bit5 小时前
LlamaIndex框架:简单RAG框架的全过程实现手册
llm·milvus·rag·llamaindex·deepseek
云烟成雨TD7 小时前
LlamaIndex 系列【24】检索增强策略:交叉编码器(Cross‑Encoder)
ai·agent·rag·llamaindex
码农哈丁9 小时前
用 Trait 给系统留出后路:RAG 存储层如何做到 5 种后端可插拔
人工智能·知识图谱·rag
2601_9620777115 小时前
Spring AI企业级RAG落地实战:从基础架构到生产级高可用方案
知识库问答·rag·springai·企业级架构·高可用方案
AI-Frontiers1 天前
面向AIGC的检索增强生成综述
rag
东莞市云毅网络有限公司2 天前
企业知识库问答的自动化评测:构建 golden set 与回归脚本
python·rag·检索·企业知识库·评测集
东莞市云毅网络有限公司3 天前
企业非结构化资料拆分成可引用片段:一套能跑通的预处理流水线
python·数据清洗·rag·企业知识库·文档解析
像风一样自由20203 天前
23.OCR在知识库中的作用扫描件和图片文字如何进入RAG
postgresql·大模型·ocr·rag
梦想不只是梦与想3 天前
大模型系列(三):提示工程、RAG 与 Agent
大模型·agent·rag
ShallWeL3 天前
RAG Embedding 模型替换与索引回归
人工智能·embedding·知识库·工作流·rag