Optimized Mamba implementation
Project description
MambaX
PyTorch implementation of the Mamba architecture with enhanced production-ready features:
- ONNX Export - Full model export support for deployment
- Chunk Processing - Single-forwardpass chunk handling (no token loops)
- CPU-First - Optimized execution without CUDA dependencies
Key Advantages
- Production Ready: ONNX-compatible for serving
- No Token Loops: Processes entire chunks in single forward pass
- Hardware Agnostic: Runs equally well on CPU/GPU
Acknowledgements
Builds upon reference work from alxndrTL/mamba.py
Usage
1. Standard Forward Pass
import torch
import torch.nn as nn
from mamba import Mamba
# Initialize model
model = Mamba(
d_model=512,
d_inner=1024,
d_conv=4,
d_state=16,
dt_rank=64,
act=nn.SiLU()
)
# Process full sequence
x = torch.rand(1, 13, 512) # (batch, seq_len, dim)
output = model(x) # single forward pass
2. Single Token Processing
x_token = torch.rand(1, 1, 512) # (batch, 1, dim)
output, new_state, new_conv = model(x_token, state_cache, conv_cache)
3. Chunk-Based Processing
# Initialize with empty caches
state_cache = torch.zeros(1, 1024, 16) # (batch, d_inner, d_state)
conv_cache = torch.zeros(1, 1024, 3) # (batch, d_inner, d_conv-1)
# Process chunks (e.g. 8 tokens at once)
x_chunk = torch.rand(1, 8, 512)
output, new_state, new_conv = model(x_chunk, state_cache, conv_cache)
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
mambax-0.1.0.tar.gz
(5.1 kB
view details)
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 mambax-0.1.0.tar.gz.
File metadata
- Download URL: mambax-0.1.0.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9eb54e7b5a690595e78b18a0cacc55db2007a2004ecce45b488468ecd2b011e4
|
|
| MD5 |
f39891e5b24b7a07152a8bd2f7539388
|
|
| BLAKE2b-256 |
bf966dee2b552508afab5e5ae9f5ad118a0190a12ee86dac4845053e3f6a1a00
|
File details
Details for the file mambax-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mambax-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6993ff9ced787fdee74c7ab97967f60c4e4ddf88141b437f7cd2bb0184cb3d7a
|
|
| MD5 |
e2b15609fe8222e3a57ca6f5a52844fe
|
|
| BLAKE2b-256 |
b5b20a021ee0c1a48d6cda0cfdf723a385f1ab86b8a48961f4c845861801136d
|