Knowledge Table con Milvus
Knowledge Table, sviluppato da WhyHow AI, è un pacchetto open-source progettato per facilitare l'estrazione e l'esplorazione di dati strutturati da documenti non strutturati. Fornisce agli utenti un'interfaccia simile a un foglio di calcolo e consente di creare rappresentazioni della conoscenza, come tabelle e grafici, attraverso un'interfaccia di interrogazione in linguaggio naturale. Il pacchetto include regole di estrazione personalizzabili, opzioni di formattazione e tracciabilità dei dati attraverso la provenienza, rendendolo adattabile a diverse applicazioni. Supporta la perfetta integrazione nei flussi di lavoro RAG, soddisfacendo sia gli utenti aziendali che necessitano di un'interfaccia facile da usare, sia gli sviluppatori che necessitano di un backend flessibile per l'elaborazione efficiente dei documenti.
Per impostazione predefinita, Knowledge Table utilizza il database Milvus per memorizzare e recuperare i dati estratti. Questo permette agli utenti di cercare, filtrare e analizzare facilmente i dati utilizzando le potenti funzioni di Milvus. In questa esercitazione verrà mostrato come iniziare a lavorare con Knowledge Table e Milvus.
Prerequisiti
- Docker
- Docker Compose
Clonare il progetto
$ git clone https://github.com/whyhow-ai/knowledge-table.git
Configurare l'ambiente
Il file .env.example
si trova nella cartella principale del progetto. Copiare questo file in .env
e inserire le variabili d'ambiente necessarie.
Per Milvus, occorre impostare le variabili d'ambiente MILVUS_DB_URI
e MILVUS_DB_TOKEN
. Ecco alcuni suggerimenti:
- L'impostazione di
MILVUS_DB_URI
come file locale, ad esempio./milvus.db
, è il metodo più conveniente, poiché utilizza automaticamente Milvus Lite per memorizzare tutti i dati in questo file.- Se si dispone di una grande quantità di dati, ad esempio più di un milione di vettori, è possibile impostare un server Milvus più performante su Docker o Kubernetes. In questa configurazione, utilizzare l'indirizzo e la porta del server come uri, ad esempio
http://localhost:19530
. Se si abilita la funzione di autenticazione su Milvus, utilizzare "<nome_utente>:<password>" come token, altrimenti non impostare il token.- Se si desidera utilizzare Zilliz Cloud, il servizio cloud completamente gestito per Milvus, regolare
MILVUS_DB_URI
eMILVUS_DB_TOKEN
, che corrispondono all'endpoint pubblico e alla chiave Api di Zilliz Cloud.
Oltre a Milvus, è necessario impostare anche altri ambienti, ad esempio OPENAI_API_KEY
. Ognuno di questi ambienti può essere ottenuto dai rispettivi siti web.
Avvio dell'applicazione
$ docker compose up -d --build
Arresto dell'applicazione
$ docker compose down
Accesso al progetto
Il frontend è accessibile all'indirizzo http://localhost:3000
, mentre il backend è accessibile all'indirizzo http://localhost:8000
.
È possibile giocare con l'interfaccia utente e provare con i propri documenti.
Per ulteriori dimostrazioni, è possibile consultare la documentazione ufficiale di Knowledge Table.