step-9: add pipeline RAG interattiva
Aggiunge rag.py (loop interattivo retrieval+generation), config.py (tutti i parametri in un unico file), test_ollama.py (verifica Ollama senza ChromaDB) e README.md dedicato. Aggiunge .env.example e aggiorna .gitignore
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
# ─── Step 9 — Configurazione RAG ─────────────────────────────────────────────
|
||||
#
|
||||
# Modifica questo file per cambiare i parametri della pipeline.
|
||||
#
|
||||
# Uso:
|
||||
# python step-9/rag.py --stem nietzsche
|
||||
# ──────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
# ── 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.0
|
||||
|
||||
# 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.
|
||||
# Deve corrispondere al modello usato durante la vettorizzazione (step-8).
|
||||
# Se cambi questo, devi rieseguire step-8 con --force.
|
||||
EMBED_MODEL = "nomic-embed-text"
|
||||
|
||||
# ── 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:0.8b"
|
||||
|
||||
# ── Prompt di sistema ─────────────────────────────────────────────────────────
|
||||
|
||||
# Istruzioni di comportamento inviate al LLM prima del contesto e della domanda.
|
||||
# Modifica per cambiare il tono, la lingua, il grado di libertà interpretativa
|
||||
# o le condizioni di fallback ("non so rispondere").
|
||||
SYSTEM_PROMPT = (
|
||||
"Sei un assistente che risponde usando il contesto fornito. "
|
||||
"Sintetizza e interpreta liberamente i passaggi del contesto per rispondere alla domanda. "
|
||||
"Se il contesto contiene informazioni pertinenti, anche indirette, usale per costruire una risposta. "
|
||||
"Solo se il contesto è completamente irrilevante, rispondi: "
|
||||
"\"Non trovo questa informazione nel documento.\""
|
||||
)
|
||||
Reference in New Issue
Block a user