This release is a pre-release and may not be stable for production use.
📍 Moved to GitLab
The canonical, authoritative home of this project is GitLab — always:
👉 https://gitlab.com/ncz-os/mnemos-embedkit
This GitHub repository is a frozen, read-only mirror. All development, issues, and releases happen on GitLab. Please open issues and merge requests there. The full history of this stub is preserved on GitLab.
mnemos-embedkit
Open embedding devkit. Same API, every silicon.
embedkit lets you embed text once and run it on whatever hardware your box has — Cix Sky1 NPU, Apple Silicon Metal/MLX, NVIDIA CUDA/TensorRT, AMD ROCm/XDNA, Intel iGPU/NPU via OpenVINO, MediaTek APU, Rockchip RKNN, or just the CPU. The kit detects what's installed and picks the fastest adapter at runtime. No vendor preference.
Quick start
import embedkit
eng = embedkit.Engine.auto() # picks the fastest adapter on this host
vec = eng.embed("Hello world") # -> List[float]
vecs = eng.embed_batch(["a", "b", "c"]) # -> List[List[float]]
eng.info()
# {"adapter": "cix-npu", "model": "bge-small-zh-v1.5_256.cix",
# "embed_dim": 512, "max_tokens": 256, "throughput_baseline": 55.0}
Explicit adapter pick:
eng = embedkit.Engine(adapter="cix-npu", model="bge-small-zh-v1.5")
eng = embedkit.Engine(adapter="nvidia-cuda", model="nomic-embed-text-v1.5")
eng = embedkit.Engine(adapter="amd-rocm", model="bge-large-en-v1.5")
eng = embedkit.Engine(adapter="apple-mlx", model="mxbai-embed-large-v1")
eng = embedkit.Engine(adapter="cpu-llamacpp", model="bge-small-zh-v1.5")
What the kit is
A pure-Python adapter layer over vendor-specific embedding runtimes, plus a uniform Engine.embed* API and a canonical bench harness. The kit does not bundle drivers or kernel modules. It detects what the host OS already provides and binds to it:
| Host has | Kit picks via |
|---|---|
cix-noe-umd 2.0.2 + libnoe (NCZ Magnetar / cixtech apt) |
npu-cix adapter |
onnxruntime-gpu (CUDA driver from Linux distro) |
nvidia-cuda adapter |
tensorrt python (NVIDIA tar/apt) |
nvidia-trt adapter |
onnxruntime-rocm (AMD ROCm dkms) |
amd-rocm adapter |
onnxruntime-vitisai (XDNA driver) |
amd-xdna adapter |
openvino (Intel CPU/iGPU/NPU) |
intel-igpu / intel-npu adapter |
mlx (Apple Silicon, macOS only) |
apple-mlx adapter |
| llama-cpp-python with Metal | cpu-llamacpp adapter (auto-detects Metal at runtime) |
llama-cpp-python with -DGGML_VULKAN=1 |
gpu-vulkan adapter |
rknn-toolkit2 (Rockchip RK3588 / RK3576) |
rockchip-rknn adapter |
mtk-genio-apu (MediaTek Genio) |
mediatek-apu adapter |
| nothing else | cpu-llamacpp (CPU baseline, ships GGUF) |
Install
# Pick the form-factor bundle that matches your host:
pip install embedkit[all-cpu] # baseline, CPU only
pip install embedkit[all-x86-cuda] # CPU + NVIDIA CUDA
pip install embedkit[all-x86-rocm] # CPU + AMD ROCm + XDNA
pip install embedkit[all-x86-intel] # CPU + Intel iGPU + NPU via OpenVINO
pip install embedkit[all-arm-cix] # CPU + Cix NPU + Mali Vulkan
pip install embedkit[all-arm-rockchip] # CPU + Rockchip RKNN + Mali Vulkan
pip install embedkit[all-apple] # CPU + Apple MLX + Metal
pip install embedkit[all] # everything
The kit pulls vendor python bindings from PyPI. Vendor drivers are managed by your OS package manager (cix-noe-umd via apt, nvidia-driver via ubuntu-drivers, rocm-dkms via amdgpu-install, intel-npu-driver via apt, etc.).
Reference bench
The canonical multi-platform bench is in benches/. Run on your host:
embedkit-bench --corpus benches/corpora/mnemos-8038.json --engines auto
See benches/results.md for the cross-platform numbers we have today (Cix Sky1 NPU, Apple Silicon Metal, NVIDIA CUDA, x86 + ARM CPU, Pi 5, Pi 4).
Reference implementation consumer
ncz-os/mnemos (the canonical MNEMOS memory layer) is the reference embedkit consumer. The plan is to migrate MNEMOS's embedding helper to call embedkit.Engine(...) directly. See docs/mnemos-integration.md.
License
Apache-2.0.
Status
Bootstrap. Design + cross-platform bench data exist. Adapter implementations are queued (Codex handoff prompt at docs/CODEX-ADAPTER-HANDOFF.md).
See docs/DESIGN.md for the full architecture.
Build infrastructure & partners
Continuous integration and package distribution for this project are generously supported by our open-source infrastructure partners:
- GitLab — canonical source hosting and CI pipelines (format / lint / test gates), via the GitLab for Open Source program.
- Buildkite — CI/CD orchestration with hosted macOS
and Linux agents, and our APT package registry host
(
packages.buildkite.com/ncz-os/ncz), via the Buildkite Open Source program.
Thank you to both for backing open-source software.
Metadata
Release files for mnemos-embedkit 0.1.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mnemos_embedkit-0.1.0a1.tar.gz | 42.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mnemos_embedkit-0.1.0a1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 63.9 kB
Release files / mnemos_embedkit-0.1.0a1.tar.gz
| Download URL | mnemos_embedkit-0.1.0a1.tar.gz |
|---|---|
| Size | 42.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1dee84a1bf8f66130b29d71313366b322063b2f2235432f5e5adee33089be476
|
|
BLAKE2b-256 checksum How to use checksums |
75d07ff2aaf95049a2f4374cd1e5b73214e2fee240817d41c73247c5e9b8e8db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 9, 2026.
Transparency logRelease files / mnemos_embedkit-0.1.0a1-py3-none-any.whl
| Download URL | mnemos_embedkit-0.1.0a1-py3-none-any.whl |
|---|---|
| Size | 21.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1a16e738f830577789b6589f1cf5c5cb60db6d7161b5347478a7cf2ce0c2f684
|
|
BLAKE2b-256 checksum How to use checksums |
e84121e8a86857b26d4e706ea3ac1f214220c02a489bf01e1959100bdb095076
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 9, 2026.
Transparency log