Saltar a contenido

Interfaz de línea de comandos#

El SDK incluye un comando qc para flujos habituales desde terminal. Úsalo cuando quieras inspeccionar jobs, lanzar jobs, subir datasets o consultar casos de uso y solvers sin escribir un script de Python.

Instalación#

Instala el paquete:

pip install qcentroid-sdk

Cuando desarrolles desde un checkout local, instálalo en modo editable desde la raíz del repositorio:

python -m pip install -e .

Después verifica que el comando está disponible:

qc --help

En Windows, si PowerShell no encuentra qc, añade al PATH de la terminal actual el directorio de scripts de usuario mostrado por pip install:

$env:PATH += ";$env:APPDATA\Python\Python313\Scripts"

Autenticación#

La CLI usa las mismas variables de entorno que el cliente Python.

PowerShell:

$env:QCENTROID_API_KEY = "your-api-key"

macOS/Linux:

export QCENTROID_API_KEY="your-api-key"

También puedes pasar una API key para un único comando:

qc --api-key "your-api-key" jobs list

Si ya tienes un access token, usa:

export QCENTROID_TOKEN="your-access-token"

Seleccionar un entorno#

El entorno por defecto es sandbox.

PowerShell:

$env:QCENTROID_ENVIRONMENT = "sandbox"

macOS/Linux:

export QCENTROID_ENVIRONMENT="sandbox"

También puedes pasar el entorno por comando:

qc --env dev jobs list

Los nombres de entorno soportados son sandbox, dev, prod y production.

Formato de salida#

Por defecto, los comandos de listado imprimen una tabla legible.

Los comandos de listado que soportan paginación muestran hasta 10 filas por defecto. Usa --limit para solicitar un número diferente de filas.

Usa --json antes del nombre del recurso para imprimir JSON:

qc --json jobs list
qc --json jobs get my-job-name

Jobs#

Listar jobs recientes:

qc jobs list

Limitar y filtrar jobs:

qc jobs list --limit 10
qc jobs list --status FINISHED
qc jobs list --tag my-tag

Obtener un job por nombre:

qc jobs get my-job-name

Esperar a que un job finalice:

qc jobs wait my-job-name

Controlar el intervalo de polling y el timeout:

qc jobs wait my-job-name --poll-interval 60 --timeout 3600

Leer la entrada, salida y logs de ejecución de un job:

qc jobs input my-job-name
qc jobs output my-job-name
qc jobs logs my-job-name

Ejecutar un job con datos JSON inline:

qc jobs run \
  --use-case my-use-case-name \
  --data '{"a": 2, "b": 3}' \
  --solver my-solver-name \
  --num-shots 1

Equivalente en PowerShell:

qc jobs run `
  --use-case my-use-case-name `
  --data '{"a": 2, "b": 3}' `
  --solver my-solver-name `
  --num-shots 1

Ejecutar un job con un archivo JSON:

qc jobs run \
  --use-case my-use-case-name \
  --data ./input.json \
  --solver my-solver-name \
  --num-shots 1

Ejecutar un job con un dataset existente:

qc jobs run \
  --use-case my-use-case-name \
  --dataset-id my-dataset-id \
  --solver my-solver-name \
  --num-shots 1

Algunos casos de uso requieren configuración adicional del solver. Pasa objetos JSON con:

qc jobs run \
  --use-case my-use-case-name \
  --dataset-id my-dataset-id \
  --solver my-solver-name \
  --solvers-provider-params '{"my-solver-name": {}}' \
  --max-exec-time-m 0

Casos de uso#

Listar casos de uso disponibles:

qc use-cases list

Obtener el schema de un caso de uso:

qc use-cases schema my-use-case-name

Solvers#

Listar solvers disponibles:

qc solvers list

Esto muestra hasta 10 solvers por defecto. Usa --limit y --skip para paginar más filas.

Listar solvers para un caso de uso concreto:

qc solvers list --use-case my-use-case-name

Datasets#

Listar datasets:

qc datasets list

Subir un archivo de dataset:

qc datasets upload --use-case my-use-case-name ./data.json

Añadir metadatos al dataset:

qc datasets upload \
  --use-case my-use-case-name \
  --file-name my-dataset.json \
  --description "Input data for my use case" \
  ./data.json

Resolución de problemas#

Si ves:

qc: No access token is available and an API key was not provided.

Define QCENTROID_API_KEY en la misma sesión de terminal donde ejecutas qc, o pasa --api-key directamente.

Si PowerShell indica que no reconoce qc, el paquete se instaló correctamente pero el directorio de scripts de Python no está en PATH. Usa la ruta completa a qc.exe mostrada por pip install, o añade ese directorio a PATH.