From 3871a94481d6d45e002d5d9ec58cc34d7e4deee5 Mon Sep 17 00:00:00 2001 From: trojanhorse47 <79195021+trojanhorse47@users.noreply.github.com> Date: Wed, 29 Oct 2025 16:16:16 +0100 Subject: [PATCH] 55 configsyaml condivisi (#57) * feat: make configs.yaml local and add configs.yaml.example template - Add configs.yaml.example with all available configurations - Add configs.yaml to .gitignore to prevent tracking local configs - Remove configs.yaml from git tracking with git rm --cached - Update README with separate sections for configs.yaml and .env - Maintain consistent naming convention with .env.example * Update README.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Remove gemini-2.0-pro from configs.yaml.example Removed Gemini Pro model from configs example --------- Co-authored-by: Simone Garau <20005068@studenti.uniupo.it> Co-authored-by: Giacomo Bertolazzi <31776951+Berack96@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .gitignore | 3 +++ README.md | 23 +++++++++++++++++++---- configs.yaml => configs.yaml.example | 2 -- 3 files changed, 22 insertions(+), 6 deletions(-) rename configs.yaml => configs.yaml.example (93%) diff --git a/.gitignore b/.gitignore index a940c3c..4dbbd3a 100644 --- a/.gitignore +++ b/.gitignore @@ -136,6 +136,9 @@ ENV/ env.bak/ venv.bak/ +# Local configurations +configs.yaml + # Spyder project settings .spyderproject .spyproject diff --git a/README.md b/README.md index 1c5f023..b6d9f91 100644 --- a/README.md +++ b/README.md @@ -31,10 +31,22 @@ L'installazione di questo progetto richiede 3 passaggi totali (+1 se si vuole sv ### **1. Configurazioni** -Ci sono due file di configurazione principali che l'app utilizza: `config.yaml` e `.env`.\ -Il primo contiene le configurazioni generali dell'applicazione e può essere modificato a piacimento, mentre il secondo è utilizzato per le variabili d'ambiente. +Ci sono due file di configurazione principali che l'app utilizza: `configs.yaml` e `.env`. -Per il secondo, bisogna copiare il file `.env.example` in `.env` e successivamente modificalo con le tue API keys: +#### **1.1 File di Configurazione dell'Applicazione** + +Il file `configs.yaml` contiene le configurazioni generali dell'applicazione (modelli, strategie, provider API, ecc.) e deve essere creato localmente copiando il file di esempio: + +```sh +cp configs.yaml.example configs.yaml +nano configs.yaml # esempio di modifica del file +``` + +Il file `configs.yaml.example` include tutte le configurazioni disponibili con tutti i wrapper e modelli abilitati. Puoi personalizzare il tuo `configs.yaml` locale in base ai modelli che hai scaricato con Ollama e ai provider API che intendi utilizzare. **Questo file non verrà tracciato da git**, quindi ogni sviluppatore può mantenere la propria configurazione locale senza interferire con gli altri. + +#### **1.2 Variabili d'Ambiente** + +Per le variabili d'ambiente, bisogna copiare il file `.env.example` in `.env` e successivamente modificarlo con le tue API keys: ```sh cp .env.example .env nano .env # esempio di modifica del file @@ -45,6 +57,9 @@ Nel file [.env.example](.env.example) sono presenti tutte le variabili da compil Le chiavi non sono necessarie per far partire l'applicazione, ma senza di esse alcune funzionalità non saranno disponibili o saranno limitate. Per esempio senza la chiave di NewsAPI non si potranno recuperare le ultime notizie sul mercato delle criptovalute. Ciononostante, l'applicazione usa anche degli strumenti che non richiedono chiavi API, come Yahoo Finance e GNews, che permettono di avere comunque un'analisi di base del mercato. +> [!NOTE]\ +> Entrambi i file `.env` e `configs.yaml` non vengono tracciati da git, quindi puoi modificarli liberamente senza preoccuparti di fare commit accidentali delle tue configurazioni personali. + ### **2. Ollama** Per utilizzare modelli AI localmente, è necessario installare Ollama, un gestore di modelli LLM che consente di eseguire modelli direttamente sul proprio hardware. Si consiglia di utilizzare Ollama con il supporto GPU per prestazioni ottimali, ma è possibile eseguirlo anche solo con la CPU. @@ -52,7 +67,7 @@ Per l'installazione scaricare Ollama dal loro [sito ufficiale](https://ollama.co Dopo l'installazione, si possono iniziare a scaricare i modelli desiderati tramite il comando `ollama pull :`. -I modelli usati dall'applicazione sono quelli specificati nel file [config.yaml](config.yaml) alla voce `model`. Se in locale si hanno dei modelli diversi, è possibile modificare questa voce per usare quelli disponibili. +I modelli usati dall'applicazione sono quelli specificati nella sezione `models` del file di configurazione `configs.yaml` (ad esempio `models.ollama`). Se in locale si hanno dei modelli diversi, è possibile modificare il file `configs.yaml` per usare quelli disponibili. I modelli consigliati per questo progetto sono `qwen3:4b` e `qwen3:1.7b`. ### **3. Docker** diff --git a/configs.yaml b/configs.yaml.example similarity index 93% rename from configs.yaml rename to configs.yaml.example index 96ddc8f..9591519 100644 --- a/configs.yaml +++ b/configs.yaml.example @@ -17,8 +17,6 @@ models: gemini: - name: gemini-2.0-flash label: Gemini - # - name: gemini-2.0-pro # TODO Non funziona, ha un nome diverso - # label: Gemini Pro gpt: - name: gpt-4o label: OpenAIChat