diff --git a/README.md b/README.md index 31be3da..04d7eab 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,33 @@ Questa è la repository per l'esame di Applicazioni Intelligenti che consiste in 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) +Per l'installazione si può utilizzare un approccio tramite **uv** (manuale) oppure utilizzare un ambiente **Docker** già pronto (automatico). -### UV +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](https://makersuite.google.com/app/apikey) (gratuito con limiti) +- **Anthropic**: [Anthropic Console](https://console.anthropic.com/) +- **DeepSeek**: [DeepSeek Platform](https://platform.deepseek.com/) +- **OpenAI**: [OpenAI Platform](https://platform.openai.com/api-keys) + +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**: +```sh +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: +```dotenv +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: ```sh # Windows (PowerShell) @@ -30,11 +54,16 @@ uv sync --frozen --no-cache uv run python src/app.py ``` -### Docker +### Opzione 2 Docker Alternativamente, se si ha installato [Docker](https://www.docker.com), si può utilizzare il [Dockerfile](Dockerfile) e il [docker-compose.yaml](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. + ```sh 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. diff --git a/docker-compose.yaml b/docker-compose.yaml index 4438e01..ef127ff 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -6,3 +6,10 @@ services: - "8000:8000" volumes: - .:/app + env_file: + - .env + environment: + - GOOGLE_API_KEY=${GOOGLE_API_KEY} + - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} + - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} + - OPENAI_API_KEY=${OPENAI_API_KEY}