-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy path.env.example
More file actions
88 lines (71 loc) · 5.55 KB
/
.env.example
File metadata and controls
88 lines (71 loc) · 5.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# ─── TrustReply Configuration ──────────────────────────────────────
# Copy this to .env and fill in your values.
#
# For Docker: docker compose up --build
# For local: ./start.sh
# ─── Ports (Docker only) ──────────────────────────────────────────
BACKEND_PORT=8000
FRONTEND_PORT=3000
# ─── Database ─────────────────────────────────────────────────────
# Local SQLite (default — works out of the box):
QF_DATABASE_URL=sqlite+aiosqlite:///./questionnaire_filler.db
# Supabase Postgres (recommended for team use):
# QF_DATABASE_URL=postgresql+asyncpg://postgres.[project-ref]:[password]@aws-0-[region].pooler.supabase.com:6543/postgres
# ─── Supabase Auth (optional — leave empty for no login gate) ────
# QF_SUPABASE_URL=https://xxxxx.supabase.co
# QF_SUPABASE_ANON_KEY=eyJ...
# QF_SUPABASE_SERVICE_KEY=eyJ...
# QF_SUPABASE_JWT_SECRET=your-jwt-secret-from-supabase-dashboard
# ─── Matching ─────────────────────────────────────────────────────
QF_SIMILARITY_THRESHOLD=0.75
QF_EMBEDDING_MODEL=all-MiniLM-L6-v2
# ─── Parsing ─────────────────────────────────────────────────────
# QF_DEFAULT_PARSER_PROFILE=default
# QF_PARSER_HINT_OVERRIDES={} # JSON dict of parser hint overrides
# QF_MAX_BULK_FILES=50 # Max files in a single bulk upload
# ─── Upload limits ───────────────────────────────────────────────
# QF_MAX_UPLOAD_SIZE_MB=50 # Max single file upload size in MB
# ─── CORS ─────────────────────────────────────────────────────────
QF_CORS_ORIGINS=["http://localhost:3000","http://localhost:3001","http://localhost:3002"]
# ─── Agent / LLM (primary provider) ─────────────────────────────
QF_AGENT_ENABLED=false
QF_AGENT_PROVIDER=openai # openai | anthropic
QF_AGENT_API_BASE=https://api.openai.com/v1
QF_AGENT_API_KEY=
QF_AGENT_MODEL=gpt-4.1-nano
QF_AGENT_DEFAULT_MODE=agent
QF_AGENT_TIMEOUT_SECONDS=90 # Max seconds to wait for an LLM response
QF_AGENT_MAX_QUESTIONS_PER_CALL=40 # Max questions sent per LLM call
# ─── Agent tuning ───────────────────────────────────────────────
# QF_AGENT_MAX_CONTEXT_CHARS=6000 # Max chars of context sent to the LLM
# QF_AGENT_VERIFICATION_ENABLED=true # Enable verification pass on agent answers
# QF_AGENT_VERIFICATION_MAX_QUESTIONS=40 # Max questions per verification call
# QF_AGENT_SINGLE_STAGE=true # Merge research+fill into one call (saves ~50% tokens)
# QF_AGENT_KB_SIMILARITY_CUTOFF=0.35 # Discard KB candidates below this similarity
# QF_AGENT_MAX_PRIOR_ANSWERS=30 # Cap prior answers passed between chunks
# QF_AGENT_SKIP_VERIFY_THRESHOLD=0.78 # Skip verification if avg confidence above this
# QF_AGENT_KB_DIRECT_THRESHOLD=0.78 # Skip LLM when top KB candidate similarity >= this
# QF_AGENT_STRUCTURED_OUTPUT=true # Use response_format for OpenAI providers
# QF_AGENT_MAX_CONCURRENT_JOBS=3 # Max jobs processed concurrently in a batch
# ─── Multi-provider API keys (recommended) ───────────────────────
# Store both OpenAI and Anthropic keys simultaneously; switch via QF_AGENT_PROVIDER
# QF_AGENT_OPENAI_API_KEY=sk-...
# QF_AGENT_OPENAI_MODEL=gpt-4.1-nano
# QF_AGENT_ANTHROPIC_API_KEY=sk-ant-...
# QF_AGENT_ANTHROPIC_MODEL=claude-sonnet-4-6
# ─── SME Routing (optional) ──────────────────────────────────────
# QF_SME_ROUTING_ENABLED=false
# QF_CATEGORY_SME_MAP={"Security": "[email protected]", "Privacy": "[email protected]"}
# ─── Feedback / Corrections ──────────────────────────────────────
# QF_FEEDBACK_AUTO_ADD_TO_KB=true # Auto-add user corrections to KB on finalize
# QF_FEEDBACK_MIN_CONFIDENCE=0.0 # Only auto-add if original confidence was above this
# ─── Audit ───────────────────────────────────────────────────────
# QF_AUDIT_DEFAULT_ACTOR=user # Default actor name for audit log entries
# ─── Access Control ──────────────────────────────────────────────
# QF_ALLOWED_EMAIL_DOMAINS=["example.com"]
# ─── API Key Auth (simple shared key, separate from Supabase) ────
# QF_API_KEY=
# ─── Frontend ─────────────────────────────────────────────────────
NEXT_PUBLIC_API_URL=http://localhost:8000
# NEXT_PUBLIC_SUPABASE_URL=https://xxxxx.supabase.co
# NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJ...