0.35 — The camera gave us an image. Why isn’t that enough? Here's the catch. You have a camera, a compiled detector, and a frame in memory. Surely you can just run the model? Look at the boundary. The camera gave you nineteen twenty by ten eighty pixels. The model expects a particular tensor: different dimensions, perhaps a different colour order, and a different numerical scale. A pointer doesn't remove that disagreement. Something has to transform the image into the model's input. That surrounding vision work is where Vart X starts to earn its place. 29.65 — Watch the representation change First, fit the image to the required geometry. Letterboxing preserves the aspect ratio and fills the remaining space. Then arrange the channels and convert the values according to the model's contract. Here, dividing a colour value by two hundred and fifty five is just an illustrative normalization, not a recipe for every model. Vart X provides preprocessing modules for these operations, plus frame and memory abstractions for the buffers. Some processing can use programmable logic; some uses software. It isn't all work for the neural accelerator. 64.15 — Who actually starts the compiled model? Now the input is ready. What makes the model run? With Vart M L, the application creates a runner for the compiled model, queries its tensor requirements, supplies buffers, and calls execute. NpuTensor describes the data and its backing memory. The runner can also accept asynchronous work. So these names describe different jobs: Vart X prepares the vision data; Vart M L supplies the inference interface. And the output is still tensors. We haven't somehow acquired a photograph with rectangles already drawn on it. 94.81 — A fork in the program, not another stage What if the application already uses Onnix Runtime? It can create a session, enable AMD's Vitis A I execution provider, and call Run. Supported graph work goes through the AMD provider; other supported work can execute on the CPU. That's the onnxruntime vitisai route. Notice the fork. You choose an application interface; you don't run Onnix Runtime and then invoke a Vart runner as a second inference stage. Vart X's vision operations can surround either route. A branch tells us something a list of package definitions doesn't. 128.51 — The graph isn’t the camera image Now look inside the model. These are operators, not pixels. The V O E package supplies AMD's Onnix integration machinery, including provider libraries and graph partitioning, transformation and fusion passes. Grouping compatible work is a different operation from resizing the picture. Flex M L runtime supplies compiled-model loading and execution support: it reads metadata, checks the device, and invokes native execution with tensors. X R T provides lower-level device and buffer support. This is a functional map; the packages can contain overlapping support libraries. They aren't perfectly sealed layers. 165.65 — The model returned numbers. Where are the boxes? The inference call finishes. Here are scores and coordinates. To use them, a detector may need to decode candidates, filter them, and map coordinates back to the original image. Drawing comes after that. Vart X provides postprocessing and visualization components: PostProcess interprets outputs, MetaConvert prepares drawing metadata, and Overlay annotates the frame. Standard drawing runs on the CPU. Now the loop makes sense. Preparing an input, executing a model, interpreting its output and drawing a result are separate jobs. The names finally have somewhere to belong. 199.03 — An explanation you can follow back into the program That was the question: what do these components actually do? Follow the frame, and Vart X stops being a mysterious dependency. Follow the execution request, and Vart M L becomes an interface you could call. Follow the graph and compiled artifacts, and V O E and Flex M L have concrete work to do. This little explanation was written and rendered by an agent, with locally generated narration conditioned on one approved synthetic reference. The point isn't to replace building the application. It's to make the next encounter with its code less mysterious.