A Python client for letsearch โ the vector DB so easy, even your grandparents can build a RAG system ๐.
letsearch-client provides an easy-to-use Python interface to interact with a running letsearch server. With this client, you can programmatically manage collections, perform health checks, and run searches without worrying about HTTP requests or JSON parsing.
letsearch- project and this client are still under active development. Rapid changes may occur as letsearch evolves.
- Perform health checks on your
letsearchserver. - List and retrieve collection information.
- Run searches on indexed collections.
- Automatically handle errors and raise exceptions when needed.
Install letsearch-client via uv (recommended) or pip:
uv add letsearch-clientor:
pip install letsearch-clientIf you want to convert models to use with letsearch, you need to install additional conversion-related dependencies:
pip install letsearch-client[conversion]Hereโs how you can use the LetsearchClient to interact with a running letsearch instance:
from letsearch_client import LetsearchClient
# Initialize the client
client = LetsearchClient(letsearch_url="http://localhost:7898", raise_for_status=True)
# Always remember to close the client or use it in a context manager
client.close()Alternatively, use a context manager to ensure proper cleanup:
from letsearch_client import LetsearchClient
with LetsearchClient(letsearch_url="http://localhost:7898") as client:
health = client.healthcheck()
print(health)response = client.healthcheck()
print(response) # Outputs server health status and versioncollections = client.get_collections()
print(collections) # Outputs a list of available collectionscollection_info = client.get_collection("example_collection")
print(collection_info) # Outputs details about the specified collectionresults = client.search(
collection_name="example_collection",
column_name="content",
query="example query",
limit=5
)
print(results) # Outputs search resultsThe roadmap of the letsearch project can be found in its repository.
This client is intended to be a thin wrapper around the functionality of letsearch,
and it will continue to implement new features as letsearch evolves.
Run the clientโs test suite using:
pytest