Skip to main content

EngramDB 的 Python 分发包

Disk-first storage engine for Engram / PLE n-gram memory tables (Rust).

分发名 engramdb-python(PyPI 相似名规避);import 名仍为 engramdb。

当前 v0.2.x 同时包含两条 Python 接入路径:

  1. PyO3 原生扩展(优先):crates/engramdb-pyo3,构建后以 python/engramdb/_engramdb.so 提供 Store / View / PageReader / Linux IoUringPageReader。
  2. ctypes C-ABI 回退:crates/engramdb-python,无 PyO3 构建产物时也能用。

python/engramdb/__init__.py 会自动优先加载 PyO3,失败则回退 ctypes。

快速使用

# 方式 1:maturin 构建 wheel(推荐,直接产生可安装的 native wheel)
cd python
CARGO_HOME=/tmp/cargo-home RUSTFLAGS="-C link-arg=-undefined -C link-arg=dynamic_lookup" \
  maturin build --release --interpreter python3

# 方式 2:开发期内直接构建并复制到包目录
CARGO_HOME=/tmp/cargo-home RUSTFLAGS="-C link-arg=-undefined -C link-arg=dynamic_lookup" \
  cargo build -p engramdb-pyo3 --release
cp target/release/lib_engramdb.dylib python/engramdb/_engramdb.so

# 在 engram-peft 等项目中用 uv 添加本地开发依赖
cd ~/code/engram-peft
uv add --editable ../EngramDB/python

# 发布到 PyPI 后可直接:
# uv add engramdb-python
import engramdb

# 打开 Store-I:目录内为 shard_000.bin 等定长行文件
store = engramdb.Store("path/to/rows", shards=1, rows_per_shard=100, width=256)
row_bytes = store.fetch([0, 1, 2])   # bytes, 每条 256B
store.close()

# 打开 Store-P 视图
view = engramdb.View("path/to/view.bin")
rec = view.read_record(0)            # 一条 e_t 记录

# SGLang 兼容:从多个 fd/offset 读页(Unix 有 PageReader,Linux 另有 IoUringPageReader)
reader = engramdb.PageReader(page_size=4096)
pages = reader.read_pages([fd0, fd1], [offset0, offset1])

engram-peft 集成

安装 engramdb-python 后,可以直接使用内置的磁盘版 MultiHeadEmbedding:

import engramdb
from engramdb.integrations import install_disk_multi_head_embedding

store = engramdb.Store("path/to/embedding-store", shards=1, rows_per_shard=100, width=256)
install_disk_multi_head_embedding(store)

# 之后再调用 engram-peft 的 get_engram_model(...) 即可让 Engram 层从磁盘读取 embedding

定位(一句话)

让"确定性哈希的 n-gram 记忆表"(Qwen PLE、DeepSeek Engram 等)像数据库一样落盘、建索引、预取、服务化——单机 CPU+NVMe 低延迟推理 / 高吞吐训练预处理。

详细文档见上游仓库 docs/(design.md / specifications / roadmap)以及 examples/interop_engram_peft.py。

Metadata

Release files for engramdb-python 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 engramdb-python 0.2.1
File Size Uploaded
engramdb_python-0.2.1.tar.gz 35.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for engramdb-python 0.2.1
File
engramdb_python-0.2.1-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 abi3 Linux glibc 2.17+ x86-64 Details
engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 abi3 Linux glibc 2.17+ ARM64 Details
engramdb_python-0.2.1-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
engramdb_python-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details

Total release size: 1.5 MB

Release files / engramdb_python-0.2.1.tar.gz

Download URL engramdb_python-0.2.1.tar.gz
Size 35.3 kB
Tags Source
SHA-256 checksum
How to use checksums
40a97ffcce65196c190fa9199dd22e7c15de7910b1f7be96a23a06c8f607c16a
BLAKE2b-256 checksum
How to use checksums
611d0f76dddcc3de31446856ff98fbc506a7b7db913a029372fe5229924194de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release files / engramdb_python-0.2.1-cp310-abi3-win_amd64.whl

Download URL engramdb_python-0.2.1-cp310-abi3-win_amd64.whl
Size 204.6 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
45910b0c4884dc48a39a713a2f91a89c1b10e6180d4a4d2132f4cc2c7fbc7234
BLAKE2b-256 checksum
How to use checksums
3f5fe40f4cd7c9d08ac44d654cc1f2e468dd35f6703d4c901ff460cc86017002
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release files / engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 330.7 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
1d53adde3e3550484ea97dd0476fb3906c859d4fd6d12d31f4ab4c9b220eb991
BLAKE2b-256 checksum
How to use checksums
5d512d7364efecb76c289df211a1d836aae5c8bb88231ee1ba6ac014b0d9b4f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release files / engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL engramdb_python-0.2.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 314.7 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
a9c6247b307750fd284996be145ceea124a6a20dad0aea52e7f3ce79b6f2926a
BLAKE2b-256 checksum
How to use checksums
581f1bb0f079f96da70f91b0a97dac4c8789cac42dfdfa05692702ccc22d1463
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release files / engramdb_python-0.2.1-cp310-abi3-macosx_11_0_arm64.whl

Download URL engramdb_python-0.2.1-cp310-abi3-macosx_11_0_arm64.whl
Size 310.1 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d78caa18d3d7c9d114c7264d5f804490341aa56194b2098e4306a3d732c457d6
BLAKE2b-256 checksum
How to use checksums
d7ec8d0ef327bdadbdb29316492b36ccb4bc346b22513121bd689f4050db24ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release files / engramdb_python-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl

Download URL engramdb_python-0.2.1-cp310-abi3-macosx_10_12_x86_64.whl
Size 319.3 kB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
6f86b093a01c62da96700a5fb55e47a5b093fea2a7b1587e1a64d01414d5a9eb
BLAKE2b-256 checksum
How to use checksums
7a48960e8c4d9f3477d2cbb4ab50106958f4e2413a9e09ccbfbfa7ff0db8b5ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Aug 30, 2026.

Transparency log

Release history Release notifications | RSS feed

0.3.0

6 release files

0.2.10

6 release files

0.2.9

6 release files

0.2.8

6 release files

0.2.6

6 release files

0.2.5

6 release files

0.2.4

6 release files

0.2.3

6 release files

0.2.2

6 release files

This release

0.2.1 This release

6 release files

0.2.0

2 release files

0.1.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