Skip to content

Key Concepts

Understanding QLAM's core concepts will help you effectively use the platform.

The Three-Part Flow

QLAM breaks the quantum execution workflow into three logical parts, each with its own API: definitions, compilations, and tasks. This separation gives you fine-grained control over each stage, while still allowing simple one-step submission when that's all you need.

Task Definitions

A task definition is the description of what you want to run—your programs, arguments, number of shots, and other parameters. Definitions are managed via the /definitions API.

By separating definitions from execution, you can:

  • Iterate on programs without executing - Similar to how developers use an IDE, you can save and refine your programs until they're ready
  • Version your definitions - Track changes to your programs over time (Coming soon!)
  • Store and retrieve programs - Useful for UIs and third-party IDEs that need to persist user work

Compilations

Before programs can run on the QPU, they must be compiled into Flair—the low-level format consumed by the quantum operating system. Compilations are managed via the /compilations API.

Separating compilation provides:

  • Faster feedback loops - Compilation is faster than full execution, so you can verify your program is valid without waiting for QPU access
  • Early error detection - A successful compilation confirms your program is ready for execution; a failed compilation tells you to iterate further
  • Resource efficiency - Developers can validate programs without competing for the QPU

Tasks

A task is an execution—it takes a compiled definition, sends it to the QPU, and returns results. Tasks are managed via the /tasks API.

Tasks progress through a lifecycle from submission to completion.

Flexible Usage Patterns

Because each API builds on the previous one, you can use them at whatever level of control you need:

Pattern When to use API calls
Full control Iterating on programs, need versioning POST /definitionsPOST /compilationsPOST /tasks
Skip definition storage One-off programs, don't need to manually save POST /compilations (with full definition) → POST /tasks
Simple execution Program is ready, just want results POST /tasks (with full definition)

With the simple execution pattern, QLAM handles definition storage and compilation internally—you get the same result with a single API call.

QPU Modes

A QPU mode represents a specific configuration of a quantum processing unit. Different modes may offer:

  • Different qubit counts
  • Different gate sets or operations
  • Different connectivity patterns
  • Simulator vs. hardware execution

Learn more about QPU modes in the architecture section.

Next Steps