Using this feature requires Sanity to send data to OpenAI.com, and Pinecone.io for storing vector interpretations of documents.
CLI for the Sanity Embeddings Index API.
The Embeddings Index API enables creating named embeddings vector indexes.
An embeddings index contains embeddings for all Sanity documents matching a configured GROQ filter in a dataset. A GROQ projection is applied to matching documents before vectorization.
You can query indexes using semantic text search to obtain a list of matching document IDs sorted by relevance.
When an index is first created, all documents matching the configured filter are synced into the index. Creating an index can take time, depending on the number of existing documents and the indexer load.
npm i -D @sanity/embeddings-index-cli
$ embeddings-index --help
Usage
$ embeddings-index [--help] [--debug] <command> [<args>]
These are common commands for CRUD operations on embeddings indexes:
create Create a new embeddings index
delete Delete an existing embeddings index
list List all embedding indexes
get Get a specific embeddings index
query Query an embeddings index
version Show the currently installed version of Embeddings Index CLI
Run the commands in a Sanity project directory with a 'sanity.cli.(ts|js)' file.
Options
--verbose Log everything. This option conflicts with --silent
--silent Do not print info and warning messages. This option conflicts with --verbose
--debug Print stack trace on errors
--version Output the version number
--help Output usage information
See the individual commands for more, ie embeddings-index create --help
.
Use npx @sanity/embeddings-index-cli
in place of embeddings-index
in the commands.
Example:
npx @sanity/embeddings-index-cli --help
MIT © Sanity.io
This plugin uses @sanity/plugin-kit with default configuration for build & watch scripts.
See Testing a plugin in Sanity Studio on how to run this plugin with hotreload in the studio.
Run "CI & Release" workflow. Make sure to select the main branch and check "Release new version".
Semantic release will only release on configured branches, so it is safe to run release on any branch.