75 lines
1.6 KiB
Markdown
75 lines
1.6 KiB
Markdown
# 🔮 Sibilla
|
|
|
|
> *L'oracolo AI che cerca nel web e risponde alle tue domande.*
|
|
> Self-hosted Perplexity-like search engine.
|
|
|
|
**Sibilla** è un motore di ricerca AI self-hosted che combina:
|
|
|
|
- 🧠 **Google Gemini API** — modelli linguistici avanzati con grounding su web search
|
|
- 🔧 **MCP (Model Context Protocol)** — tool use per estendere le capacità dell'AI
|
|
- 🔍 **Web search integrata** — ricerca e sintesi delle fonti in tempo reale
|
|
- 🖥️ **Flask web app** — interfaccia pulita e reattiva
|
|
|
|
```
|
|
Tu chiedi → Sibilla cerca nel web → Sintetizza le fonti → Ti risponde con citazioni
|
|
```
|
|
|
|
## Architettura (pianificata)
|
|
|
|
```
|
|
sibilla/
|
|
├── src/sibilla/
|
|
│ ├── app.py # Flask app factory
|
|
│ ├── cli.py # Entry point
|
|
│ ├── search.py # Web search + scraping
|
|
│ ├── ai.py # Google Gemini API client
|
|
│ ├── mcp.py # MCP tool integration
|
|
│ └── prompts.py # Prompt templates
|
|
├── templates/
|
|
│ └── index.html # Interfaccia di ricerca
|
|
├── static/
|
|
│ ├── style.css # Stili
|
|
│ └── app.js # Logica frontend
|
|
└── tests/
|
|
└── ...
|
|
```
|
|
|
|
## Setup
|
|
|
|
```bash
|
|
cd sibilla
|
|
python3 -m venv .venv
|
|
source .venv/bin/activate
|
|
pip install -e ".[dev]"
|
|
```
|
|
|
|
Crea un file `.env` con la tua API key Google:
|
|
|
|
```
|
|
GOOGLE_API_KEY=your-api-key-here
|
|
```
|
|
|
|
## Uso
|
|
|
|
```bash
|
|
# Avvia il server
|
|
sibilla
|
|
|
|
# Oppure
|
|
python -m sibilla
|
|
```
|
|
|
|
Poi apri http://127.0.0.1:5000 nel browser.
|
|
|
|
## Sviluppo
|
|
|
|
```bash
|
|
pip install -e ".[dev]"
|
|
pytest
|
|
ruff check src tests
|
|
```
|
|
|
|
## Licenza
|
|
|
|
MIT
|