The intelligence layer above the AI protocol layer — canonical IR and adapter framework for heterogeneous AI model pipelines
Project description
SYNAPSE Adapter SDK
SYNAPSE is a canonical intermediate representation (IR) protocol that lets AI models with incompatible schemas interoperate through a unified adapter interface.
Write two functions — connect your AI model to every other model in the ecosystem.
Without SYNAPSE: 4 models require 6 custom connectors. 10 models require 45. Each breaks when either model's schema changes.
With SYNAPSE: write one ingress and one egress adapter. Done.
Your model is immediately composable with every other registered model.
Install
pip install synapse-adapter-sdk
Write your first adapter
from synapse_sdk import AdapterBase, CanonicalIR, ProvenanceEntry
from typing import Any
class MyModelAdapter(AdapterBase):
MODEL_ID = "my-org/my-model-v1.0"
ADAPTER_VERSION = "1.0.0"
def ingress(self, ir: CanonicalIR) -> dict[str, Any]:
return { "input": ir.payload.content }
def egress(self, output: dict, original_ir: CanonicalIR, latency_ms: int) -> CanonicalIR:
updated = original_ir.copy()
updated.provenance.append(self.build_provenance(
confidence=output["score"],
latency_ms=latency_ms,
))
return updated
Validate
synapse-validate --adapter my_module.MyModelAdapter
Documentation
What SYNAPSE is not
SYNAPSE does not compete with MCP or A2A. It builds on top of them. MCP connects agents to tools. A2A connects agents to each other. SYNAPSE connects specialized models with incompatible schemas — and makes routing between them smarter over time.
License
MIT. See LICENSE.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file synapse_adapter_sdk-0.1.1.tar.gz.
File metadata
- Download URL: synapse_adapter_sdk-0.1.1.tar.gz
- Upload date:
- Size: 143.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.9 {"installer":{"name":"uv","version":"0.11.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96704cc5839f48cd5140f3c200665c8581491076e6c616fdbe9de25d6863773a
|
|
| MD5 |
0907b2b878e894094ded86345f3bb396
|
|
| BLAKE2b-256 |
e2ee39401a8c94a0f949d4fad273511dba9e795e7266178bf948b3c6464d56dd
|
File details
Details for the file synapse_adapter_sdk-0.1.1-py3-none-any.whl.
File metadata
- Download URL: synapse_adapter_sdk-0.1.1-py3-none-any.whl
- Upload date:
- Size: 43.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.9 {"installer":{"name":"uv","version":"0.11.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99315c999ae5e0eee6d305026a002a58101774ee1ea8220a677a3872e9d1159b
|
|
| MD5 |
abee9e14fa9453b471290219081d5b19
|
|
| BLAKE2b-256 |
0f1850b0c081a58595fae6efabe63c7462e1eaccb091de0e2b870bfad3d8501f
|