Vector — CLI Guide
The data-plane vector command is dodil data vsearch — KNN over a table’s vector<n> column. Everything else you do with a vector column is plain table SQL (create, insert, index), covered in Tables → CLI Guide.
| Page | Command | Maps to |
|---|---|---|
dodil data vsearch | KNN by --vector or --text (alias dodil data knn) | dodil.tables.v1.TablesVector.QueryVectors on the tables-gateway |
Collection + template commands moved to Pipelines.
dodil data vector collection add / list / get / deleteanddodil data vector templatesare the auto-embed-on-ingest surface — a vector pipeline, not a data-plane op — so they now live in Pipelines:dodil data vector collectionanddodil data template.
For install, auth, output format and global flags see CLI Basics. For the underlying contracts see Vector — API Reference.
Quick session — a vector table, end to end
# 1. Create a table with a vector column
dodil data table create items -b kb-prod \
--columns-json '[{"name":"id","type":"VARCHAR"},{"name":"embedding","type":"VECTOR(4)"}]' \
--merge-key id
# 2. Upsert a couple of rows
dodil data table upsert items -b kb-prod \
-r '{"id":"a","embedding":[0.9,0.1,0.0,0.1]}' \
-r '{"id":"b","embedding":[0.0,0.1,0.9,0.2]}'
# 3. KNN over the vector column
dodil data vsearch -b kb-prod -t items --column embedding \
--vector "0.85,0.15,0.0,0.1" --metric cosine --top-k 3See the Quickstart for the same flow with prose annotations and the SQL equivalents.
CLI surface vs data-plane surface
dodil data vsearch covers KNN. Anything else is a table op or runs over the wire adapters.
| Task | CLI | Also / instead |
|---|---|---|
| KNN by vector or text | dodil data vsearch --vector / --text | SQL ORDER BY col <=> '[…]'; Qdrant / Pinecone SDK search |
| Create a vector table | dodil data table create --columns-json | SQL CREATE TABLE … vector(n) |
| Write vectors | dodil data table upsert -r … | SQL INSERT; Qdrant / Pinecone upsert; POST /v1/vector/:table/upsert |
| ANN index | — | SQL CREATE INDEX … USING hnsw (col vector_cosine_ops) |
| Payload filters | — | stock Qdrant / Pinecone clients (Connect) |
| Server-side query embedding + fan-out | dodil data search | the HTTP route POST /:bucket/search/vector |
There is no dodil data vector-store … — it ships disabled (cmd/vector_store.go.disabled).
Global flags worth knowing
dodil data vsearch takes --bucket / -b (also the plane’s db id) as a regular flag, and requires -t / --table and --column. It has no -c shorthand — --collection exists only as a long alias for --table. --metric is one of cosine · euclidean · dot.
For all global flags (--api-endpoint, --data-endpoint, --token, --org, --timeout, etc.) see CLI Basics → Global Flags.
See also
dodil data vsearch— full flag set + output shape- Quickstart — a vector table + KNN in 5 minutes
- Core Concepts — types, metrics, operators, opclasses
- Pipelines →
dodil data vector collection— the auto-embed collection commands - Connect & wire adapters — Qdrant / Pinecone / Postgres access