Saltar al contenido principal

⚙️ Configuración de doQumentation

Configure el servidor Jupyter utilizado para ejecutar código Python en los tutoriales.

Entorno Actual:

Modo Simulador

Active para ejecutar notebooks sin una cuenta de IBM Quantum. Todas las llamadas a QiskitRuntimeService se redirigen a un simulador local. No se necesitan modificaciones de celdas. Esto se aplica solo a la ejecución de código incrustada en este sitio — abrir un notebook en JupyterLab usa el runtime estándar de Qiskit.

Los circuitos transpilados y los resultados específicos del backend diferirán del hardware real al usar el modo simulador. Las salidas esperadas estáticas mostradas en las páginas reflejan backends de IBM reales.

Preferencias de Visualización

Tamaño de Fuente del Código

14px
from qiskit import QuantumCircuit

Salidas Precalculadas

Cada página de notebook muestra salidas precalculadas (imágenes, tablas, texto) de las ejecuciones originales de IBM. Cuando hace clic en Run para ejecutar código en vivo, tanto las salidas originales como sus nuevos resultados en vivo se muestran uno al lado del otro. Active esta opción para ocultar las salidas originales durante la ejecución en vivo, manteniendo solo sus resultados visibles.

Advertencias de Python

Por defecto, las advertencias de Python (avisos de obsolescencia, sugerencias de tiempo de ejecución) se suprimen para una salida de notebook más limpia. Desactive esto para ver todas las advertencias — útil para depuración o para aprender sobre cambios en la API.

Progreso de Aprendizaje

Su progreso de lectura y ejecución se rastrea localmente en su navegador. Las páginas visitadas muestran un en la barra lateral; los notebooks ejecutados muestran un .

Aún no se ha rastreado ningún progreso. Visite tutoriales y guías para comenzar a rastrear.

Otros

Advanced Settings

IBM Cloud Code Engine

Code Engine provides a fast, serverless Jupyter kernel powered by your own IBM Cloud account. Startup takes seconds instead of minutes. Free tier covers ~14 hours/month.

Setup Instructions
  1. Create an IBM Cloud account at cloud.ibm.com (free tier available)
  2. Create a Code Engine project in your preferred region
  3. Deploy a new application with image ghcr.io/janlahmann/doqumentation-codeengine:latest, port 8080
  4. Set environment variable JUPYTER_TOKEN to a secure token (min 32 characters) and CORS_ORIGIN to your domain
Join Workshop

Enter the workshop URL and token provided by your instructor. This connects you to the workshop's Code Engine instance.

Cuenta de IBM Quantum

Nota de seguridad: Las credenciales se almacenan en el localStorage de su navegador en texto plano. No están cifradas y pueden ser leídas por extensiones del navegador o cualquier persona con acceso a este dispositivo. Use la configuración de caducidad a continuación para limitar la exposición, y elimine las credenciales cuando termine. Para computadoras compartidas o públicas, prefiera el método manual save_account() descrito a continuación.

Ingrese sus credenciales de IBM Quantum una vez aquí. Se inyectarán automáticamente a través de save_account() cuando se inicie el kernel, por lo que no necesita ingresarlas en cada notebook. Esto se aplica solo a la ejecución de código incrustada en este sitio — abrir un notebook en JupyterLab requiere llamar a save_account() manualmente.

  1. Registrarse en quantum.cloud.ibm.com/registration — no se requiere tarjeta de crédito durante los primeros 30 días
  2. Iniciar sesión en quantum.cloud.ibm.com
  3. Instancia — Cree una instancia gratuita de Open Plan en Instancias si aún no tiene una
  4. API Token — Haga clic en su icono de perfil (arriba a la derecha), luego "API token". Copie la clave.
  5. CRN — Copie la cadena CRN de su página Instancias

Para pasos detallados, consulte la guía Configurar autenticación de IBM (paso 2).

Alternativa: Ejecutar save_account() manualmente en una celda de notebook

Si prefiere no almacenar credenciales en este navegador, pegue esto en cualquier celda de código y ejecútelo. Las credenciales se guardan en el almacenamiento temporal del kernel de Binder y se pierden cuando finaliza la sesión.

from qiskit_ibm_runtime import QiskitRuntimeService
QiskitRuntimeService.save_account(
    token="YOUR_API_TOKEN",
    instance="YOUR_CRN",
    overwrite=True
)

Paquetes de Binder

Al ejecutarse en GitHub Pages, el código se ejecuta a través de MyBinder. El entorno de Binder incluye paquetes Qiskit principales preinstalados:

qiskit[visualization], qiskit-aer,
qiskit-ibm-runtime, pylatexenc,
qiskit-ibm-catalog, qiskit-addon-utils, pyscf

Algunos notebooks requieren paquetes adicionales. Puede instalarlos bajo demanda ejecutando esto en una celda de código:

!pip install -q <package>

O instalar todos los paquetes opcionales a la vez:

!pip install -q scipy scikit-learn qiskit-ibm-transpiler \
  qiskit-experiments plotly sympy qiskit-serverless \
  qiskit-addon-sqd qiskit-addon-mpf \
  qiskit-addon-aqc-tensor[aer,quimb-jax] \
  qiskit-addon-obp qiskit-addon-cutting ffsim \
  gem-suite python-sat

Avanzado

La URL base de su servidor Jupyter (por ejemplo, http://localhost:8888)
Token de jupyter server --generate-config o mostrado al inicio

Ayuda de Configuración

Configuración de RasQberry

Si está ejecutando en un RasQberry Pi, el servidor Jupyter debería detectarse automáticamente. Si no, asegúrese de que el servicio jupyter-tutorials esté en ejecución:

sudo systemctl status jupyter-tutorials

Configuración Local de Jupyter

Inicie un servidor Jupyter con CORS habilitado:

jupyter server --ServerApp.token='rasqberry' \
  --ServerApp.allow_origin='*' \
  --ServerApp.disable_check_xsrf=True

Configuración de Docker

El contenedor Docker genera un token de Jupyter aleatorio al iniciar. La ejecución de código a través del sitio web (puerto 8080) funciona automáticamente — no se necesita token. El token solo se requiere para acceso directo a JupyterLab en el puerto 8888.

Para recuperar el token de los registros del contenedor:

docker compose --profile jupyter logs | grep "Jupyter token"

Para establecer un token fijo:

JUPYTER_TOKEN=mytoken docker compose --profile jupyter up

Servidor Remoto

Para servidores remotos, asegúrese de que CORS esté configurado para permitir conexiones desde este sitio. Agregue lo siguiente a su jupyter_server_config.py:

c.ServerApp.allow_origin = '*'
c.ServerApp.allow_credentials = True