You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570
  1. # Your App secret key will be used for securely signing the session cookie
  2. # Make sure you are changing this key for your deployment with a strong key.
  3. # You can generate a strong key using `openssl rand -base64 42`.
  4. # Alternatively you can set it with `SECRET_KEY` environment variable.
  5. SECRET_KEY=
  6. # Ensure UTF-8 encoding
  7. LANG=en_US.UTF-8
  8. LC_ALL=en_US.UTF-8
  9. PYTHONIOENCODING=utf-8
  10. # Console API base URL
  11. CONSOLE_API_URL=http://localhost:5001
  12. CONSOLE_WEB_URL=http://localhost:3000
  13. # Service API base URL
  14. SERVICE_API_URL=http://localhost:5001
  15. # Web APP base URL
  16. APP_WEB_URL=http://localhost:3000
  17. # Files URL
  18. FILES_URL=http://localhost:5001
  19. # INTERNAL_FILES_URL is used for plugin daemon communication within Docker network.
  20. # Set this to the internal Docker service URL for proper plugin file access.
  21. # Example: INTERNAL_FILES_URL=http://api:5001
  22. INTERNAL_FILES_URL=http://127.0.0.1:5001
  23. # The time in seconds after the signature is rejected
  24. FILES_ACCESS_TIMEOUT=300
  25. # Access token expiration time in minutes
  26. ACCESS_TOKEN_EXPIRE_MINUTES=60
  27. # Refresh token expiration time in days
  28. REFRESH_TOKEN_EXPIRE_DAYS=30
  29. # redis configuration
  30. REDIS_HOST=localhost
  31. REDIS_PORT=6379
  32. REDIS_USERNAME=
  33. REDIS_PASSWORD=difyai123456
  34. REDIS_USE_SSL=false
  35. # SSL configuration for Redis (when REDIS_USE_SSL=true)
  36. REDIS_SSL_CERT_REQS=CERT_NONE
  37. # Options: CERT_NONE, CERT_OPTIONAL, CERT_REQUIRED
  38. REDIS_SSL_CA_CERTS=
  39. # Path to CA certificate file for SSL verification
  40. REDIS_SSL_CERTFILE=
  41. # Path to client certificate file for SSL authentication
  42. REDIS_SSL_KEYFILE=
  43. # Path to client private key file for SSL authentication
  44. REDIS_DB=0
  45. # redis Sentinel configuration.
  46. REDIS_USE_SENTINEL=false
  47. REDIS_SENTINELS=
  48. REDIS_SENTINEL_SERVICE_NAME=
  49. REDIS_SENTINEL_USERNAME=
  50. REDIS_SENTINEL_PASSWORD=
  51. REDIS_SENTINEL_SOCKET_TIMEOUT=0.1
  52. # redis Cluster configuration.
  53. REDIS_USE_CLUSTERS=false
  54. REDIS_CLUSTERS=
  55. REDIS_CLUSTERS_PASSWORD=
  56. # celery configuration
  57. CELERY_BROKER_URL=redis://:difyai123456@localhost:${REDIS_PORT}/1
  58. CELERY_BACKEND=redis
  59. # PostgreSQL database configuration
  60. DB_USERNAME=postgres
  61. DB_PASSWORD=difyai123456
  62. DB_HOST=localhost
  63. DB_PORT=5432
  64. DB_DATABASE=dify
  65. # Storage configuration
  66. # use for store upload files, private keys...
  67. # storage type: opendal, s3, aliyun-oss, azure-blob, baidu-obs, google-storage, huawei-obs, oci-storage, tencent-cos, volcengine-tos, supabase
  68. STORAGE_TYPE=opendal
  69. # Apache OpenDAL storage configuration, refer to https://github.com/apache/opendal
  70. OPENDAL_SCHEME=fs
  71. OPENDAL_FS_ROOT=storage
  72. # S3 Storage configuration
  73. S3_USE_AWS_MANAGED_IAM=false
  74. S3_ENDPOINT=https://your-bucket-name.storage.s3.cloudflare.com
  75. S3_BUCKET_NAME=your-bucket-name
  76. S3_ACCESS_KEY=your-access-key
  77. S3_SECRET_KEY=your-secret-key
  78. S3_REGION=your-region
  79. # Azure Blob Storage configuration
  80. AZURE_BLOB_ACCOUNT_NAME=your-account-name
  81. AZURE_BLOB_ACCOUNT_KEY=your-account-key
  82. AZURE_BLOB_CONTAINER_NAME=your-container-name
  83. AZURE_BLOB_ACCOUNT_URL=https://<your_account_name>.blob.core.windows.net
  84. # Aliyun oss Storage configuration
  85. ALIYUN_OSS_BUCKET_NAME=your-bucket-name
  86. ALIYUN_OSS_ACCESS_KEY=your-access-key
  87. ALIYUN_OSS_SECRET_KEY=your-secret-key
  88. ALIYUN_OSS_ENDPOINT=your-endpoint
  89. ALIYUN_OSS_AUTH_VERSION=v1
  90. ALIYUN_OSS_REGION=your-region
  91. # Don't start with '/'. OSS doesn't support leading slash in object names.
  92. ALIYUN_OSS_PATH=your-path
  93. # Google Storage configuration
  94. GOOGLE_STORAGE_BUCKET_NAME=your-bucket-name
  95. GOOGLE_STORAGE_SERVICE_ACCOUNT_JSON_BASE64=your-google-service-account-json-base64-string
  96. # Tencent COS Storage configuration
  97. TENCENT_COS_BUCKET_NAME=your-bucket-name
  98. TENCENT_COS_SECRET_KEY=your-secret-key
  99. TENCENT_COS_SECRET_ID=your-secret-id
  100. TENCENT_COS_REGION=your-region
  101. TENCENT_COS_SCHEME=your-scheme
  102. # Huawei OBS Storage Configuration
  103. HUAWEI_OBS_BUCKET_NAME=your-bucket-name
  104. HUAWEI_OBS_SECRET_KEY=your-secret-key
  105. HUAWEI_OBS_ACCESS_KEY=your-access-key
  106. HUAWEI_OBS_SERVER=your-server-url
  107. # Baidu OBS Storage Configuration
  108. BAIDU_OBS_BUCKET_NAME=your-bucket-name
  109. BAIDU_OBS_SECRET_KEY=your-secret-key
  110. BAIDU_OBS_ACCESS_KEY=your-access-key
  111. BAIDU_OBS_ENDPOINT=your-server-url
  112. # OCI Storage configuration
  113. OCI_ENDPOINT=your-endpoint
  114. OCI_BUCKET_NAME=your-bucket-name
  115. OCI_ACCESS_KEY=your-access-key
  116. OCI_SECRET_KEY=your-secret-key
  117. OCI_REGION=your-region
  118. # Volcengine tos Storage configuration
  119. VOLCENGINE_TOS_ENDPOINT=your-endpoint
  120. VOLCENGINE_TOS_BUCKET_NAME=your-bucket-name
  121. VOLCENGINE_TOS_ACCESS_KEY=your-access-key
  122. VOLCENGINE_TOS_SECRET_KEY=your-secret-key
  123. VOLCENGINE_TOS_REGION=your-region
  124. # Supabase Storage Configuration
  125. SUPABASE_BUCKET_NAME=your-bucket-name
  126. SUPABASE_API_KEY=your-access-key
  127. SUPABASE_URL=your-server-url
  128. # CORS configuration
  129. WEB_API_CORS_ALLOW_ORIGINS=http://localhost:3000,*
  130. CONSOLE_CORS_ALLOW_ORIGINS=http://localhost:3000,*
  131. # Vector database configuration
  132. # Supported values are `weaviate`, `qdrant`, `milvus`, `myscale`, `relyt`, `pgvector`, `pgvecto-rs`, `chroma`, `opensearch`, `oracle`, `tencent`, `elasticsearch`, `elasticsearch-ja`, `analyticdb`, `couchbase`, `vikingdb`, `oceanbase`, `opengauss`, `tablestore`,`vastbase`,`tidb`,`tidb_on_qdrant`,`baidu`,`lindorm`,`huawei_cloud`,`upstash`, `matrixone`.
  133. VECTOR_STORE=weaviate
  134. # Prefix used to create collection name in vector database
  135. VECTOR_INDEX_NAME_PREFIX=Vector_index
  136. # Weaviate configuration
  137. WEAVIATE_ENDPOINT=http://localhost:8080
  138. WEAVIATE_API_KEY=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih
  139. WEAVIATE_GRPC_ENABLED=false
  140. WEAVIATE_BATCH_SIZE=100
  141. # Qdrant configuration, use `http://localhost:6333` for local mode or `https://your-qdrant-cluster-url.qdrant.io` for remote mode
  142. QDRANT_URL=http://localhost:6333
  143. QDRANT_API_KEY=difyai123456
  144. QDRANT_CLIENT_TIMEOUT=20
  145. QDRANT_GRPC_ENABLED=false
  146. QDRANT_GRPC_PORT=6334
  147. QDRANT_REPLICATION_FACTOR=1
  148. #Couchbase configuration
  149. COUCHBASE_CONNECTION_STRING=127.0.0.1
  150. COUCHBASE_USER=Administrator
  151. COUCHBASE_PASSWORD=password
  152. COUCHBASE_BUCKET_NAME=Embeddings
  153. COUCHBASE_SCOPE_NAME=_default
  154. # Milvus configuration
  155. MILVUS_URI=http://127.0.0.1:19530
  156. MILVUS_TOKEN=
  157. MILVUS_USER=root
  158. MILVUS_PASSWORD=Milvus
  159. MILVUS_ANALYZER_PARAMS=
  160. # MyScale configuration
  161. MYSCALE_HOST=127.0.0.1
  162. MYSCALE_PORT=8123
  163. MYSCALE_USER=default
  164. MYSCALE_PASSWORD=
  165. MYSCALE_DATABASE=default
  166. MYSCALE_FTS_PARAMS=
  167. # Relyt configuration
  168. RELYT_HOST=127.0.0.1
  169. RELYT_PORT=5432
  170. RELYT_USER=postgres
  171. RELYT_PASSWORD=postgres
  172. RELYT_DATABASE=postgres
  173. # Tencent configuration
  174. TENCENT_VECTOR_DB_URL=http://127.0.0.1
  175. TENCENT_VECTOR_DB_API_KEY=dify
  176. TENCENT_VECTOR_DB_TIMEOUT=30
  177. TENCENT_VECTOR_DB_USERNAME=dify
  178. TENCENT_VECTOR_DB_DATABASE=dify
  179. TENCENT_VECTOR_DB_SHARD=1
  180. TENCENT_VECTOR_DB_REPLICAS=2
  181. TENCENT_VECTOR_DB_ENABLE_HYBRID_SEARCH=false
  182. # ElasticSearch configuration
  183. ELASTICSEARCH_HOST=127.0.0.1
  184. ELASTICSEARCH_PORT=9200
  185. ELASTICSEARCH_USERNAME=elastic
  186. ELASTICSEARCH_PASSWORD=elastic
  187. # PGVECTO_RS configuration
  188. PGVECTO_RS_HOST=localhost
  189. PGVECTO_RS_PORT=5431
  190. PGVECTO_RS_USER=postgres
  191. PGVECTO_RS_PASSWORD=difyai123456
  192. PGVECTO_RS_DATABASE=postgres
  193. # PGVector configuration
  194. PGVECTOR_HOST=127.0.0.1
  195. PGVECTOR_PORT=5433
  196. PGVECTOR_USER=postgres
  197. PGVECTOR_PASSWORD=postgres
  198. PGVECTOR_DATABASE=postgres
  199. PGVECTOR_MIN_CONNECTION=1
  200. PGVECTOR_MAX_CONNECTION=5
  201. # TableStore Vector configuration
  202. TABLESTORE_ENDPOINT=https://instance-name.cn-hangzhou.ots.aliyuncs.com
  203. TABLESTORE_INSTANCE_NAME=instance-name
  204. TABLESTORE_ACCESS_KEY_ID=xxx
  205. TABLESTORE_ACCESS_KEY_SECRET=xxx
  206. TABLESTORE_NORMALIZE_FULLTEXT_BM25_SCORE=false
  207. # Tidb Vector configuration
  208. TIDB_VECTOR_HOST=xxx.eu-central-1.xxx.aws.tidbcloud.com
  209. TIDB_VECTOR_PORT=4000
  210. TIDB_VECTOR_USER=xxx.root
  211. TIDB_VECTOR_PASSWORD=xxxxxx
  212. TIDB_VECTOR_DATABASE=dify
  213. # Tidb on qdrant configuration
  214. TIDB_ON_QDRANT_URL=http://127.0.0.1
  215. TIDB_ON_QDRANT_API_KEY=dify
  216. TIDB_ON_QDRANT_CLIENT_TIMEOUT=20
  217. TIDB_ON_QDRANT_GRPC_ENABLED=false
  218. TIDB_ON_QDRANT_GRPC_PORT=6334
  219. TIDB_PUBLIC_KEY=dify
  220. TIDB_PRIVATE_KEY=dify
  221. TIDB_API_URL=http://127.0.0.1
  222. TIDB_IAM_API_URL=http://127.0.0.1
  223. TIDB_REGION=regions/aws-us-east-1
  224. TIDB_PROJECT_ID=dify
  225. TIDB_SPEND_LIMIT=100
  226. # Chroma configuration
  227. CHROMA_HOST=127.0.0.1
  228. CHROMA_PORT=8000
  229. CHROMA_TENANT=default_tenant
  230. CHROMA_DATABASE=default_database
  231. CHROMA_AUTH_PROVIDER=chromadb.auth.token_authn.TokenAuthenticationServerProvider
  232. CHROMA_AUTH_CREDENTIALS=difyai123456
  233. # AnalyticDB configuration
  234. ANALYTICDB_KEY_ID=your-ak
  235. ANALYTICDB_KEY_SECRET=your-sk
  236. ANALYTICDB_REGION_ID=cn-hangzhou
  237. ANALYTICDB_INSTANCE_ID=gp-ab123456
  238. ANALYTICDB_ACCOUNT=testaccount
  239. ANALYTICDB_PASSWORD=testpassword
  240. ANALYTICDB_NAMESPACE=dify
  241. ANALYTICDB_NAMESPACE_PASSWORD=difypassword
  242. ANALYTICDB_HOST=gp-test.aliyuncs.com
  243. ANALYTICDB_PORT=5432
  244. ANALYTICDB_MIN_CONNECTION=1
  245. ANALYTICDB_MAX_CONNECTION=5
  246. # OpenSearch configuration
  247. OPENSEARCH_HOST=127.0.0.1
  248. OPENSEARCH_PORT=9200
  249. OPENSEARCH_USER=admin
  250. OPENSEARCH_PASSWORD=admin
  251. OPENSEARCH_SECURE=true
  252. OPENSEARCH_VERIFY_CERTS=true
  253. # Baidu configuration
  254. BAIDU_VECTOR_DB_ENDPOINT=http://127.0.0.1:5287
  255. BAIDU_VECTOR_DB_CONNECTION_TIMEOUT_MS=30000
  256. BAIDU_VECTOR_DB_ACCOUNT=root
  257. BAIDU_VECTOR_DB_API_KEY=dify
  258. BAIDU_VECTOR_DB_DATABASE=dify
  259. BAIDU_VECTOR_DB_SHARD=1
  260. BAIDU_VECTOR_DB_REPLICAS=3
  261. # Upstash configuration
  262. UPSTASH_VECTOR_URL=your-server-url
  263. UPSTASH_VECTOR_TOKEN=your-access-token
  264. # ViKingDB configuration
  265. VIKINGDB_ACCESS_KEY=your-ak
  266. VIKINGDB_SECRET_KEY=your-sk
  267. VIKINGDB_REGION=cn-shanghai
  268. VIKINGDB_HOST=api-vikingdb.xxx.volces.com
  269. VIKINGDB_SCHEMA=http
  270. VIKINGDB_CONNECTION_TIMEOUT=30
  271. VIKINGDB_SOCKET_TIMEOUT=30
  272. # Matrixone configration
  273. MATRIXONE_HOST=127.0.0.1
  274. MATRIXONE_PORT=6001
  275. MATRIXONE_USER=dump
  276. MATRIXONE_PASSWORD=111
  277. MATRIXONE_DATABASE=dify
  278. # Lindorm configuration
  279. LINDORM_URL=http://ld-*******************-proxy-search-pub.lindorm.aliyuncs.com:30070
  280. LINDORM_USERNAME=admin
  281. LINDORM_PASSWORD=admin
  282. USING_UGC_INDEX=False
  283. LINDORM_QUERY_TIMEOUT=1
  284. # OceanBase Vector configuration
  285. OCEANBASE_VECTOR_HOST=127.0.0.1
  286. OCEANBASE_VECTOR_PORT=2881
  287. OCEANBASE_VECTOR_USER=root@test
  288. OCEANBASE_VECTOR_PASSWORD=difyai123456
  289. OCEANBASE_VECTOR_DATABASE=test
  290. OCEANBASE_MEMORY_LIMIT=6G
  291. OCEANBASE_ENABLE_HYBRID_SEARCH=false
  292. # openGauss configuration
  293. OPENGAUSS_HOST=127.0.0.1
  294. OPENGAUSS_PORT=6600
  295. OPENGAUSS_USER=postgres
  296. OPENGAUSS_PASSWORD=Dify@123
  297. OPENGAUSS_DATABASE=dify
  298. OPENGAUSS_MIN_CONNECTION=1
  299. OPENGAUSS_MAX_CONNECTION=5
  300. # Upload configuration
  301. UPLOAD_FILE_SIZE_LIMIT=15
  302. UPLOAD_FILE_BATCH_LIMIT=5
  303. UPLOAD_IMAGE_FILE_SIZE_LIMIT=10
  304. UPLOAD_VIDEO_FILE_SIZE_LIMIT=100
  305. UPLOAD_AUDIO_FILE_SIZE_LIMIT=50
  306. # Model configuration
  307. MULTIMODAL_SEND_FORMAT=base64
  308. PROMPT_GENERATION_MAX_TOKENS=512
  309. CODE_GENERATION_MAX_TOKENS=1024
  310. PLUGIN_BASED_TOKEN_COUNTING_ENABLED=false
  311. # Mail configuration, support: resend, smtp, sendgrid
  312. MAIL_TYPE=
  313. # If using SendGrid, use the 'from' field for authentication if necessary.
  314. MAIL_DEFAULT_SEND_FROM=no-reply <no-reply@dify.ai>
  315. # resend configuration
  316. RESEND_API_KEY=
  317. RESEND_API_URL=https://api.resend.com
  318. # smtp configuration
  319. SMTP_SERVER=smtp.gmail.com
  320. SMTP_PORT=465
  321. SMTP_USERNAME=123
  322. SMTP_PASSWORD=abc
  323. SMTP_USE_TLS=true
  324. SMTP_OPPORTUNISTIC_TLS=false
  325. # Sendgid configuration
  326. SENDGRID_API_KEY=
  327. # Sentry configuration
  328. SENTRY_DSN=
  329. # DEBUG
  330. DEBUG=false
  331. ENABLE_REQUEST_LOGGING=False
  332. SQLALCHEMY_ECHO=false
  333. # Notion import configuration, support public and internal
  334. NOTION_INTEGRATION_TYPE=public
  335. NOTION_CLIENT_SECRET=you-client-secret
  336. NOTION_CLIENT_ID=you-client-id
  337. NOTION_INTERNAL_SECRET=you-internal-secret
  338. ETL_TYPE=dify
  339. UNSTRUCTURED_API_URL=
  340. UNSTRUCTURED_API_KEY=
  341. SCARF_NO_ANALYTICS=true
  342. #ssrf
  343. SSRF_PROXY_HTTP_URL=
  344. SSRF_PROXY_HTTPS_URL=
  345. SSRF_DEFAULT_MAX_RETRIES=3
  346. SSRF_DEFAULT_TIME_OUT=5
  347. SSRF_DEFAULT_CONNECT_TIME_OUT=5
  348. SSRF_DEFAULT_READ_TIME_OUT=5
  349. SSRF_DEFAULT_WRITE_TIME_OUT=5
  350. BATCH_UPLOAD_LIMIT=10
  351. KEYWORD_DATA_SOURCE_TYPE=database
  352. # Workflow file upload limit
  353. WORKFLOW_FILE_UPLOAD_LIMIT=10
  354. # CODE EXECUTION CONFIGURATION
  355. CODE_EXECUTION_ENDPOINT=http://127.0.0.1:8194
  356. CODE_EXECUTION_API_KEY=dify-sandbox
  357. CODE_MAX_NUMBER=9223372036854775807
  358. CODE_MIN_NUMBER=-9223372036854775808
  359. CODE_MAX_STRING_LENGTH=80000
  360. TEMPLATE_TRANSFORM_MAX_LENGTH=80000
  361. CODE_MAX_STRING_ARRAY_LENGTH=30
  362. CODE_MAX_OBJECT_ARRAY_LENGTH=30
  363. CODE_MAX_NUMBER_ARRAY_LENGTH=1000
  364. # API Tool configuration
  365. API_TOOL_DEFAULT_CONNECT_TIMEOUT=10
  366. API_TOOL_DEFAULT_READ_TIMEOUT=60
  367. # HTTP Node configuration
  368. HTTP_REQUEST_MAX_CONNECT_TIMEOUT=300
  369. HTTP_REQUEST_MAX_READ_TIMEOUT=600
  370. HTTP_REQUEST_MAX_WRITE_TIMEOUT=600
  371. HTTP_REQUEST_NODE_MAX_BINARY_SIZE=10485760
  372. HTTP_REQUEST_NODE_MAX_TEXT_SIZE=1048576
  373. HTTP_REQUEST_NODE_SSL_VERIFY=True
  374. # Respect X-* headers to redirect clients
  375. RESPECT_XFORWARD_HEADERS_ENABLED=false
  376. # Log file path
  377. LOG_FILE=
  378. # Log file max size, the unit is MB
  379. LOG_FILE_MAX_SIZE=20
  380. # Log file max backup count
  381. LOG_FILE_BACKUP_COUNT=5
  382. # Log dateformat
  383. LOG_DATEFORMAT=%Y-%m-%d %H:%M:%S
  384. # Log Timezone
  385. LOG_TZ=UTC
  386. # Log format
  387. LOG_FORMAT=%(asctime)s,%(msecs)d %(levelname)-2s [%(filename)s:%(lineno)d] %(req_id)s %(message)s
  388. # Indexing configuration
  389. INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH=4000
  390. # Workflow runtime configuration
  391. WORKFLOW_MAX_EXECUTION_STEPS=500
  392. WORKFLOW_MAX_EXECUTION_TIME=1200
  393. WORKFLOW_CALL_MAX_DEPTH=5
  394. WORKFLOW_PARALLEL_DEPTH_LIMIT=3
  395. MAX_VARIABLE_SIZE=204800
  396. # Workflow storage configuration
  397. # Options: rdbms, hybrid
  398. # rdbms: Use only the relational database (default)
  399. # hybrid: Save new data to object storage, read from both object storage and RDBMS
  400. WORKFLOW_NODE_EXECUTION_STORAGE=rdbms
  401. # Repository configuration
  402. # Core workflow execution repository implementation
  403. CORE_WORKFLOW_EXECUTION_REPOSITORY=core.repositories.sqlalchemy_workflow_execution_repository.SQLAlchemyWorkflowExecutionRepository
  404. # Core workflow node execution repository implementation
  405. CORE_WORKFLOW_NODE_EXECUTION_REPOSITORY=core.repositories.sqlalchemy_workflow_node_execution_repository.SQLAlchemyWorkflowNodeExecutionRepository
  406. # API workflow node execution repository implementation
  407. API_WORKFLOW_NODE_EXECUTION_REPOSITORY=repositories.sqlalchemy_api_workflow_node_execution_repository.DifyAPISQLAlchemyWorkflowNodeExecutionRepository
  408. # API workflow run repository implementation
  409. API_WORKFLOW_RUN_REPOSITORY=repositories.sqlalchemy_api_workflow_run_repository.DifyAPISQLAlchemyWorkflowRunRepository
  410. # Workflow log cleanup configuration
  411. # Enable automatic cleanup of workflow run logs to manage database size
  412. WORKFLOW_LOG_CLEANUP_ENABLED=true
  413. # Number of days to retain workflow run logs (default: 30 days)
  414. WORKFLOW_LOG_RETENTION_DAYS=30
  415. # Batch size for workflow log cleanup operations (default: 100)
  416. WORKFLOW_LOG_CLEANUP_BATCH_SIZE=100
  417. # App configuration
  418. APP_MAX_EXECUTION_TIME=1200
  419. APP_MAX_ACTIVE_REQUESTS=0
  420. # Celery beat configuration
  421. CELERY_BEAT_SCHEDULER_TIME=1
  422. # Celery schedule tasks configuration
  423. ENABLE_CLEAN_EMBEDDING_CACHE_TASK=false
  424. ENABLE_CLEAN_UNUSED_DATASETS_TASK=false
  425. ENABLE_CREATE_TIDB_SERVERLESS_TASK=false
  426. ENABLE_UPDATE_TIDB_SERVERLESS_STATUS_TASK=false
  427. ENABLE_CLEAN_MESSAGES=false
  428. ENABLE_MAIL_CLEAN_DOCUMENT_NOTIFY_TASK=false
  429. ENABLE_DATASETS_QUEUE_MONITOR=false
  430. ENABLE_CHECK_UPGRADABLE_PLUGIN_TASK=true
  431. # Position configuration
  432. POSITION_TOOL_PINS=
  433. POSITION_TOOL_INCLUDES=
  434. POSITION_TOOL_EXCLUDES=
  435. POSITION_PROVIDER_PINS=
  436. POSITION_PROVIDER_INCLUDES=
  437. POSITION_PROVIDER_EXCLUDES=
  438. # Plugin configuration
  439. PLUGIN_DAEMON_KEY=lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi
  440. PLUGIN_DAEMON_URL=http://127.0.0.1:5002
  441. PLUGIN_REMOTE_INSTALL_PORT=5003
  442. PLUGIN_REMOTE_INSTALL_HOST=localhost
  443. PLUGIN_MAX_PACKAGE_SIZE=15728640
  444. INNER_API_KEY_FOR_PLUGIN=QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1
  445. # Marketplace configuration
  446. MARKETPLACE_ENABLED=true
  447. MARKETPLACE_API_URL=https://marketplace.dify.ai
  448. # Endpoint configuration
  449. ENDPOINT_URL_TEMPLATE=http://localhost:5002/e/{hook_id}
  450. # Reset password token expiry minutes
  451. RESET_PASSWORD_TOKEN_EXPIRY_MINUTES=5
  452. CHANGE_EMAIL_TOKEN_EXPIRY_MINUTES=5
  453. OWNER_TRANSFER_TOKEN_EXPIRY_MINUTES=5
  454. CREATE_TIDB_SERVICE_JOB_ENABLED=false
  455. # Maximum number of submitted thread count in a ThreadPool for parallel node execution
  456. MAX_SUBMIT_COUNT=100
  457. # Lockout duration in seconds
  458. LOGIN_LOCKOUT_DURATION=86400
  459. # Enable OpenTelemetry
  460. ENABLE_OTEL=false
  461. OTLP_TRACE_ENDPOINT=
  462. OTLP_METRIC_ENDPOINT=
  463. OTLP_BASE_ENDPOINT=http://localhost:4318
  464. OTLP_API_KEY=
  465. OTEL_EXPORTER_OTLP_PROTOCOL=
  466. OTEL_EXPORTER_TYPE=otlp
  467. OTEL_SAMPLING_RATE=0.1
  468. OTEL_BATCH_EXPORT_SCHEDULE_DELAY=5000
  469. OTEL_MAX_QUEUE_SIZE=2048
  470. OTEL_MAX_EXPORT_BATCH_SIZE=512
  471. OTEL_METRIC_EXPORT_INTERVAL=60000
  472. OTEL_BATCH_EXPORT_TIMEOUT=10000
  473. OTEL_METRIC_EXPORT_TIMEOUT=30000
  474. # Prevent Clickjacking
  475. ALLOW_EMBED=false
  476. # Dataset queue monitor configuration
  477. QUEUE_MONITOR_THRESHOLD=200
  478. # You can configure multiple ones, separated by commas. eg: test1@dify.ai,test2@dify.ai
  479. QUEUE_MONITOR_ALERT_EMAILS=
  480. # Monitor interval in minutes, default is 30 minutes
  481. QUEUE_MONITOR_INTERVAL=30
  482. # Swagger UI configuration
  483. SWAGGER_UI_ENABLED=true
  484. SWAGGER_UI_PATH=/swagger-ui.html