Skip to main content

VeloxQ SDK: README

This project provides a configurable Python API to interact with the VeloxQ platform, designed to provide users with a powerful, robust and user-friendly interface to upload and solve complex optimization problems using an extensive list of physics-inspired and metaheuristic algorithms.

Find additional guides on configuration, jobs, solvers and result files in the VeloxQ SDK Wiki.


Installation & Setup

Install the VeloxQ API client as part of your Python environment. Ensure you have Python 3.9+:

pip install veloxq-sdk

NOTE: It is recomended to install this package in a dedicated python environment to prevent any dependency problems.


Quickstart

Before executing any code from the API make sure that you have a proper API key configured. The easiest way to load the api key is using the environment variables:

export VELOX_TOKEN="12345678-90ab-cdef-1234-567890abcdef"

Then to solve your problem, the simplest approach is using solver.sample(...), which:

  1. Creates a File (see below) for your problem instance (biases and couplings defined as lists, NumPy arrays, dictionaries, file paths, etc.).
  2. Automatically submits a job to the VeloxQ platform.
  3. Waits until completion.
  4. Returns the job result.

It accepts the same argument types as File.from_instance.

Examples:

Submitting biases and couplings defined in memory:

  • Using lists:

    from veloxq_sdk import VeloxQSolver
    
    solver = VeloxQSolver()
    
    biases = [1, -1, 0]
    couplings = [
        [0, -1, 0],
        [-1, 0, -1],
        [0, -1, 0]
    ]
    
    result = solver.sample(biases, couplings)  # Returns VeloxSampleSet object
    print(result)
    
  • Using NumPy arrays:

    import numpy as np
    from veloxq_sdk import VeloxQSolver
    
    solver = VeloxQSolver()
    
    biases = np.array([1, -1, 0])
    couplings = np.array([
        [0, -1, 0],
        [-1, 0, -1],
        [0, -1, 0]
    ])
    
    result = solver.sample(biases, couplings)
    print(result.first)  # get lowest energy/state
    
  • Using dictionaries (sparse data):

    from veloxq_sdk import VeloxQSolver
    
    solver = VeloxQSolver()
    
    biases = {0: 1.0, 2: -1.0}
    couplings = {(0, 1): -1.0, (1, 2): 0.5}
    
    result = solver.sample(biases=biases, couplings=couplings)
    print(result.energy)  # print energies
    
  • Using dimod.BinaryQuadraticModel

    import dimod
    from veloxq_sdk import VeloxQSolver
    
    bqm = dimod.BinaryQuadraticModel({0: 1.0, 2: -1.0}, {(0, 1): -1.0, (1, 2): 0.5}, 0, dimod.SPIN)
    solver = VeloxQSolver()
    result = solver.sample(bqm)
    print(result.sample)  # print all found states
    

    The model is submitted in its own variable domain, SPIN or BINARY, together with its offset, so result.energy equals bqm.energies(result.sample).

  • QUBO (binary variables)

    import numpy as np
    from veloxq_sdk import VeloxQSolver
    
    solver = VeloxQSolver()
    
    # E(x) = sum_i q_i x_i + sum_{i<j} Q_ij x_i x_j, with x_i in {0, 1}
    q = np.array([1.0, 1.0, 1.0])
    Q = np.array([
        [0, -2, 0],
        [-2, 0, -2],
        [0, -2, 0],
    ])
    
    result = solver.sample(q, Q, vartype="BINARY")
    print(result.first)  # states are 0/1 and result.vartype is BINARY
    

    Without vartype the variables are spins in {-1, +1} (Ising). A diagonal entry Q[i, i] is a linear term in a QUBO and a constant in an Ising model; the SDK folds it into the biases or the offset accordingly.

Submitting a problem defined in a file:

from veloxq_sdk import VeloxQSolver

solver = VeloxQSolver()

result = solver.sample("ising_model.h5")
print(result)

Submitting an instance in dictionary format:

from veloxq_sdk import VeloxQSolver

solver = VeloxQSolver()

instance_data = {
    "biases": [1, -1],
    "couplings": [[0, -1], [-1, 0]]
}

result = solver.sample(instance_data)
print(result)

Metadata

Release files for veloxq-sdk 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for veloxq-sdk 1.1.1
File Size Uploaded Provenance Actions
veloxq_sdk-1.1.1.tar.gz 74.8 kB With provenance Details for veloxq_sdk-1.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for veloxq-sdk 1.1.1
File Interpreter ABI Platform Actions
veloxq_sdk-1.1.1-py3-none-any.whl Python 3 none any Details for veloxq_sdk-1.1.1-py3-none-any.whl

Total release size: 118.9 kB

Release files / veloxq_sdk-1.1.1.tar.gz

Download URL veloxq_sdk-1.1.1.tar.gz
Size 74.8 kB
Tags Source
SHA-256 checksum
How to use checksums
eac797628143c6e95d4627a1d690f2ca4be3a9121bcc9afd26975a492a14d64e
BLAKE2b-256 checksum
How to use checksums
5a2e6fcce59bbda88337cc35f6e01a4ac7340151f92baafdb32bd1313acbaef7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / veloxq_sdk-1.1.1-py3-none-any.whl

Download URL veloxq_sdk-1.1.1-py3-none-any.whl
Size 44.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
67bd5735d76e0d6e0ea929833f9000298821253f81373971be3c840cc3037044
BLAKE2b-256 checksum
How to use checksums
95b1406d7d7fe6011e53a780929a780117f816bd67b4ca58ed5708227367aa61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for veloxq-sdk 1.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for veloxq_sdk-1.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page