Vector — API Reference
Package: dodil.k3.vector.v1 · Service: VectorService
13 RPCs across five functional groups. The single most important RPC is Search — it has three query shapes, three search modes, multi-collection support, optional Jina reranking, pre-filtering, and Milvus-native fast-lane tuning. That’s its own page below.
Sections
| Page | RPCs | What it covers |
|---|---|---|
| Engine | ConfigureEngine · GetEngine · DeleteEngine · ListVBaseInstances | Per-bucket VBase backend lifecycle. Three modes — auto (K3 provisions), external (your own VBase), pick (existing service). |
| Collections | AddVectorPipeline · AddVectorCollection · ListCollections · GetCollection · DeleteCollection | Both creation modes — pipeline-mode (template-driven, schema lazy) and manual-mode (caller-managed schema, EXTERNAL embedding source). |
| Search ⭐ | Search | The deep dive — text / pre-embedded vector / file query shapes; VECTOR / HYBRID / AUTO modes; multi-collection compatibility; Jina rerank; metadata pre-filter; Milvus tuning. |
| Vectors | InsertVectors · UpsertVectors · DeleteVectors | Direct writes to EXTERNAL-mode collections. Five dense element types (float / binary / float16 / bfloat16 / int8), optional sparse, optional text-for-BM25. |
| Templates | ListTemplates | Vector-pillar template catalog — *_embedding_index (and matching _search) for text, code, visual, face, object. |
Wire conventions
| HTTP request body | HTTP query / path | gRPC | |
|---|---|---|---|
| Field names | camelCase (pbjson) | snake_case (e.g. top_k, min_score) | as in .proto |
| Enums | wire-name strings ("SEARCH_MODE_AUTO") | — | enum |
int64 / int32 | JSON strings / numbers per pbjson rules | strings / numbers | typed |
oneof request fields | exactly one variant set | — | typed |
| All fields | always emitted (no defaults dropped) | — | — |
Endpoint roots
| Endpoint | Use |
|---|---|
https://k3.dev.dodil.io (staging) · https://k3.dodil.io (prod) | HTTP |
k3-grpc.dev.dodil.io:443 (staging) · k3-grpc.dodil.io:443 (prod) | gRPC |
Auth: bearer JWT in Authorization. See Conventions.
VBase touchpoints
K3’s vector engine is backed by VBase (managed Milvus). For workflows K3 doesn’t surface directly:
| Surface | What it gets you |
|---|---|
ConfigureEngine with mode: "external" | Point the bucket’s vector engine at your own VBase cluster. Direct VBase API calls now hit the same backing store. |
ListVBaseInstances (GET /admin/vbase-instances) | Enumerate VBase services available in the org — feeds the pick mode service_id field. |
| Direct VBase API | For raw Milvus features (custom indexes, partition lifecycle, advanced index params) K3 doesn’t expose. See VBase docs . |
See also
- Quickstart — end-to-end pipeline-collection RAG flow
- Core Concepts — every type signature, enums, sparse modes, embedding types
- CLI Guide —
dodil k3 vector store / collection / templates+dodil k3 search - Recipes — pipeline-collection, external-collection, multi-collection search, hybrid + rerank, multimodal