* Modificata _predict_google: ora è funzionante. + Aggiunto debug per provider attivi trovati. # NB: Sia le chiamate che le chiamate agli modelli potrebbero non essere aggiornati (non ho ancora letto la documentazione recente e potrebbero essere da modificare).
Progetto di Esame: Da definire
Questa è la repository per l'esame di Applicazioni Intelligenti che consiste in:
- Progetto per 2/3 del voto.
- Orale per 1/3 dei punti composto da:
- Presentazione (come se lo facessimo ad un cliente) di gruppo
- Orale singolo con domande del corso (teoria e strumenti visti)
L'obiettivo di questo progetto è creare un sistema basato su LLM Agents e deve dimostrare la capacità di ragionare, adattarsi a eventi esterni e comunicare in modo intelligente.
Installazione
Per l'installazione si può utilizzare un approccio tramite uv (manuale) oppure utilizzare un ambiente Docker già pronto (automatico).
Prima di avviare l'applicazione è però necessario configurare correttamente le API keys, altrimenti il progetto, anche se installato correttamente, non riuscirà a partire. Le API Keys puoi ottenerle tramite i seguenti servizi:
- Google AI: Google AI Studio (gratuito con limiti)
- Anthropic: Anthropic Console
- DeepSeek: DeepSeek Platform
- OpenAI: OpenAI Platform
Nota che alcune API sono gratuite con limiti di utilizzo, altre sono a pagamento. Google offre attualmente l'accesso gratuito con limiti ragionevoli.
Variabili d'Ambiente
1. Copia il file di esempio:
cp .env.example .env
2. Modifica il file .env creato con le tue API keys, inserendole nella variabile opportuna dopo l'uguale e senza spazi:
GOOGLE_API_KEY=
ANTHROPIC_API_KEY=
DEEPSEEK_API_KEY=
OPENAI_API_KEY=
Opzione 1 UV
1. Installazione uv: Per prima cosa installa uv se non è già presente sul sistema:
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
2. Ambiente e dipendenze: uv installerà python e creerà automaticamente l'ambiente virtuale con le dipendenze corrette:
uv sync --frozen --no-cache
3. Run: Successivamente si può far partire il progetto tramite il comando:
uv run python src/app.py
Opzione 2 Docker
Alternativamente, se si ha installato Docker, si può utilizzare il Dockerfile e il docker-compose.yaml per creare il container con tutti i file necessari e già in esecuzione:
IMPORTANTE: Assicurati di aver configurato il file .env come descritto sopra prima di avviare Docker.
docker compose up --build -d
Il file .env verrà automaticamente caricato nel container grazie alla configurazione in docker-compose.yaml.
Applicazione
L'applicazione è attualmente in fase di sviluppo. Maggiori dettagli saranno aggiunti durante l'implementazione.