Skip to content

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 23:46
· 11 commits to main since this release

First release of the Python client for GoVec, a compact vector search engine.

Highlights

  • One API over REST or gRPC: switch with protocol=; results and exceptions are identical, and every operation is tested against a real server over both
  • The whole server API: insert, batch insert, search with metadata filters and hybrid dense + sparse scoring, get, delete, stats, info, flush, reset
  • Typed: dataclass responses, ships py.typed
  • Batch inserts chunked for you, with per-vector errors reported instead of failing the batch
  • Safe against newer servers: response fields a newer GoVec adds are ignored, not fatal

Install

pip install govec
from govec import GoVecClient

with GoVecClient(host="localhost", port=9697, api_key="", protocol="rest", tls=False) as client:
    client.insert("doc-1", [0.12, 0.91, 0.20], metadata={"title": "Getting started"})
    print(client.search([0.10, 0.88, 0.18], k=1))

Needs a GoVec server: docker run -p 9697:9697 ghcr.io/pradyothsp/govec:0.1.0

Compatibility

  • GoVec server 0.1.0 and newer
  • Python 3.12, 3.13, 3.14

Coming next

An async client (AsyncGoVecClient) is planned for 0.2.0.

Full Changelog: https://github.com/Pradyothsp/govec-python/commits/v0.1.0