# Jarvis-Cognitive Un assistente AI in stile “Marco Aurelio” con backend FastAPI, UI Streamlit e memoria RAG. Questa directory contiene tutto il necessario per farlo girare su Linux. ## Prerequisiti - Python 3.12 (consigliato) - API key per Google Generative AI (`GOOGLE_API_KEY`) e Tavily (`TAVILY_API_KEY`) ## Setup rapido ```bash cd /mnt/ssd/data/python-lab/Jarvis-Cognitive python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt # opzionale, embedding locale pip install sentence-transformers ``` Compila `data/.env` con le chiavi necessarie (vedi `README_[ai].md`). ## Avvio consigliato ```bash ./run.sh [porta_api] # es.: ./run.sh 192.168.1.51 18601 18000 ``` `run.sh` attiva il venv, avvia il backend (`api/api_server.py`) sulla porta indicata (default 18000) e Streamlit in modalità headless sulla porta UI. `Ctrl+C` chiude entrambi. Manuale: - Backend: `HOST=0.0.0.0 PORT=18000 python api/api_server.py` - UI: `JARVIS_API_BASE_URL=http://:18000 STREAMLIT_SERVER_PORT=18601 streamlit run ui/dashboard.py --server.address 0.0.0.0 --server.headless true --browser.gatherUsageStats false` ## Indicizzazione documenti RAG ```bash source .venv/bin/activate python scripts/indicizza_documenti.py --profile aurelio ``` Le embedding sono configurate in `config/config.yaml` (attualmente `hf` con `sentence-transformers/all-MiniLM-L6-v2`). I documenti indicizzati e la memoria chat risiedono in `data/agents//`. ## PROFILI supportati - `aurelio` (default) - `seneca` Scegli il profilo impostando `AGENT_PROFILE` prima di avviare backend e UI; le memorie restano separate. ## Documentazione aggiuntiva - `README_[ai].md`: diario tecnico completo (architettura, roadmap, istruzioni dettagliate) - `docs/`: approfondimenti sui profili e prompt Buon lavoro con la Flotta Autonoma!