pie 0.1.1

Programmable Inference Engine (PIE)
Documentation
interface input-image {

    use core.{queue};
    use allocate.{object-id};         // Import object ID type for memory references

    // Embeds an image blob into model-compatible embeddings
    embed-image: func(
        queue: borrow<queue>,         // Queue to execute the embedding operation
        emb-ids: list<object-id>,     // Output object IDs where image embeddings will be stored
        image-blob: list<u8>,         // Raw image data (e.g. JPEG/PNG bytes)
        position-offset: u32          // Positional offset in the embedding space
    );

    // Computes the number of embeddings required for an image of given dimensions
    calculate-embed-size: func(
        queue: borrow<queue>,         // Queue for executing the computation
        image-width: u32,             // Width of the input image in pixels
        image-height: u32             // Height of the input image in pixels
    ) -> u32;                         // Returns required embedding count (e.g. for allocation)

}