For AI agents: the complete documentation index is available at https://a3s-lab.github.io/Power/v0.9.0/en/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/Power/v0.9.0/en/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/Power/v0.9.0/en/operations.md.
  • English
  • v0.9.0
  • Operations

    Backends are capability providers behind Power's shared execution and evidence contracts. Choose them by model format, platform, and trust boundary rather than treating the backend name as the architecture.

    Build profiles

    FeatureRoleNative dependency
    mistralrsDefault Candle-based GGUF, SafeTensors, vision, and embedding backendNo C++ inference engine
    llamacppMature GGUF backend with native MTP supportCMake, C++ compiler, and libclang
    llamacpp-cudaCUDA execution for llama.cppCUDA toolkit
    llamacpp-mtp-frExperimental reduced-vocabulary MTP draft projectionReviewed patch to pinned llama.cpp source
    picolmPure-Rust, layer-streaming GGUF backend for constrained TEE memoryNo C/C++ inference engine
    embedded-cuda / embedded-metalAccelerators for model-owned embedded graphsPlatform toolkit
    tls / vsockRA-TLS and A3S Box guest-host transportsPlatform-specific
    hw-verifyAMD SEV-SNP verification; Intel TDX is not production-supported in v0.9.0Platform crypto dependencies and AMD KDS access
    # Default hosted service
    cargo build --release
    
    # Listener-free embedded runtime
    cargo build --release --no-default-features --features embedded-inference
    
    # Pure-Rust layer-streaming TEE service
    cargo build --release --no-default-features --features tee-minimal
    
    # llama.cpp with CUDA
    cargo build --release --no-default-features --features llamacpp-cuda

    The llamacpp-mtp-fr profile is intentionally separate because it modifies the pinned source. Ordinary llamacpp builds do not need the experimental patch.

    Service endpoints

    MethodEndpointPurpose
    GET/healthReadiness, loaded models, backend capabilities, and TEE status
    POST/v1/chat/completionsChat, tools, structured output, vision, and SSE streaming
    POST/v1/completionsText completion and SSE streaming
    POST/v1/embeddingsEmbedding inference
    GET/v1/modelsRegistered models
    POST/v1/models/pullResumable ModelScope or Hugging Face pull
    GET/v1/attestationNonce- and model-bound TEE evidence
    GET/metricsPrometheus metrics

    Health and model inspection endpoints expose effective, non-secret settings so benchmark and deployment automation can reject configuration drift.

    Artifact installation

    The artifact provisioner requires an expected filename, maximum byte length, and SHA-256 digest. It streams into a private staging file, verifies the exact bytes, and commits atomically under a cross-process lock. Offline policy fails closed when a previously verified artifact is unavailable.

    The hosted model store is content-addressed under ~/.a3s/power by default. Model aliases point to manifests rather than weakening blob identity.

    Production boundaries

    • Bind development servers to loopback unless a reviewed transport policy says otherwise.
    • Use RA-TLS or vsock deliberately; constructing the embedded runtime never chooses a transport for the caller.
    • Treat simulated TEE mode as development-only.
    • Do not claim confidential GPU execution from CPU TEE placement alone.
    • Preserve raw report fields when saving attestation evidence.
    • Treat mixed quantization and vocabulary-reduced drafting as quality-gated, workload-specific techniques.
    • Keep model bytes, ACL, binary hashes, drivers, and host controls with every performance acceptance record.

    Supply chain and storage

    The pure-Rust tee-minimal path reduces native inference dependencies, while the llama.cpp path trades a larger native toolchain for mature GGUF and CUDA capabilities. Audit the feature profile that will actually ship.

    For Rust API types and feature flags, use docs.rs/a3s-power.