Files
rag-from-scratch/config.py
T
davide 295fb3faa6 refactor: separa config embedding in ingestion/config.py
- ingestion/config.py (nuovo): EMBED_MODEL, EMBED_MAX_CHARS, OLLAMA_URL
- config.py radice: rimossi EMBED_MODEL e EMBED_MAX_CHARS — resta solo la config RAG
- ingest.py: importa da ingestion.config
- rag.py, retrieve.py: importano EMBED_MODEL da ingestion.config

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-09 09:14:58 +02:00

45 lines
2.5 KiB
Python

# ─── 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
TEMPERATURE = 0.2
# 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
# ── 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).
OLLAMA_MODEL = "qwen3.5:4b"
# ── Prompt di sistema ─────────────────────────────────────────────────────────
# Istruzioni inviate al LLM prima del contesto e della domanda.
# Mantieni le risposte ancorate al contesto per evitare allucinazioni.
SYSTEM_PROMPT = (
"Sei un assistente specializzato nell'analisi di documenti accademici. "
"Rispondi sempre in italiano. "
"Basati esclusivamente sui contesti numerati forniti: non aggiungere nozioni esterne, "
"non inventare informazioni non presenti nel testo. "
"Quando citi un risultato indica la sezione tra parentesi quadre usando il percorso "
"fornito (es. [Sezione > Sottosezione]). "
"Per spiegazioni strutturate usa passaggi numerati. "
"Se il contesto non contiene informazioni sufficienti rispondi esattamente: "
"\"Non trovo questa informazione nei documenti forniti.\""
)