114 Commits

Author SHA1 Message Date
754d43771d Merge branch '2-news-api' into 3-market-api 2025-09-30 17:30:01 +02:00
a5ef982e12 Fixes
- separated tests
- fix tests
- fix bugs reintroduced my previous merge
2025-09-30 16:38:25 +02:00
3074b58ea5 Fix import statements 2025-09-30 15:58:52 +02:00
7c61b311aa Merge branch '2-news-api' into 3-market-api 2025-09-30 15:50:49 +02:00
Simone Garau
8304cf9ea8 pre merge con giacomo 2025-09-30 15:36:50 +02:00
43b2bddba5 Add Reddit API wrapper and related tests; update environment configuration 2025-09-30 15:36:37 +02:00
c1952526ad Fix class and test method names for DuckDuckGoWrapper 2025-09-30 12:54:19 +02:00
15182e23c2 Refactor try_call_all method to return a dictionary of results; update tests for success and partial failures 2025-09-30 12:41:45 +02:00
trojanhorse47
cce09b493e Merge remote-tracking branch 'origin/3-market-api' into tool
# Conflicts:
#	src/app.py
#	src/app/agents/market_agent.py
#	src/app/markets/__init__.py
#	src/app/markets/coinbase.py
#	src/app/markets/cryptocompare.py
#	src/app/pipeline.py
#	tests/agents/test_market.py
#	tests/agents/test_predictor.py
2025-09-30 12:37:46 +02:00
trojanhorse47
fcbb312d08 - Refactor struttura progetto: divisione tra agent e toolkit 2025-09-30 12:28:44 +02:00
dfe3b4ad90 Add DuckDuckGo and Google News wrappers; refactor CryptoPanic and NewsAPI
- Implemented DuckDuckGoWrapper for news retrieval using DuckDuckGo tools.
- Added GoogleNewsWrapper for accessing Google News RSS feed.
- Refactored CryptoPanicWrapper to unify get_top_headlines and get_latest_news methods.
- Updated NewsApiWrapper to simplify top headlines retrieval.
- Added tests for DuckDuckGo and Google News wrappers.
- Enhanced documentation for CryptoPanicWrapper and NewsApiWrapper.
- Created base module for social media integrations.
2025-09-30 12:24:43 +02:00
Simone Garau
fb38aef790 pre merge con phil 2025-09-30 12:11:10 +02:00
40fb400a9c Enhance WrapperHandler
- docstrings
- add try_call_all method
- update tests
2025-09-30 11:46:52 +02:00
912a9b9c8d Implement WrapperHandler for managing multiple news API wrappers; add tests for wrapper functionality 2025-09-30 02:55:09 +02:00
6aa9d4969f Add CryptoPanic API integration and related tests; update .env.example and test configurations 2025-09-30 01:54:26 +02:00
c17a948ae0 Refactor news API integration to use NewsApiWrapper and GnewsWrapper; add tests for Gnews API functionality 2025-09-30 00:34:07 +02:00
Simone Garau
dfca44c9d5 ToDo:
1. Aggiungere un aggregator per i dati recuperati dai provider.
2. Lavorare effettivamente all'issue

Done:
1. creati test per i provider
2. creato market_providers_api_demo.py per mostrare i dati recuperati dalle api dei providers
3. aggiornato i provider
4. creato il provider binance sia pubblico che con chiave
5. creato error_handler.py per gestire decoratori e utilità: retry automatico, gestione timeout...
2025-09-29 21:28:41 +02:00
fc4753a245 Add news API functionality and update tests for article retrieval 2025-09-29 19:21:08 +02:00
badd3e2a6c Add news API integration and related configurations
- Update .env.example to include NEWS_API_KEY configuration
- Add newsapi-python dependency in pyproject.toml
- Implement NewsAPI class for fetching news articles
- Create Article model for structured news data
- Add tests for NewsAPI functionality in test_news_api.py
- Update pytest configuration to include news marker
2025-09-29 15:15:18 +02:00
2be9e0f319 Update pytest configuration and dependencies in pyproject.toml 2025-09-29 14:39:31 +02:00
trojanhorse47
c82f10b32c Creazione branch tool, refactor degli import e soppressione dei warning 2025-09-29 12:22:02 +02:00
4615ebe63e Pydantic
- use Pydantic for input & output for models
- update ToolAgent to utilize new model definitions
- improve test cases for consistency
2025-09-27 18:51:20 +02:00
03d8523a5a Refactor market system and improve app configuration
- Refactor market system from singleton function to class-based architecture with MarketAPIs
- Add automatic API key detection for Coinbase and CryptoCompare wrappers
- Improve error handling and logging with agno.utils.log throughout the application
- Split Models class into separate methods for online and local model availability
- Add proper JSON response extraction with thinking pattern support
- Enhance ToolAgent with better state management for provider and style selection
- Update Gradio app with proper server configuration and logging
2025-09-27 17:49:32 +02:00
a51ec67ac1 Add TODO comments for request analysis and sentiment handling in ToolAgent 2025-09-26 16:17:30 +02:00
eaa2e9e12a Merge branch 'market-agent' 2025-09-26 13:38:32 +02:00
c826a8e093 Refactor
- ToolAgent initialization
- market API handling list
2025-09-26 13:38:14 +02:00
Giacomo Bertolazzi
058ecb9d9d Update README.md
- fixed todo list
2025-09-26 13:22:10 +02:00
a3824489ed Refactor pytest configuration:
- streamline marker addition
- remove unused OLLAMA_MODELS_PATH (OLLAMA_HOST should be enough even for Docker)
2025-09-26 13:15:50 +02:00
3e746cdd45 Fixed Docker
- Update Dockerfile, docker-compose
- fixed app instructions not working
- fixed json ouput sanification
- added tests for predictor
2025-09-26 12:45:05 +02:00
d8ed299724 Remove pytest configuration file and clean up test suite by optimizing imports and simplifying test methods 2025-09-26 05:03:18 +02:00
89c8faf1be Update README and tests: improve test instructions and add new test suite for market system 2025-09-26 04:52:49 +02:00
576d69921b Enhance documentation 2025-09-26 04:11:04 +02:00
148bff7cfd Refactor Predictor and market data handling
- Added Predictor class with input preparation and instructions for financial strategy generation.
- Removed PredictorAgent class and integrated its functionality into the new Predictor module.
- Created a base market API wrapper and specific implementations for Coinbase and CryptoCompare.
- Introduced PublicBinanceAgent for fetching public prices from Binance.
- Refactored ToolAgent to utilize the new Predictor and market API wrappers for improved data handling and predictions.
- Updated models to streamline the selection of available LLM providers.
- Removed deprecated signer classes for Coinbase and CryptoCompare.
2025-09-26 03:43:31 +02:00
48502fc6c7 !! Broken for now !!
Refactor environment variables and remove unused API key checks; introduce Models enum for supported models.
2025-09-25 22:24:24 +02:00
48f1efd2b2 REMOVED VSCODE FOLDER 2025-09-25 21:21:01 +02:00
c861234c17 REMOVED IDEA FOLDER 2025-09-25 21:19:30 +02:00
60c555fd8c Refactoring main
Aggiornato il file .env.example.
Aggiunta la funzione available_keys() in app.py per controllare le chiavi API disponibili.
Spostato example.py nelle demo.
Rimosso requirements.txt.
2025-09-25 21:03:11 +02:00
023cf575cf Aggiornato il README.md per riflettere il nuovo obiettivo del progetto e migliorata la sezione di installazione. Spostata la demo di Ollama per mostrare funzionalità chiave. 2025-09-25 20:36:57 +02:00
Simone Garau
5dbdb050ca pulizia veloce 2025-09-25 18:24:39 +02:00
Simone Garau
995048831c Integrato 3 fonti ma da finire binance. Fatto una struttura con i signers per i servizi. 2025-09-23 18:04:52 +02:00
Simone Garau
bc6548c6fb Aggiornamento documentazione 2025-09-19 14:10:37 +02:00
trojanhorse47
af9e022f17 * Correzione minore di pyproject.toml 2025-09-19 13:06:30 +02:00
trojanhorse47
c343fea48e * Modificati uv.lock e requirements.txt con aggiunta di ollama (da branch ollama) 2025-09-19 13:05:27 +02:00
trojanhorse47
6b79cc3b80 Merge remote-tracking branch 'origin/ollama' into predictor
# Conflicts:
#	.env.example
#	pyproject.toml
#	src/app.py
#	src/example.py
#	uv.lock
2025-09-19 12:59:35 +02:00
Simone Garau
2a5a44913f pre merge 2025-09-19 12:49:01 +02:00
Simone Garau
25b93985e5 Inserito ollama fra le possibilità usando il modello gpt-oss:latest. La risposta di ollama è parsificata male, vede anche il thinking del modello 2025-09-19 11:55:14 +02:00
trojanhorse47
6729a66d50 * Modificati caricamento e chiamata di openai (aggiornati al nuovo SDK) 2025-09-19 11:46:54 +02:00
trojanhorse47
95559551a3 * Modificati caricamenti dei provider google e anthropic.
* 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).
2025-09-19 11:39:11 +02:00
trojanhorse47
45014fa94b + Creato scheletro dell'app con agenti mock per test.
* Modificato pyproject.toml con versioni aggiornate di agno (aggiunto file requirements.txt per compatibilità eventuale con hugging face).

# Consiglio di spostare il contenuto di src direttamente nella directory base per tenere compatibilità con hugging face in caso si voglia sfruttare in futuro.
2025-09-19 11:08:17 +02:00
fc725e48e2 Refactor model handling and agent construction; remove deprecated example script 2025-09-16 17:42:22 +02:00