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.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478
  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. # Console API base URL
  7. CONSOLE_API_URL=http://127.0.0.1:5001
  8. CONSOLE_WEB_URL=http://127.0.0.1:3000
  9. # Service API base URL
  10. SERVICE_API_URL=http://127.0.0.1:5001
  11. # Web APP base URL
  12. APP_WEB_URL=http://127.0.0.1:3000
  13. # Files URL
  14. FILES_URL=http://127.0.0.1:5001
  15. # The time in seconds after the signature is rejected
  16. FILES_ACCESS_TIMEOUT=300
  17. # Access token expiration time in minutes
  18. ACCESS_TOKEN_EXPIRE_MINUTES=60
  19. # Refresh token expiration time in days
  20. REFRESH_TOKEN_EXPIRE_DAYS=30
  21. # redis configuration
  22. REDIS_HOST=localhost
  23. REDIS_PORT=6379
  24. REDIS_USERNAME=
  25. REDIS_PASSWORD=difyai123456
  26. REDIS_USE_SSL=false
  27. REDIS_DB=0
  28. # redis Sentinel configuration.
  29. REDIS_USE_SENTINEL=false
  30. REDIS_SENTINELS=
  31. REDIS_SENTINEL_SERVICE_NAME=
  32. REDIS_SENTINEL_USERNAME=
  33. REDIS_SENTINEL_PASSWORD=
  34. REDIS_SENTINEL_SOCKET_TIMEOUT=0.1
  35. # redis Cluster configuration.
  36. REDIS_USE_CLUSTERS=false
  37. REDIS_CLUSTERS=
  38. REDIS_CLUSTERS_PASSWORD=
  39. # celery configuration
  40. CELERY_BROKER_URL=redis://:difyai123456@localhost:${REDIS_PORT}/1
  41. # PostgreSQL database configuration
  42. DB_USERNAME=postgres
  43. DB_PASSWORD=difyai123456
  44. DB_HOST=localhost
  45. DB_PORT=5432
  46. DB_DATABASE=dify
  47. # Storage configuration
  48. # use for store upload files, private keys...
  49. # storage type: opendal, s3, aliyun-oss, azure-blob, baidu-obs, google-storage, huawei-obs, oci-storage, tencent-cos, volcengine-tos, supabase
  50. STORAGE_TYPE=opendal
  51. # Apache OpenDAL storage configuration, refer to https://github.com/apache/opendal
  52. OPENDAL_SCHEME=fs
  53. OPENDAL_FS_ROOT=storage
  54. # S3 Storage configuration
  55. S3_USE_AWS_MANAGED_IAM=false
  56. S3_ENDPOINT=https://your-bucket-name.storage.s3.cloudflare.com
  57. S3_BUCKET_NAME=your-bucket-name
  58. S3_ACCESS_KEY=your-access-key
  59. S3_SECRET_KEY=your-secret-key
  60. S3_REGION=your-region
  61. # Azure Blob Storage configuration
  62. AZURE_BLOB_ACCOUNT_NAME=your-account-name
  63. AZURE_BLOB_ACCOUNT_KEY=your-account-key
  64. AZURE_BLOB_CONTAINER_NAME=your-container-name
  65. AZURE_BLOB_ACCOUNT_URL=https://<your_account_name>.blob.core.windows.net
  66. # Aliyun oss Storage configuration
  67. ALIYUN_OSS_BUCKET_NAME=your-bucket-name
  68. ALIYUN_OSS_ACCESS_KEY=your-access-key
  69. ALIYUN_OSS_SECRET_KEY=your-secret-key
  70. ALIYUN_OSS_ENDPOINT=your-endpoint
  71. ALIYUN_OSS_AUTH_VERSION=v1
  72. ALIYUN_OSS_REGION=your-region
  73. # Don't start with '/'. OSS doesn't support leading slash in object names.
  74. ALIYUN_OSS_PATH=your-path
  75. # Google Storage configuration
  76. GOOGLE_STORAGE_BUCKET_NAME=your-bucket-name
  77. GOOGLE_STORAGE_SERVICE_ACCOUNT_JSON_BASE64=your-google-service-account-json-base64-string
  78. # Tencent COS Storage configuration
  79. TENCENT_COS_BUCKET_NAME=your-bucket-name
  80. TENCENT_COS_SECRET_KEY=your-secret-key
  81. TENCENT_COS_SECRET_ID=your-secret-id
  82. TENCENT_COS_REGION=your-region
  83. TENCENT_COS_SCHEME=your-scheme
  84. # Huawei OBS Storage Configuration
  85. HUAWEI_OBS_BUCKET_NAME=your-bucket-name
  86. HUAWEI_OBS_SECRET_KEY=your-secret-key
  87. HUAWEI_OBS_ACCESS_KEY=your-access-key
  88. HUAWEI_OBS_SERVER=your-server-url
  89. # Baidu OBS Storage Configuration
  90. BAIDU_OBS_BUCKET_NAME=your-bucket-name
  91. BAIDU_OBS_SECRET_KEY=your-secret-key
  92. BAIDU_OBS_ACCESS_KEY=your-access-key
  93. BAIDU_OBS_ENDPOINT=your-server-url
  94. # OCI Storage configuration
  95. OCI_ENDPOINT=your-endpoint
  96. OCI_BUCKET_NAME=your-bucket-name
  97. OCI_ACCESS_KEY=your-access-key
  98. OCI_SECRET_KEY=your-secret-key
  99. OCI_REGION=your-region
  100. # Volcengine tos Storage configuration
  101. VOLCENGINE_TOS_ENDPOINT=your-endpoint
  102. VOLCENGINE_TOS_BUCKET_NAME=your-bucket-name
  103. VOLCENGINE_TOS_ACCESS_KEY=your-access-key
  104. VOLCENGINE_TOS_SECRET_KEY=your-secret-key
  105. VOLCENGINE_TOS_REGION=your-region
  106. # Supabase Storage Configuration
  107. SUPABASE_BUCKET_NAME=your-bucket-name
  108. SUPABASE_API_KEY=your-access-key
  109. SUPABASE_URL=your-server-url
  110. # CORS configuration
  111. WEB_API_CORS_ALLOW_ORIGINS=http://127.0.0.1:3000,*
  112. CONSOLE_CORS_ALLOW_ORIGINS=http://127.0.0.1:3000,*
  113. # Vector database configuration
  114. # support: weaviate, qdrant, milvus, myscale, relyt, pgvecto_rs, pgvector, pgvector, chroma, opensearch, tidb_vector, couchbase, vikingdb, upstash, lindorm, oceanbase, opengauss, tablestore
  115. VECTOR_STORE=weaviate
  116. # Weaviate configuration
  117. WEAVIATE_ENDPOINT=http://localhost:8080
  118. WEAVIATE_API_KEY=WVF5YThaHlkYwhGUSmCRgsX3tD5ngdN8pkih
  119. WEAVIATE_GRPC_ENABLED=false
  120. WEAVIATE_BATCH_SIZE=100
  121. # Qdrant configuration, use `http://localhost:6333` for local mode or `https://your-qdrant-cluster-url.qdrant.io` for remote mode
  122. QDRANT_URL=http://localhost:6333
  123. QDRANT_API_KEY=difyai123456
  124. QDRANT_CLIENT_TIMEOUT=20
  125. QDRANT_GRPC_ENABLED=false
  126. QDRANT_GRPC_PORT=6334
  127. #Couchbase configuration
  128. COUCHBASE_CONNECTION_STRING=127.0.0.1
  129. COUCHBASE_USER=Administrator
  130. COUCHBASE_PASSWORD=password
  131. COUCHBASE_BUCKET_NAME=Embeddings
  132. COUCHBASE_SCOPE_NAME=_default
  133. # Milvus configuration
  134. MILVUS_URI=http://127.0.0.1:19530
  135. MILVUS_TOKEN=
  136. MILVUS_USER=root
  137. MILVUS_PASSWORD=Milvus
  138. # MyScale configuration
  139. MYSCALE_HOST=127.0.0.1
  140. MYSCALE_PORT=8123
  141. MYSCALE_USER=default
  142. MYSCALE_PASSWORD=
  143. MYSCALE_DATABASE=default
  144. MYSCALE_FTS_PARAMS=
  145. # Relyt configuration
  146. RELYT_HOST=127.0.0.1
  147. RELYT_PORT=5432
  148. RELYT_USER=postgres
  149. RELYT_PASSWORD=postgres
  150. RELYT_DATABASE=postgres
  151. # Tencent configuration
  152. TENCENT_VECTOR_DB_URL=http://127.0.0.1
  153. TENCENT_VECTOR_DB_API_KEY=dify
  154. TENCENT_VECTOR_DB_TIMEOUT=30
  155. TENCENT_VECTOR_DB_USERNAME=dify
  156. TENCENT_VECTOR_DB_DATABASE=dify
  157. TENCENT_VECTOR_DB_SHARD=1
  158. TENCENT_VECTOR_DB_REPLICAS=2
  159. TENCENT_VECTOR_DB_ENABLE_HYBRID_SEARCH=false
  160. # ElasticSearch configuration
  161. ELASTICSEARCH_HOST=127.0.0.1
  162. ELASTICSEARCH_PORT=9200
  163. ELASTICSEARCH_USERNAME=elastic
  164. ELASTICSEARCH_PASSWORD=elastic
  165. # PGVECTO_RS configuration
  166. PGVECTO_RS_HOST=localhost
  167. PGVECTO_RS_PORT=5431
  168. PGVECTO_RS_USER=postgres
  169. PGVECTO_RS_PASSWORD=difyai123456
  170. PGVECTO_RS_DATABASE=postgres
  171. # PGVector configuration
  172. PGVECTOR_HOST=127.0.0.1
  173. PGVECTOR_PORT=5433
  174. PGVECTOR_USER=postgres
  175. PGVECTOR_PASSWORD=postgres
  176. PGVECTOR_DATABASE=postgres
  177. PGVECTOR_MIN_CONNECTION=1
  178. PGVECTOR_MAX_CONNECTION=5
  179. # TableStore Vector configuration
  180. TABLESTORE_ENDPOINT=https://instance-name.cn-hangzhou.ots.aliyuncs.com
  181. TABLESTORE_INSTANCE_NAME=instance-name
  182. TABLESTORE_ACCESS_KEY_ID=xxx
  183. TABLESTORE_ACCESS_KEY_SECRET=xxx
  184. # Tidb Vector configuration
  185. TIDB_VECTOR_HOST=xxx.eu-central-1.xxx.aws.tidbcloud.com
  186. TIDB_VECTOR_PORT=4000
  187. TIDB_VECTOR_USER=xxx.root
  188. TIDB_VECTOR_PASSWORD=xxxxxx
  189. TIDB_VECTOR_DATABASE=dify
  190. # Tidb on qdrant configuration
  191. TIDB_ON_QDRANT_URL=http://127.0.0.1
  192. TIDB_ON_QDRANT_API_KEY=dify
  193. TIDB_ON_QDRANT_CLIENT_TIMEOUT=20
  194. TIDB_ON_QDRANT_GRPC_ENABLED=false
  195. TIDB_ON_QDRANT_GRPC_PORT=6334
  196. TIDB_PUBLIC_KEY=dify
  197. TIDB_PRIVATE_KEY=dify
  198. TIDB_API_URL=http://127.0.0.1
  199. TIDB_IAM_API_URL=http://127.0.0.1
  200. TIDB_REGION=regions/aws-us-east-1
  201. TIDB_PROJECT_ID=dify
  202. TIDB_SPEND_LIMIT=100
  203. # Chroma configuration
  204. CHROMA_HOST=127.0.0.1
  205. CHROMA_PORT=8000
  206. CHROMA_TENANT=default_tenant
  207. CHROMA_DATABASE=default_database
  208. CHROMA_AUTH_PROVIDER=chromadb.auth.token_authn.TokenAuthenticationServerProvider
  209. CHROMA_AUTH_CREDENTIALS=difyai123456
  210. # AnalyticDB configuration
  211. ANALYTICDB_KEY_ID=your-ak
  212. ANALYTICDB_KEY_SECRET=your-sk
  213. ANALYTICDB_REGION_ID=cn-hangzhou
  214. ANALYTICDB_INSTANCE_ID=gp-ab123456
  215. ANALYTICDB_ACCOUNT=testaccount
  216. ANALYTICDB_PASSWORD=testpassword
  217. ANALYTICDB_NAMESPACE=dify
  218. ANALYTICDB_NAMESPACE_PASSWORD=difypassword
  219. ANALYTICDB_HOST=gp-test.aliyuncs.com
  220. ANALYTICDB_PORT=5432
  221. ANALYTICDB_MIN_CONNECTION=1
  222. ANALYTICDB_MAX_CONNECTION=5
  223. # OpenSearch configuration
  224. OPENSEARCH_HOST=127.0.0.1
  225. OPENSEARCH_PORT=9200
  226. OPENSEARCH_USER=admin
  227. OPENSEARCH_PASSWORD=admin
  228. OPENSEARCH_SECURE=true
  229. # Baidu configuration
  230. BAIDU_VECTOR_DB_ENDPOINT=http://127.0.0.1:5287
  231. BAIDU_VECTOR_DB_CONNECTION_TIMEOUT_MS=30000
  232. BAIDU_VECTOR_DB_ACCOUNT=root
  233. BAIDU_VECTOR_DB_API_KEY=dify
  234. BAIDU_VECTOR_DB_DATABASE=dify
  235. BAIDU_VECTOR_DB_SHARD=1
  236. BAIDU_VECTOR_DB_REPLICAS=3
  237. # Upstash configuration
  238. UPSTASH_VECTOR_URL=your-server-url
  239. UPSTASH_VECTOR_TOKEN=your-access-token
  240. # ViKingDB configuration
  241. VIKINGDB_ACCESS_KEY=your-ak
  242. VIKINGDB_SECRET_KEY=your-sk
  243. VIKINGDB_REGION=cn-shanghai
  244. VIKINGDB_HOST=api-vikingdb.xxx.volces.com
  245. VIKINGDB_SCHEMA=http
  246. VIKINGDB_CONNECTION_TIMEOUT=30
  247. VIKINGDB_SOCKET_TIMEOUT=30
  248. # Lindorm configuration
  249. LINDORM_URL=http://ld-*******************-proxy-search-pub.lindorm.aliyuncs.com:30070
  250. LINDORM_USERNAME=admin
  251. LINDORM_PASSWORD=admin
  252. USING_UGC_INDEX=False
  253. # OceanBase Vector configuration
  254. OCEANBASE_VECTOR_HOST=127.0.0.1
  255. OCEANBASE_VECTOR_PORT=2881
  256. OCEANBASE_VECTOR_USER=root@test
  257. OCEANBASE_VECTOR_PASSWORD=difyai123456
  258. OCEANBASE_VECTOR_DATABASE=test
  259. OCEANBASE_MEMORY_LIMIT=6G
  260. OCEANBASE_ENABLE_HYBRID_SEARCH=false
  261. # openGauss configuration
  262. OPENGAUSS_HOST=127.0.0.1
  263. OPENGAUSS_PORT=6600
  264. OPENGAUSS_USER=postgres
  265. OPENGAUSS_PASSWORD=Dify@123
  266. OPENGAUSS_DATABASE=dify
  267. OPENGAUSS_MIN_CONNECTION=1
  268. OPENGAUSS_MAX_CONNECTION=5
  269. # Upload configuration
  270. UPLOAD_FILE_SIZE_LIMIT=15
  271. UPLOAD_FILE_BATCH_LIMIT=5
  272. UPLOAD_IMAGE_FILE_SIZE_LIMIT=10
  273. UPLOAD_VIDEO_FILE_SIZE_LIMIT=100
  274. UPLOAD_AUDIO_FILE_SIZE_LIMIT=50
  275. # Model configuration
  276. MULTIMODAL_SEND_FORMAT=base64
  277. PROMPT_GENERATION_MAX_TOKENS=512
  278. CODE_GENERATION_MAX_TOKENS=1024
  279. PLUGIN_BASED_TOKEN_COUNTING_ENABLED=false
  280. # Mail configuration, support: resend, smtp
  281. MAIL_TYPE=
  282. MAIL_DEFAULT_SEND_FROM=no-reply <no-reply@dify.ai>
  283. RESEND_API_KEY=
  284. RESEND_API_URL=https://api.resend.com
  285. # smtp configuration
  286. SMTP_SERVER=smtp.gmail.com
  287. SMTP_PORT=465
  288. SMTP_USERNAME=123
  289. SMTP_PASSWORD=abc
  290. SMTP_USE_TLS=true
  291. SMTP_OPPORTUNISTIC_TLS=false
  292. # Sentry configuration
  293. SENTRY_DSN=
  294. # DEBUG
  295. DEBUG=false
  296. SQLALCHEMY_ECHO=false
  297. # Notion import configuration, support public and internal
  298. NOTION_INTEGRATION_TYPE=public
  299. NOTION_CLIENT_SECRET=you-client-secret
  300. NOTION_CLIENT_ID=you-client-id
  301. NOTION_INTERNAL_SECRET=you-internal-secret
  302. ETL_TYPE=dify
  303. UNSTRUCTURED_API_URL=
  304. UNSTRUCTURED_API_KEY=
  305. SCARF_NO_ANALYTICS=true
  306. #ssrf
  307. SSRF_PROXY_HTTP_URL=
  308. SSRF_PROXY_HTTPS_URL=
  309. SSRF_DEFAULT_MAX_RETRIES=3
  310. SSRF_DEFAULT_TIME_OUT=5
  311. SSRF_DEFAULT_CONNECT_TIME_OUT=5
  312. SSRF_DEFAULT_READ_TIME_OUT=5
  313. SSRF_DEFAULT_WRITE_TIME_OUT=5
  314. BATCH_UPLOAD_LIMIT=10
  315. KEYWORD_DATA_SOURCE_TYPE=database
  316. # Workflow file upload limit
  317. WORKFLOW_FILE_UPLOAD_LIMIT=10
  318. # CODE EXECUTION CONFIGURATION
  319. CODE_EXECUTION_ENDPOINT=http://127.0.0.1:8194
  320. CODE_EXECUTION_API_KEY=dify-sandbox
  321. CODE_MAX_NUMBER=9223372036854775807
  322. CODE_MIN_NUMBER=-9223372036854775808
  323. CODE_MAX_STRING_LENGTH=80000
  324. TEMPLATE_TRANSFORM_MAX_LENGTH=80000
  325. CODE_MAX_STRING_ARRAY_LENGTH=30
  326. CODE_MAX_OBJECT_ARRAY_LENGTH=30
  327. CODE_MAX_NUMBER_ARRAY_LENGTH=1000
  328. # API Tool configuration
  329. API_TOOL_DEFAULT_CONNECT_TIMEOUT=10
  330. API_TOOL_DEFAULT_READ_TIMEOUT=60
  331. # HTTP Node configuration
  332. HTTP_REQUEST_MAX_CONNECT_TIMEOUT=300
  333. HTTP_REQUEST_MAX_READ_TIMEOUT=600
  334. HTTP_REQUEST_MAX_WRITE_TIMEOUT=600
  335. HTTP_REQUEST_NODE_MAX_BINARY_SIZE=10485760
  336. HTTP_REQUEST_NODE_MAX_TEXT_SIZE=1048576
  337. HTTP_REQUEST_NODE_SSL_VERIFY=True
  338. # Respect X-* headers to redirect clients
  339. RESPECT_XFORWARD_HEADERS_ENABLED=false
  340. # Log file path
  341. LOG_FILE=
  342. # Log file max size, the unit is MB
  343. LOG_FILE_MAX_SIZE=20
  344. # Log file max backup count
  345. LOG_FILE_BACKUP_COUNT=5
  346. # Log dateformat
  347. LOG_DATEFORMAT=%Y-%m-%d %H:%M:%S
  348. # Log Timezone
  349. LOG_TZ=UTC
  350. # Log format
  351. LOG_FORMAT=%(asctime)s,%(msecs)d %(levelname)-2s [%(filename)s:%(lineno)d] %(req_id)s %(message)s
  352. # Indexing configuration
  353. INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH=4000
  354. # Workflow runtime configuration
  355. WORKFLOW_MAX_EXECUTION_STEPS=500
  356. WORKFLOW_MAX_EXECUTION_TIME=1200
  357. WORKFLOW_CALL_MAX_DEPTH=5
  358. WORKFLOW_PARALLEL_DEPTH_LIMIT=3
  359. MAX_VARIABLE_SIZE=204800
  360. # App configuration
  361. APP_MAX_EXECUTION_TIME=1200
  362. APP_MAX_ACTIVE_REQUESTS=0
  363. # Celery beat configuration
  364. CELERY_BEAT_SCHEDULER_TIME=1
  365. # Position configuration
  366. POSITION_TOOL_PINS=
  367. POSITION_TOOL_INCLUDES=
  368. POSITION_TOOL_EXCLUDES=
  369. POSITION_PROVIDER_PINS=
  370. POSITION_PROVIDER_INCLUDES=
  371. POSITION_PROVIDER_EXCLUDES=
  372. # Plugin configuration
  373. PLUGIN_DAEMON_KEY=lYkiYYT6owG+71oLerGzA7GXCgOT++6ovaezWAjpCjf+Sjc3ZtU+qUEi
  374. PLUGIN_DAEMON_URL=http://127.0.0.1:5002
  375. PLUGIN_REMOTE_INSTALL_PORT=5003
  376. PLUGIN_REMOTE_INSTALL_HOST=localhost
  377. PLUGIN_MAX_PACKAGE_SIZE=15728640
  378. INNER_API_KEY_FOR_PLUGIN=QaHbTe77CtuXmsfyhR7+vRjI/+XbV1AaFy691iy+kGDv2Jvy0/eAh8Y1
  379. # Marketplace configuration
  380. MARKETPLACE_ENABLED=true
  381. MARKETPLACE_API_URL=https://marketplace.dify.ai
  382. # Endpoint configuration
  383. ENDPOINT_URL_TEMPLATE=http://localhost:5002/e/{hook_id}
  384. # Reset password token expiry minutes
  385. RESET_PASSWORD_TOKEN_EXPIRY_MINUTES=5
  386. CREATE_TIDB_SERVICE_JOB_ENABLED=false
  387. # Maximum number of submitted thread count in a ThreadPool for parallel node execution
  388. MAX_SUBMIT_COUNT=100
  389. # Lockout duration in seconds
  390. LOGIN_LOCKOUT_DURATION=86400
  391. # Enable OpenTelemetry
  392. ENABLE_OTEL=false
  393. OTLP_BASE_ENDPOINT=http://localhost:4318
  394. OTLP_API_KEY=
  395. OTEL_EXPORTER_TYPE=otlp
  396. OTEL_SAMPLING_RATE=0.1
  397. OTEL_BATCH_EXPORT_SCHEDULE_DELAY=5000
  398. OTEL_MAX_QUEUE_SIZE=2048
  399. OTEL_MAX_EXPORT_BATCH_SIZE=512
  400. OTEL_METRIC_EXPORT_INTERVAL=60000
  401. OTEL_BATCH_EXPORT_TIMEOUT=10000
  402. OTEL_METRIC_EXPORT_TIMEOUT=30000