negoptimAi / backend /.env.example
Samir Majzoub
Add admin panel backend: upload/edit/delete endpoints + .docx support
ebc4fb4
Raw
History Blame Contribute Delete
2.65 kB
GROQ_API_KEY=your_groq_api_key_here
GROQ_MODEL=llama3-8b-8192
GROQ_BASE_URL=https://api.groq.com/openai/v1
CHROMA_PERSIST_DIRECTORY=./chroma_db
CHROMA_COLLECTION_NAME=negoptim_knowledge
EMBEDDING_MODEL=intfloat/multilingual-e5-small
RETRIEVAL_TOP_K=5
CHUNK_SIZE=700
CHUNK_OVERLAP=100
MAX_HISTORY_TURNS=10
KNOWLEDGE_BASE_PATH=../knowledge
# ── Admin panel ───────────────────────────────────────────────────────────────
# Required to call all /api/admin/* endpoints (upload, list, delete).
# Empty = all admin endpoints return 403. Generate: openssl rand -hex 32
ADMIN_TOKEN=
# Add the admin panel's Vercel URL here so the browser can reach the backend.
# Example: CORS_ORIGINS=http://localhost:3000,https://negoptim-admin.vercel.app
CORS_ORIGINS=http://localhost:3000,http://127.0.0.1:3000
# ── Abuse protection / cost control ──────────────────────────────────────────
# Shared secret gating POST /chat (must match the frontend proxy's value).
# Empty = disabled (local dev). Generate with: openssl rand -hex 32
INTERNAL_AUTH_TOKEN=
RATE_LIMIT_CHAT_PER_MINUTE=20
CHAT_PER_IP_PER_DAY=60
CHAT_GLOBAL_PER_DAY=800
MAX_INPUT_CHARS=1500
MAX_OUTPUT_TOKENS=600
# ── ROI Snapshot analysis feature ────────────────────────────────────────────
ANALYSIS_ENABLED=true
ANALYSIS_PER_IP_PER_DAY=2
ANALYSIS_GLOBAL_PER_DAY=100
ANALYSIS_MAX_OUTPUT_TOKENS=450
BENCHMARK_DATA_TTL_HOURS=24
# ── Email ─────────────────────────────────────────────────────────────────────
# Delivery priority: Resend HTTP API → SMTP → simulation (all empty = logs only).
# Resend is the only path that works on the HF free tier (SMTP ports blocked).
RESEND_API_KEY=
# Sales inbox: where demo requests are addressed. REQUIRED for real delivery.
# With the Resend sandbox sender (onboarding@resend.dev), only the Resend
# account owner's address is deliverable until a domain is verified.
SALES_EMAIL=you@example.com
# General email mode may only target these domains (comma-separated) —
# open-relay protection for the public demo.
EMAIL_RECIPIENT_ALLOWLIST=usersloveit.com
# Force-route ALL outgoing mail to a test inbox. Empty = real recipients.
EMAIL_OVERRIDE_TO=
# SMTP fallback (local dev only)
SMTP_USER=
SMTP_PASSWORD=