Skip to main content

DustyLM Logo

dustylm

Run DustyLM, the 8M parameter robot vacuum language model, in a few lines.

pip install dustylm
from dustylm import DustyLM
model = DustyLM.from_pretrained("mkhordoo/dusty-8m-sft")
response = model.chat([{"role": "user", "content": "who are you?"}])
print(response["choices"][0]["message"]["content"])

# beep. i am a little robot. i clean floors and find crumbs.

Backends

Backend Install Model file Best for
torch (default) pip install dustylm ~32 MB (FP32) Inspection and experimentation
onnx pip install dustylm[onnx] ~8–10 MB (int8) A compact model artifact

These sizes describe the model files, not the complete Python environment. Installation size varies by platform. Both backends currently include PyTorch as an SDK dependency.

# ONNX backend
model = DustyLM.from_pretrained("mkhordoo/dusty-8m-sft", backend="onnx")

Loading Local Checkpoints

Pass a Hugging Face repository ID to download its model and tokenizer automatically, as shown in the quick-start example:

model = DustyLM.from_pretrained("mkhordoo/dusty-8m-sft")

For files already downloaded to your machine, pass their local directory instead. With the default filenames, that directory must contain tokenizer.json and either model.pt (PyTorch) or model_int8.onnx (ONNX):

model = DustyLM.from_pretrained("./my-checkpoint/")

You can use any local directory as the artifact root. model_file and tokenizer_file are resolved relative to that directory, so they may use different filenames or relative paths.

If you trained a model with the main dusty-lm repository, its checkpoint and tokenizer are stored in separate artifact directories. Load the promoted SFT checkpoint with:

from dustylm import DustyLM

model = DustyLM.from_pretrained(
    "artifacts/checkpoints",
    model_file="dusty8m_sft.pt",
    tokenizer_file="../tokenizers/dusty_tokenizer.json",
)

response = model.chat([{"role": "user", "content": "who are you?"}])

To inspect an intermediate checkpoint instead, change model_file to an existing step file such as dusty8m_sft_step_100.pt.

The SDK infers several architecture dimensions from PyTorch checkpoint shapes and currently expects DustyLM-compatible configurations.

API

DustyLM.from_pretrained

DustyLM.from_pretrained(
    repo_id_or_path: str = "mkhordoo/dusty-8m-sft",
    *,
    model_file: str | None = None,
    tokenizer_file: str | None = None,
    backend: str = "torch",
)
Argument Default Description
repo_id_or_path "mkhordoo/dusty-8m-sft" HF Hub repo ID or local directory path
model_file "model.pt" (torch) / "model_int8.onnx" (onnx) Override the model filename in the directory
tokenizer_file "tokenizer.json" Override the tokenizer filename
backend "torch" "torch" or "onnx"

DustyLM.chat

model.chat(
    messages: list[dict],
    temperature: float = 0.7,
    max_tokens: int = 64,
    top_p: float = 0.9,
) -> dict

Returns an OpenAI-style chat completion dict.


Built from the dusty-lm training repository.

Metadata

Release files for dustylm 0.1.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 dustylm 0.1.1
File Size Uploaded
dustylm-0.1.1.tar.gz 7.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dustylm 0.1.1
File Interpreter ABI Platform
dustylm-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.3 kB

Release files / dustylm-0.1.1.tar.gz

Download URL dustylm-0.1.1.tar.gz
Size 7.8 kB
Tags Source
SHA-256 checksum
How to use checksums
29fca95baaa8c2025e278cce76f4fc208cd585cc03960ebff237d1e2a7d4f649
BLAKE2b-256 checksum
How to use checksums
04275d2616fc1dc069cbae64c598482621a62b8e6e9781f86e19e120abe006a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / dustylm-0.1.1-py3-none-any.whl

Download URL dustylm-0.1.1-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
38786067a918f9c98339879aa34d6d677eeb97a7bda0ad0b111465c87dc12f11
BLAKE2b-256 checksum
How to use checksums
b05cfbb09af21ac744750727b0cf12cd2728aefdd0693bfc1cf6f071725c10ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.1 This release

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