Files
dify/knowledge-fs/.env.example
Jyong 4ee43b8afc chore: migrate knowledge-fs source tree
Import the committed KnowledgeFS snapshot dc4072ee302317145612087ce7440851dc329fd0 under knowledge-fs/ without its Git history, local IDE settings, or build artifacts.
2026-07-20 04:54:20 -04:00

89 lines
3.7 KiB
Bash

POSTGRES_DB=knowledge_fs
POSTGRES_PASSWORD=knowledge_fs
POSTGRES_PORT=5432
POSTGRES_USER=knowledge_fs
DATABASE_URL=postgresql://knowledge_fs:knowledge_fs@127.0.0.1:5432/knowledge_fs
KNOWLEDGE_DATABASE_REPOSITORIES=
DURABLE_DELETION_ENABLED=off
DURABLE_DELETION_WRITER_FENCE_VERSION=
# Keep this stable for the lifetime of deletion idempotency ledgers; do not rotate silently.
DURABLE_DELETION_HMAC_KEY_BASE64=
MINIO_ACCESS_KEY=knowledge
MINIO_API_PORT=9000
MINIO_BUCKET=knowledge-fs
MINIO_CONSOLE_PORT=9001
MINIO_ENDPOINT=http://127.0.0.1:9000
MINIO_REGION=us-east-1
MINIO_ROOT_PASSWORD=knowledge-secret
MINIO_ROOT_USER=knowledge
MINIO_SECRET_KEY=knowledge-secret
R2_ACCESS_KEY_ID=
R2_ACCOUNT_ID=
R2_BUCKET=
R2_REGION=auto
R2_SECRET_ACCESS_KEY=
UNSTRUCTURED_PORT=8000
UNSTRUCTURED_API_URL=http://127.0.0.1:8000
UNSTRUCTURED_API_KEY=
UNSTRUCTURED_MAX_RESPONSE_BYTES=
UNSTRUCTURED_MAX_RETRIES=
UNSTRUCTURED_RETRY_DELAY_MS=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=
KNOWLEDGE_EMBEDDING_PROVIDER=
KNOWLEDGE_EMBEDDING_MODEL=
KNOWLEDGE_ENTITY_EXTRACTION_PROVIDER=
KNOWLEDGE_ENTITY_EXTRACTION_MODEL=
KNOWLEDGE_ENTITY_EXTRACTION_MAX_ENTITIES_PER_NODE=
KNOWLEDGE_ENTITY_EXTRACTION_MAX_NODES_PER_RUN=
KNOWLEDGE_ENTITY_EXTRACTION_MAX_OUTPUT_TOKENS=
KNOWLEDGE_RELATION_EXTRACTION_MODEL=
KNOWLEDGE_RELATION_EXTRACTION_MAX_RELATIONS_PER_NODE=
KNOWLEDGE_RELATION_EXTRACTION_MAX_OUTPUT_TOKENS=
KNOWLEDGE_COMMUNITY_SUMMARY_MODEL=
KNOWLEDGE_COMMUNITY_SUMMARY_MAX_OUTPUT_TOKENS=
# Graph-expanded retrieval (deep/research modes). On by default when the graph
# repository is wired; set KNOWLEDGE_GRAPH_EXPANSION=off to disable. Tuning
# knobs fall back to built-in defaults (in parentheses) when unset.
KNOWLEDGE_GRAPH_EXPANSION=
KNOWLEDGE_GRAPH_EXPANSION_MAX_DEPTH= # traversal hops, 1-2 (2)
KNOWLEDGE_GRAPH_EXPANSION_FANOUT= # neighbors expanded per node (20)
KNOWLEDGE_GRAPH_EXPANSION_MAX_SEED_ENTITIES= # seeds taken from base hits (5)
KNOWLEDGE_GRAPH_EXPANSION_MAX_TRAVERSAL_NODES= # traversal node budget (50)
KNOWLEDGE_GRAPH_EXPANSION_GRAPH_TOP_K= # entity names used to re-retrieve (10)
KNOWLEDGE_GRAPH_EXPANSION_GRAPH_BOOST= # fusion weight of graph hits (0.2)
KNOWLEDGE_GRAPH_EXPANSION_TIMEOUT_MS= # traversal time budget (250)
# Scheduled source sync. Sources opt in via metadata.syncPolicy —
# {"everyHours": 6} or {"dailyAt": ["03:00"], "utcOffset": "+08:00"}.
# The scheduler is on by default (set KNOWLEDGE_SOURCE_SYNC=off to disable) and
# is multi-replica safe: per-source runs are serialized by an atomic DB claim.
KNOWLEDGE_SOURCE_SYNC=
KNOWLEDGE_SOURCE_SYNC_TICK_MS= # scheduler tick interval (60000)
KNOWLEDGE_SOURCE_SYNC_MAX_SOURCES_PER_TICK= # sources scanned per tick (200)
# Answer synthesis LLM (opt-in). Unset/off => extractive evidence answers.
# Set to openai|anthropic|gemini to let that provider write grounded answers.
KNOWLEDGE_ANSWER_PROVIDER=
KNOWLEDGE_ANSWER_MODEL=
KNOWLEDGE_ANSWER_MAX_OUTPUT_TOKENS=
# Gateway span tracing. off (default) | console (one JSON line per span) |
# otlp (OTLP/HTTP JSON to an OpenTelemetry collector).
KNOWLEDGE_TRACING=
KNOWLEDGE_TRACING_OTLP_ENDPOINT= # e.g. http://localhost:4318/v1/traces
KNOWLEDGE_TRACING_OTLP_HEADERS= # optional JSON object, e.g. {"authorization":"Bearer …"}
KNOWLEDGE_TRACING_SERVICE_NAME= # resource service.name (knowledge-fs-api)
KNOWLEDGE_TRACING_FLUSH_MS= # export batch interval (5000)
API_PORT=8788
ADMIN_PORT=3000
KNOWLEDGE_API_BASE_URL=http://localhost:8788
NEXT_PUBLIC_API_BASE_URL=http://localhost:8788
KNOWLEDGE_DEV_AUTH_TOKEN=dev-token
KNOWLEDGE_DEV_SUBJECT_ID=dev-user
KNOWLEDGE_DEV_TENANT_ID=tenant-dev