Saltar a contenido

Datasets#

Usa datasets cuando quieras subir datos de entrada una vez y reutilizarlos en varios jobs.

Crear una sesión de subida#

from qcentroid_sdk import QCentroidClient

client = QCentroidClient(
    api_key="your-api-key",
)

upload = client.datasets.create_upload(
    use_case_name="qcentroid-example-1-sum",
    file_name="input.json",
    description="Example dataset",
)

print(upload.file_identifier)
print(upload.upload_url)

Subir un dataset en un solo paso#

result = client.datasets.upload(
    use_case_name="qcentroid-example-1-sum",
    file={"a": 2, "b": 3},
    file_name="input.json",
    description="Example dataset",
)

print(result.file_identifier)

Entradas de subida soportadas#

El argumento file en client.datasets.upload(...) acepta:

  • un dict de Python
  • una list de Python
  • un objeto bytes
  • una ruta de archivo como str
  • un pathlib.Path
  • una cadena de texto plano

Reutilizar un dataset#

Después de subir un dataset, usa su file_identifier para lanzar jobs:

job = client.jobs.run(
    use_case_name="maxcut-academic",
    dataset_id="your-file-identifier",
    solvers=[{"name": "qcentroid-maxcut-random"}],
    solvers_provider_params={"qcentroid-maxcut-random": {}},
    num_shots=1,
    max_exec_time_m=0,
)

Nota actual de la API#

Algunos endpoints de lectura de datasets pueden estar expuestos por la API pero no estar completamente implementados en todos los entornos. El SDK expone esas respuestas de forma clara para que tu código pueda gestionarlas explícitamente.