Skip to main content

systo-search

Python SDK for Systo semantic search (RAG). Point it at your Systo backend, index office files once, then search and ask over them.

Works with any backend running Systo API v1 (see backend/ in the Systo repo).

Install

pip install systo-search

Requires Python 3.9+.

Quickstart

from systo_search import SystoClient

client = SystoClient(api_key="systo_sk_...", base_url="https://your-server")
client.create_project("hr-docs")

job = client.ingest_file("./policy.pdf", project="hr-docs")
client.wait(job.id)  # background parse -> chunk -> embed -> index

hits = client.search("leave policy 2024?", project="hr-docs", top_k=5)
for h in hits:
    print(h.score, h.source, h.text[:200])

answer = client.ask("Summarize the leave policy?", project="hr-docs", top_k=5)
print(answer.answer)
for s in answer.sources:
    print("-", s.source)

Index a whole folder:

jobs = client.ingest_folder("./my-docs", project="hr-docs", recursive=True)
for j in jobs:
    client.wait(j.id)

Backend compatibility

print(client.server_version())  # {"backend": ..., "api": "v1", "min_sdk": ...}
print(client.llm_status())       # {"provider": "openai|gemini|extractive", ...}

Needs backend >= min_sdk. API is versioned under /v1/*; v1 fields are frozen.

Auth

Pass your key as api_key. Mint keys server-side via POST /v1/keys (admin-gated in production). A dev key works only when the backend runs in dev mode on your laptop.

Limits

Default quota is 100 GB per project. Uploads stream from disk and index in a background worker; use client.wait(job.id) after ingest. ask() returns answer plus sources with citations, and a provider field telling you which LLM (if any) wrote the answer.

Metadata

Release files for systo-search 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for systo-search 0.2.1
File Size Uploaded
systo_search-0.2.1.tar.gz 7.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for systo-search 0.2.1
File Interpreter ABI Platform
systo_search-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.3 kB

Release files / systo_search-0.2.1.tar.gz

Download URL systo_search-0.2.1.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8faf372f44d8f6d394995ae17a4cd11acfb699075c9db8fcd2835939fdc8be49
BLAKE2b-256 checksum
How to use checksums
a0ed247e110874640127e8f0facd3e4d7a60c67ead7300a07194b27cb92e62ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / systo_search-0.2.1-py3-none-any.whl

Download URL systo_search-0.2.1-py3-none-any.whl
Size 7.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f403d3ebff5c0f1e98d447f62b7721cf62524263c3d04998bb629e98c74ee049
BLAKE2b-256 checksum
How to use checksums
a803ee5713f2f808c489093d4eef3e8e8acff3583dd40f05c92480ad53630bc5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page