modelc 0.1.9

Rust CLI that compiles LLM weights (GGUF, Safetensors, ONNX, PyTorch) into a single .modelc artifact and serves a local OpenAI-compatible inference API with Metal GPU and CPU SIMD acceleration.
Documentation
use anyhow::Result;

mod common;

#[test]
fn containerize_creates_files() -> Result<()> {
    let temp_dir = common::tempdir()?;
    let artifact = temp_dir.path().join("test.modelc");
    std::fs::write(&artifact, b"FAKE_MODELC_DATA")?;

    let out_dir = temp_dir.path().join("docker");
    modelc::containerize::containerize(&artifact, &out_dir, "debian:bookworm-slim")?;

    assert!(out_dir.join("Dockerfile").exists());
    assert!(out_dir.join("entrypoint.sh").exists());
    assert!(out_dir.join("test.modelc").exists());

    let dockerfile = std::fs::read_to_string(out_dir.join("Dockerfile"))?;
    assert!(dockerfile.contains("FROM debian:bookworm-slim"));
    assert!(dockerfile.contains("COPY test.modelc"));

    let entrypoint = std::fs::read_to_string(out_dir.join("entrypoint.sh"))?;
    assert!(entrypoint.contains("modelc serve"));
    assert!(entrypoint.contains("8080"));

    Ok(())
}