Skip to main content

Async-native Python framework for building LLM applications — RAG pipelines, tool-using agents, and graph workflows. Streaming-first, transparent API, 2 hard deps.

Project description

SynapseKit

SynapseKit is an async-native Python framework for building LLM applications — RAG pipelines, tool-using agents, and graph workflows. Streaming-first, transparent API, 2 hard deps. 30 providers · 46 tools · 29 loaders · 9 vector stores. Every abstraction is composable and replaceable: plain Python you can read, debug, and extend. No magic. No hidden chains. No lock-in.


⚡ Async-native

Every API is async/await first.
Sync wrappers for scripts and notebooks.
No event loop surprises.

🌊 Streaming-first

Token-level streaming is the default,
not an afterthought.
Works across all providers.

🪶 Minimal footprint

2 hard dependencies: numpy + rank-bm25.
Everything else is optional.
Install only what you use.

🔌 One interface

30 LLM providers and 9 vector stores
behind the same API.
Swap without rewriting.

🧩 Composable

RAG pipelines, agents, and graph nodes
are interchangeable.
Wrap anything as anything.

🔍 Transparent

No hidden chains.
Every step is plain Python
you can read and override.

Who is it for?

SynapseKit is for Python developers who want to ship LLM features without fighting their framework.

  • Backend engineers adding AI features to existing Python services
  • ML engineers building RAG or agent pipelines who need full control over retrieval, prompting, and tool use
  • Researchers and hackers who want a clean, readable codebase they can understand and extend
  • Teams who need something they can actually debug and maintain in production

What it covers

🗂 RAG Pipelines
Retrieval-augmented generation with streaming, BM25 reranking, conversation memory, and token tracing. Load from PDFs, URLs, CSVs, HTML, directories, and more.

🤖 Agents
ReAct loop (any LLM) and native function calling (OpenAI / Anthropic / Gemini / Mistral). 43 built-in tools including calculator, Python REPL, web search, SQL, HTTP, shell, Twilio, arxiv, pubmed, wolfram, wikipedia, and more. Fully extensible.

🔀 Graph Workflows
DAG-based async pipelines. Nodes run in waves — parallel nodes execute concurrently. Conditional routing, typed state with reducers, fan-out/fan-in, SSE streaming, event callbacks, human-in-the-loop, checkpointing, and Mermaid export.

🧠 LLM Providers
OpenAI, Anthropic, Ollama, Gemini, Cohere, Mistral, Bedrock, Azure OpenAI, Groq, DeepSeek, OpenRouter, Together, Fireworks, Cerebras, Cloudflare, Moonshot, Perplexity, Vertex AI, Zhipu, AI21 Labs, Databricks, Baidu ERNIE, llama.cpp, Minimax, Aleph Alpha, Hugging Face, SambaNova — all behind one interface. Auto-detected from the model name. Swap without rewriting.

🗄 Vector Stores
InMemory (built-in, .npz persistence), ChromaDB, FAISS, Qdrant, Pinecone, Weaviate, PGVector, Milvus, LanceDB. One interface for all 9 backends.

🔧 Utilities
Output parsers (JSON, Pydantic, List), prompt templates (standard, chat, few-shot), token tracing with cost estimation.


Install

pip

pip install synapsekit[openai]       # OpenAI
pip install synapsekit[anthropic]    # Anthropic
pip install synapsekit[ollama]       # Ollama (local)
pip install synapsekit[all]          # Everything

uv

uv add synapsekit[openai]
uv add synapsekit[all]

Poetry

poetry add synapsekit[openai]
poetry add "synapsekit[all]"

Full installation options → docs


Documentation

Everything you need to get started and go deep is in the docs.

🚀 Quickstart Up and running in 5 minutes
🗂 RAG Pipelines, loaders, retrieval, vector stores
🤖 Agents ReAct, function calling, tools, executor
🔀 Graph Workflows DAG pipelines, conditional routing, parallel execution
🧠 LLM Providers All 30 providers with examples
📖 API Reference Full class and method reference

Development

git clone https://github.com/SynapseKit/SynapseKit
cd SynapseKit
uv sync --group dev
uv run pytest tests/ -q

Contributing

Contributions are welcome — bug reports, documentation fixes, new providers, new features.

Read CONTRIBUTING.md to get started. Look for issues tagged good first issue if you're new.


Community


Contributors

Nautiverse
Nautiverse

💻 📖 🚧
Gordienko Andrey
Gordienko Andrey

💻
Deepak singh
Deepak singh

💻
by22Jy
by22Jy

💻
Arjun Kundapur
Arjun Kundapur

💻
Harshit Gupta
Harshit Gupta

📖
Dhruv Garg
Dhruv Garg

💻
Adam Silva
Adam Silva

💻
qorex
qorex

💻
Abhay Krishna
Abhay Krishna

💻

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

synapsekit-1.5.1.tar.gz (865.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

synapsekit-1.5.1-py3-none-any.whl (336.3 kB view details)

Uploaded Python 3

File details

Details for the file synapsekit-1.5.1.tar.gz.

File metadata

  • Download URL: synapsekit-1.5.1.tar.gz
  • Upload date:
  • Size: 865.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for synapsekit-1.5.1.tar.gz
Algorithm Hash digest
SHA256 de171285f33f86d694303686d967efc8f097f29ece2dd0e7df04c176f07b582d
MD5 0bbba8f545cae596eaf9337c74dbd32f
BLAKE2b-256 5d22a50adb29759d32c8f6a58397cea5c4ac8a6ae37f4b78e6e489f496935a3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for synapsekit-1.5.1.tar.gz:

Publisher: publish.yml on SynapseKit/SynapseKit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file synapsekit-1.5.1-py3-none-any.whl.

File metadata

  • Download URL: synapsekit-1.5.1-py3-none-any.whl
  • Upload date:
  • Size: 336.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for synapsekit-1.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7c949afa6a052b0280302e907435e850b768c232bac274641ec71d5d29efa87a
MD5 8146cd2ab1a8caceb566c8b22c970a38
BLAKE2b-256 0b0524b34cc81a62c5999b0bf8a68b348ec40eb03dab5f216b64ec424b566d8c

See more details on using hashes here.

Provenance

The following attestation bundles were made for synapsekit-1.5.1-py3-none-any.whl:

Publisher: publish.yml on SynapseKit/SynapseKit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page