Python Client for accessing the turbopuffer API
Project description
turbopuffer Python Client ![CI Test](https://pypi-camo.freetls.fastly.net/4abc47883af3f8b630f76a21f00e2be94ebb2842/68747470733a2f2f6769746875622e636f6d2f747572626f7075666665722f747572626f7075666665722d707974686f6e2f616374696f6e732f776f726b666c6f77732f63695f746573742e796d6c2f62616467652e737667)
The official Python client for accessing the turbopuffer API.
Usage
- Install the turbopuffer package and set your API key.
$ pip install turbopuffer
Or if you're able to run C binaries for JSON encoding, use:
$ pip install turbopuffer[fast]
- Start using the API
import turbopuffer as tpuf
tpuf.api_key = 'your-token' # Alternatively: export=TURBOPUFFER_API_KEY=your-token
# Open a namespace
ns = tpuf.Namespace('hello_world')
# Upsert your dataset
ns.upsert(
ids=[1, 2],
vectors=[[0.1, 0.2], [0.3, 0.4]],
attributes={'name': ['foo', 'foos']}
)
# Alternatively, upsert using a row iterator
ns.upsert(
{
'id': id,
'vector': [id/10, id/10],
'attributes': {'name': 'food'}
} for id in range(3, 10)
)
# Query your dataset
vectors = ns.query(
vector=[0.15, 0.22],
distance_metric='cosine_distance',
top_k=10,
filters={ 'name': [['Glob', 'foo*'], ['NotEq', 'food']] },
include_attributes=['name'],
include_vectors=True
)
print(vectors)
# [
# VectorRow(id=2, vector=[0.30000001192092896, 0.4000000059604645], attributes={'name': 'foos'}, dist=0.001016080379486084),
# VectorRow(id=1, vector=[0.10000000149011612, 0.20000000298023224], attributes={'name': 'foo'}, dist=0.009067952632904053)
# ]
Endpoint Documentation
For more details on request parameters and query options, check the docs at https://turbopuffer.com/docs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
turbopuffer-0.1.6.tar.gz
(11.2 kB
view hashes)
Built Distribution
Close
Hashes for turbopuffer-0.1.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 256edd4f327f261f7b6ada33802c122d32fb1906edcef6b550d95e5eaf2cb2a8 |
|
MD5 | 4c622de1a233529cd0304bd6f834b643 |
|
BLAKE2b-256 | bc0470cb8469f693dd577db17953c11a552b66071585b510eb292bd078be473f |