mirror of
https://github.com/mudler/LocalAI.git
synced 2024-12-22 14:02:24 +00:00
e34b5f0119
Closes https://github.com/go-skynet/LocalAI/issues/1066 and https://github.com/go-skynet/LocalAI/issues/1065 Standardizes all `examples/`: - Models in one place (other than `rwkv`, which was one-offy) - Env files as `.env.example` with `cp` - Also standardizes comments and links docs |
||
---|---|---|
.. | ||
data | ||
.gitignore | ||
docker-compose.yml | ||
models | ||
query.py | ||
README.md | ||
store.py | ||
update.py |
Data query example
This example makes use of Llama-Index to enable question answering on a set of documents.
It loosely follows the quickstart.
Summary of the steps:
- prepare the dataset (and store it into
data
) - prepare a vector index database to run queries on
- run queries
Requirements
You will need a training data set. Copy that over data
.
Setup
Start the API:
# Clone LocalAI
git clone https://github.com/go-skynet/LocalAI
cd LocalAI/examples/query_data
wget https://huggingface.co/skeskinen/ggml/resolve/main/all-MiniLM-L6-v2/ggml-model-q4_0.bin -O models/bert
wget https://gpt4all.io/models/ggml-gpt4all-j.bin -O models/ggml-gpt4all-j
# start with docker-compose
docker-compose up -d --build
Create a storage
In this step we will create a local vector database from our document set, so later we can ask questions on it with the LLM.
Note: OPENAI_API_KEY is not required. However the library might fail if no API_KEY is passed by, so an arbitrary string can be used.
export OPENAI_API_BASE=http://localhost:8080/v1
export OPENAI_API_KEY=sk-
python store.py
After it finishes, a directory "storage" will be created with the vector index database.
Query
We can now query the dataset.
export OPENAI_API_BASE=http://localhost:8080/v1
export OPENAI_API_KEY=sk-
python query.py
Update
To update our vector database, run update.py
export OPENAI_API_BASE=http://localhost:8080/v1
export OPENAI_API_KEY=sk-
python update.py