2026-04-17 18:50:31 +02:00
|
|
|
# ─── Configurazione RAG ───────────────────────────────────────────────────────
|
|
|
|
|
|
|
|
|
|
# ── Retrieval ─────────────────────────────────────────────────────────────────
|
|
|
|
|
|
|
|
|
|
# Numero di chunk da recuperare per ogni domanda.
|
|
|
|
|
# Valori più alti = più contesto, risposte potenzialmente più complete,
|
|
|
|
|
# ma prompt più lunghi e generazione più lenta.
|
|
|
|
|
TOP_K = 6
|
|
|
|
|
|
|
|
|
|
# ── Generazione ───────────────────────────────────────────────────────────────
|
|
|
|
|
|
|
|
|
|
# Temperatura del modello LLM.
|
|
|
|
|
# 0.0 = completamente deterministico (stessa risposta ad ogni run)
|
|
|
|
|
# 0.7 = più creativo e vario
|
2026-05-12 10:37:39 +02:00
|
|
|
TEMPERATURE = 0.2
|
2026-04-17 18:50:31 +02:00
|
|
|
|
|
|
|
|
# Disabilita il "thinking" (ragionamento interno) nei modelli Qwen3/Qwen3.5.
|
|
|
|
|
# True = risposta diretta, più veloce
|
|
|
|
|
# False = ragionamento interno abilitato (più lento ma potenzialmente più accurato)
|
|
|
|
|
NO_THINK = True
|
|
|
|
|
|
|
|
|
|
# ── Embedding ─────────────────────────────────────────────────────────────────
|
|
|
|
|
|
|
|
|
|
# Modello di embedding usato da Ollama.
|
2026-04-19 00:03:43 +02:00
|
|
|
# Deve corrispondere al modello usato durante la vettorizzazione (ingest.py).
|
|
|
|
|
# Se cambi questo, devi rieseguire ingest.py con --force.
|
2026-04-17 18:50:31 +02:00
|
|
|
EMBED_MODEL = "nomic-embed-text"
|
|
|
|
|
|
2026-06-04 14:29:06 +02:00
|
|
|
# Caratteri massimi inviati al modello di embedding.
|
|
|
|
|
# Il testo viene troncato SOLO per il vettore; il documento completo
|
|
|
|
|
# rimane in ChromaDB. nomic-embed-text: 8192 token ≈ 6000 char sicuri.
|
|
|
|
|
EMBED_MAX_CHARS: int = 6000
|
|
|
|
|
|
2026-04-17 18:50:31 +02:00
|
|
|
# ── Ollama ────────────────────────────────────────────────────────────────────
|
|
|
|
|
|
|
|
|
|
# URL del server Ollama (default: locale sulla porta 11434).
|
|
|
|
|
OLLAMA_URL = "http://localhost:11434"
|
|
|
|
|
|
|
|
|
|
# Modello LLM. Scegli in base alla RAM disponibile (vedi README).
|
2026-05-12 10:37:39 +02:00
|
|
|
OLLAMA_MODEL = "qwen3.5:4b"
|
2026-04-17 18:50:31 +02:00
|
|
|
|
|
|
|
|
# ── Prompt di sistema ─────────────────────────────────────────────────────────
|
|
|
|
|
|
2026-06-04 14:33:48 +02:00
|
|
|
# Istruzioni inviate al LLM prima del contesto e della domanda.
|
|
|
|
|
# Mantieni le risposte ancorate al contesto per evitare allucinazioni.
|
2026-04-17 18:50:31 +02:00
|
|
|
SYSTEM_PROMPT = (
|
2026-06-04 14:33:48 +02:00
|
|
|
"Sei un assistente specializzato nell'analisi di documenti accademici. "
|
|
|
|
|
"Rispondi alla domanda basandoti esclusivamente sul contesto fornito. "
|
|
|
|
|
"Sii preciso e conciso; cita la sezione di riferimento quando è utile. "
|
|
|
|
|
"Se il contesto non contiene informazioni sufficienti, rispondi: "
|
2026-04-17 18:50:31 +02:00
|
|
|
"\"Non trovo questa informazione nel documento.\""
|
|
|
|
|
)
|