本地启动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
相关推荐
北京地铁1号线1 天前
1.4 RAG中的Schema
数据库·rag
deephub1 天前
构建自己的AI编程助手:基于RAG的上下文感知实现方案
人工智能·机器学习·ai编程·rag·ai编程助手
laplace01232 天前
claude code架构猜测总结
架构·大模型·llm·agent·rag
lkbhua莱克瓦242 天前
RAG到RGA:生成式AI的范式演进
人工智能·llm·prompt·大语言模型·rag·rga
洛阳泰山2 天前
智能体项目MaxKB4J - 本地部署与开发完整指南
java·agent·工作流·rag·智能体·maxkb
linmoo19862 天前
Langchain4j 系列之十九 - RAG之Retrieval
人工智能·langchain·retrieval·rag·langchain4j
CodeCaptain2 天前
dify的知识检索在编排中的释义与作用
经验分享·ai·dify
夏日白云2 天前
《PDF解析工程实录》第 17 章|内容流里“看得见却看不见”的字符:那些幽灵文字从哪来?
pdf·llm·大语言模型·rag·文档解析
还是码字踏实2 天前
智能体平台Dify的架构详解
dify·智能体平台·flask+celery·workflow/dsl·python queue·gevent 协程优化·ssrf proxy 防护
七夜zippoe2 天前
RabbitMQ与Celery深度集成:构建高性能Python异步任务系统
分布式·python·rabbitmq·celery·amqp