Skip to main content
Version: v0.2.23

remote::weaviate

Description​

Weaviate is a vector database provider for Llama Stack. It allows you to store and query vectors directly within a Weaviate database. That means you're not limited to storing vectors in memory or in a separate service.

Features​

Weaviate supports:

  • Store embeddings and their metadata
  • Vector search
  • Full-text search
  • Hybrid search
  • Document storage
  • Metadata filtering
  • Multi-modal retrieval

Usage​

To use Weaviate in your Llama Stack project, follow these steps:

  1. Install the necessary dependencies.
  2. Configure your Llama Stack project to use chroma.
  3. Start storing and querying vectors.

Installation​

To install Weaviate see the Weaviate quickstart documentation.

Documentation​

See Weaviate's documentation for more details about Weaviate in general.

Configuration​

FieldTypeRequiredDefaultDescription
weaviate_api_keystr | NoneNoThe API key for the Weaviate instance
weaviate_cluster_urlstr | NoneNolocalhost:8080The URL of the Weaviate cluster
kvstoreutils.kvstore.config.RedisKVStoreConfig | utils.kvstore.config.SqliteKVStoreConfig | utils.kvstore.config.PostgresKVStoreConfig | utils.kvstore.config.MongoDBKVStoreConfig, annotation=NoneType, required=False, default='sqlite', discriminator='type'NoConfig for KV store backend (SQLite only for now)

Sample Configuration​

weaviate_api_key: null
weaviate_cluster_url: ${env.WEAVIATE_CLUSTER_URL:=localhost:8080}
kvstore:
type: sqlite
db_path: ${env.SQLITE_STORE_DIR:=~/.llama/dummy}/weaviate_registry.db