1 Matching Annotations
- Mar 2025
-
blog.csdn.net blog.csdn.net
-
这是一份Dify平台的环境变量配置文件,对平台的各项功能、服务和组件进行参数设置。以下是对其主要部分的详细解读: 1. 通用变量(Common Variables) CONSOLE_API_URL:控制台API的后端URL,用于拼接授权回调。若为空,使用同一域名。CONSOLE_WEB_URL:控制台Web前端的URL,用于拼接前端地址和CORS配置。SERVICE_API_URL、APP_API_URL、APP_WEB_URL:分别为服务API、Web应用API后端及Web应用的URL,用于向前端展示或声明后端地址。FILES_URL:文件预览或下载的URL前缀,用于前端展示或多模型输入。 2. 服务器配置(Server Configuration) 日志相关: LOG_LEVEL:应用的日志级别,可选择 DEBUG、INFO、WARNING、ERROR、CRITICAL。LOG_FILE:日志文件路径。LOG_FILE_MAX_SIZE、LOG_FILE_BACKUP_COUNT:分别指定日志文件最大大小(MB)和最大备份数量。LOG_DATEFORMAT、LOG_TZ:日志日期格式和时区。 调试模式: DEBUG:应用调试模式,默认 false,本地开发建议开启。FLASK_DEBUG:Flask调试模式,开启可在界面输出跟踪信息。 其他: SECRET_KEY:用于安全签名会话cookie和加密数据库敏感信息的密钥。INIT_PASSWORD:管理员用户初始化密码,不设置则创建初始管理员账户时不提示密码。DEPLOY_ENV:部署环境,可选择 PRODUCTION、TESTING,默认 PRODUCTION。CHECK_UPDATE_URL:版本检查的URL。OPENAI_API_BASE:OpenAI API的基础地址,默认是官方地址,可替换为国内镜像或本地兼容API地址。MIGRATION_ENABLED:是否在应用启动前执行数据库迁移。FILES_ACCESS_TIMEOUT:文件访问超时时间(秒)。ACCESS_TOKEN_EXPIRE_MINUTES、REFRESH_TOKEN_EXPIRE_DAYS:分别为访问令牌和刷新令牌的过期时间。APP_MAX_ACTIVE_REQUESTS、APP_MAX_EXECUTION_TIME:应用的最大活动请求数和最大执行时间。 3. 容器启动相关配置(Container Startup Related Configuration) DIFY_BIND_ADDRESS、DIFY_PORT:API服务绑定的地址和端口。SERVER_WORKER_AMOUNT、SERVER_WORKER_CLASS、SERVER_WORKER_CONNECTIONS:API服务器工作进程的数量、类型和默认连接数。CELERY_WORKER_CLASS、CELERY_WORKER_AMOUNT:Celery工作进程的类型和数量。CELERY_AUTO_SCALE、CELERY_MAX_WORKERS、CELERY_MIN_WORKERS:是否启用Celery工作进程自动缩放及最大、最小工作进程数。GUNICORN_TIMEOUT:Gunicorn请求处理超时时间。API_TOOL_DEFAULT_CONNECT_TIMEOUT、API_TOOL_DEFAULT_READ_TIMEOUT:API工具的默认连接和读取超时时间。 4. 数据库配置(Database Configuration) DB_USERNAME、DB_PASSWORD、DB_HOST、DB_PORT、DB_DATABASE:PostgreSQL数据库的用户名、密码、主机、端口和数据库名。SQLALCHEMY_POOL_SIZE、SQLALCHEMY_POOL_RECYCLE、SQLALCHEMY_ECHO:数据库连接池的大小、回收时间和是否打印SQL语句。POSTGRES_MAX_CONNECTIONS、POSTGRES_SHARED_BUFFERS、POSTGRES_WORK_MEM、POSTGRES_MAINTENANCE_WORK_MEM、POSTGRES_EFFECTIVE_CACHE_SIZE:PostgreSQL数据库的相关资源配置参数。 5. Redis配置(Redis Configuration) REDIS_HOST、REDIS_PORT、REDIS_USERNAME、REDIS_PASSWORD、REDIS_USE_SSL、REDIS_DB:Redis的主机、端口、用户名、密码、是否使用SSL及数据库编号。REDIS_USE_SENTINEL、REDIS_SENTINELS、REDIS_SENTINEL_SERVICE_NAME、REDIS_SENTINEL_USERNAME、REDIS_SENTINEL_PASSWORD、REDIS_SENTINEL_SOCKET_TIMEOUT:是否使用Redis Sentinel模式及相关配置。REDIS_USE_CLUSTERS、REDIS_CLUSTERS、REDIS_CLUSTERS_PASSWORD:是否使用Redis Cluster模式及相关配置。 6. Celery配置(Celery Configuration) CELERY_BROKER_URL、BROKER_USE_SSL:Celery使用的消息代理URL及是否使用SSL。CELERY_USE_SENTINEL、CELERY_SENTINEL_MASTER_NAME、CELERY_SENTINEL_SOCKET_TIMEOUT:若使用Redis Sentinel,相关的配置参数。 7. CORS配置(CORS Configuration) WEB_API_CORS_ALLOW_ORIGINS、CONSOLE_CORS_ALLOW_ORIGINS:分别指定Web API和控制台API的跨域请求允许来源。 8. 文件存储配置(File Storage Configuration) STORAGE_TYPE:文件存储类型,如 opendal。OPENDAL_SCHEME、OPENDAL_FS_ROOT:OpenDAL存储方案及本地文件系统根目录。S3_*、AZURE_BLOB_*、GOOGLE_STORAGE_*等:不同云存储服务(S3、Azure Blob、Google Storage等)的配置参数。 9. 向量数据库配置(Vector Database Configuration) VECTOR_STORE:向量存储类型,支持多种类型如 weaviate、qdrant 等。针对不同向量存储类型(如 WEAVIATE_*、QDRANT_*、MILVUS_* 等)的相应配置参数,包括端点URL、API密钥、超时时间等。 10. 知识配置(Knowledge Configuration) UPLOAD_FILE_SIZE_LIMIT、UPLOAD_FILE_BATCH_LIMIT:上传文件的大小限制(MB)和一次上传的最大文件数。ETL_TYPE:ETL类型,可选择 dify 或 Unstructured。UNSTRUCTURED_API_URL、UNSTRUCTURED_API_KEY:当 ETL_TYPE 为 Unstructured 时,Unstructured.io的API路径和密钥。 11. 模型配置(Model Configuration) PROMPT_GENERATION_MAX_TOKENS、CODE_GENERATION_MAX_TOKENS:提示生成和代码生成工具中允许的最大令牌数。 12. 多模态配置(Multi-modal Configuration) MULTIMODAL_SEND_FORMAT:多模态模型输入的图像、视频、音频、文档格式,默认 base64,也可选择 url。UPLOAD_IMAGE_FILE_SIZE_LIMIT、UPLOAD_VIDEO_FILE_SIZE_LIMIT、UPLOAD_AUDIO_FILE_SIZE_LIMIT:分别为上传图像、视频、音频文件的大小限制(MB)。 13. Sentry配置(Sentry Configuration) SENTRY_DSN、API_SENTRY_DSN、WEB_SENTRY_DSN:Sentry服务的DSN地址,用于应用监控和错误日志跟踪。API_SENTRY_TRACES_SAMPLE_RATE、API_SENTRY_PROFILES_SAMPLE_RATE:API服务Sentry事件和配置文件的报告比率。 14. Notion集成配置(Notion Integration Configuration) NOTION_INTEGRATION_TYPE:Notion集成类型,可选择 public 或 internal。NOTION_CLIENT_SECRET、NOTION_CLIENT_ID、NOTION_INTERNAL_SECRET:根据集成类型所需的客户端密钥、ID或内部密钥。 15. 邮件相关配置(Mail related configuration) MAIL_TYPE:邮件类型,支持 resend 或 smtp。MAIL_DEFAULT_SEND_FROM:默认发件人邮箱地址。RESEND_API_URL、RESEND_API_KEY:当 MAIL_TYPE 为 resend 时,Resend邮件服务的API地址和密钥。SMTP_SERVER、SMTP_PORT、SMTP_USERNAME、SMTP_PASSWORD、SMTP_USE_TLS、SMTP_OPPORTUNISTIC_TLS:当 MAIL_TYPE 为 smtp 时,SMTP服务器的相关配置。 16. 其他配置(Others Configuration) INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH:索引时分割令牌的最大长度。INVITE_EXPIRY_HOURS、RESET_PASSWORD_TOKEN_EXPIRY_MINUTES:成员邀请链接和重置密码令牌的有效时间。CODE_EXECUTION_*:代码执行服务的端点、API密钥及各种超时时间、数据限制等配置。WORKFLOW_*:工作流运行时的各种配置,如最大执行步骤、时间、调用深度、变量大小等。HTTP_REQUEST_NODE_*:工作流中HTTP请求节点的配置,如最大二进制和文本大小、SSL验证。SSRF_PROXY_*:SSRF代理服务器的HTTP和HTTPS URL。LOOP_NODE_MAX_COUNT:工作流中循环节点的最大循环次数。MAX_TOOLS_NUM、MAX_PARALLEL_LIMIT:代理中可使用的最大工具数和工作流中最大并行分支数。 17. 各服务特定环境变量 TEXT_GENERATION_TIMEOUT_MS:Web服务中文本生成的超时时间(毫秒)。PGUSER、POSTGRES_PASSWORD、POSTGRES_DB、PGDATA:数据库服务的相关环境变量。SANDBOX_*:沙箱服务的API密钥、运行模式、超时时间等配置。WEAVIATE_*:当使用Weaviate作为向量存储时的相关配置。CHROMA_*:当使用Chroma作为向量存储时的认证和持久化配置。ORACLE_*:当使用Oracle作为向量存储时的相关配置。MILVUS_*:当使用Milvus作为向量存储时的ETCD、MinIO等相关配置。PGVECTOR_*:当使用pgvector或pgvecto - rs作为向量存储时的数据库相关配置。OPENSEARCH_*:当使用OpenSearch作为向量存储时的相关配置。 18. Nginx反向代理配置 NGINX_*:Nginx服务器的配置,包括服务器名称、是否启用HTTPS、端口、SSL证书及密钥文件名、协议、工作进程数、客户端最大请求体大小、保持连接超时时间、代理读写超时时间等。CERTBOT_*:Certbot获取证书的相关配置,如邮箱、域名、命令选项。 19. SSRF代理配置 SSRF_*:SSRF代理的端口、核心转储目录、反向代理端口、超时时间等配置。 20. 其他杂项配置 COMPOSE_PROFILES:根据向量数据库类型指定Docker Compose配置文件。POSITION_TOOL_*、POSITION_PROVIDER_*:用于指定应用中可使用的工具和模型提供商,通过引脚、包含或排除列表配置。CSP_WHITELIST:内容安全策略(CSP)的白名单。CREATE_TIDB_SERVICE_JOB_ENABLED:是否启用创建TiDB服务作业。MAX_SUBMIT_COUNT:并行节点执行时线程池中的最大提交线程数。TOP_K_MAX_VALUE:RAG中top - k值的最大值。 21. 插件守护进程配置 DB_PLUGIN_DATABASE:插件数据库名称。EXPOSE_PLUGIN_DAEMON_PORT、PLUGIN_DAEMON_PORT:插件守护进程暴露的端口。PLUGIN_DAEMON_KEY、PLUGIN_DAEMON_URL:插件守护进程的密钥和URL。PLUGIN_MAX_PACKAGE_SIZE:插件最大包大小。PLUGIN_PPROF_ENABLED:是否启用插件性能分析。PLUGIN_DEBUGGING_*:插件调试相关的主机和端口配置。PLUGIN_DIFY_INNER_API_KEY、PLUGIN_DIFY_INNER_API_URL:插件与Dify内部API通信的密钥和URL。ENDPOINT_URL_TEMPLATE:端点URL模板。MARKETPLACE_ENABLED、MARKETPLACE_API_URL:是否启用插件市场及市场API URL。FORCE_VERIFYING_SIGNATURE:是否强制验证签名。PLUGIN_PYTHON_ENV_INIT_TIMEOUT、PLUGIN_MAX_EXECUTION_TIMEOUT、PIP_MIRROR_URL:插件Python环境初始化超时时间、最大执行超时时间和PIP镜像URL。
-[ ] dify 学习 #dify #AI
Tags
Annotators
URL
-