Cómo acceder a futuras versiones de Python como la 3.12 antes que las masas.

Acceder a Python 3.12 antes que los demás.

Y pruébalo

Imagen de mí con Midjourney

Las nuevas versiones de Python siempre traen mejoras significativas para el juego. Toma 3.11 como ejemplo, esa prometió hasta un aumento del 60% en el rendimiento y cumplieron la promesa en octubre pasado.

Además de la promesa de nuevas características, probar versiones no lanzadas de Python ayuda a los desarrolladores a encontrar errores más rápido y permite que otros participen en el proceso de desarrollo. También existe una verdadera posibilidad de obtener ventaja competitiva aprovechando las nuevas características antes que las masas.

Incluso si estas razones no suenan lo suficientemente convincentes, presumir en las redes sociales de que has revisado una nueva versión de Python antes que la multitud siempre es genial.

Entonces, empecemos.

Paso 0: Instalar Docker

La razón por la cual no todos pueden acceder a las nuevas versiones de Python es porque están bien escondidas. No tienen enlaces de descarga en Python.org. En su lugar, están alojados en la página oficial de la imagen Docker de Python:

Captura de pantalla mía

Como puedes ver, la imagen tiene más de 1 billón de descargas. Si te desplazas hacia abajo un poco, verás diferentes variantes de la imagen de Python:

Captura de pantalla mía

Queremos instalar la versión de Python 3.12 no lanzada, pero hay docenas de variantes. ¿Cuál elegir?

Antes de responder a eso, asegúrate de que tengas Docker Desktop instalado y puedas ejecutar docker --version en tu CLI.

La razón por la que estamos usando imágenes y contenedores de Docker es que son seguros y están aislados. Python 3.12 no arruinará tu entorno si está dentro de un contenedor. Más que nada, no tenemos otra opción que los contenedores 🙂

No tienes que saber nada sobre Docker para este tutorial.

Paso 1: Elegir una imagen

Entonces, ¿qué significan todas esas palabras – alpine, rc, bookworm, slim y bullseye en los nombres de etiquetas de imagen de Python? Estos términos se usan para informarnos sobre el sistema operativo base utilizado en cada imagen. Aquí están sus definiciones:

  • alpine: Las imágenes con la etiqueta alpine utilizan la distribución de Alpine Linux conocida por su pequeño tamaño y diseño enfocado en la seguridad.
  • bookworm: Bookworm es un nombre en clave para el sistema operativo Debian 12, una distribución popular conocida por su estabilidad y adaptabilidad de software amplia.
  • bullseye (nombre genial): Bullseye es otro nombre en clave para Debian (versión 11).
  • slim: una variante de imágenes que se construyen con el enfoque en una huella de tamaño más pequeño. Estas imágenes se reducen para incluir solo los componentes y dependencias esenciales necesarios para ejecutar aplicaciones de Python, lo que las hace más ligeras y eficientes.
  • 0bn: Las etiquetas con 0b representan versiones beta. Por ejemplo, las imágenes 0b2 son versiones beta de Python 3.12 Beta 2. La versión beta final (0b4) para Python 3.12 será en julio de 2023.
  • rc: Las imágenes con esta etiqueta son versiones candidatas a lanzamiento. Las versiones candidatas a lanzamiento se consideran potencialmente estables y listas para el lanzamiento, pendiente de más pruebas y comentarios.

Y elegiremos una de esas versiones candidatas a lanzamiento, específicamente 3.12-rc-bookworm. Debian 12 es.

Echa un vistazo al calendario de lanzamiento de Python 3.12 aquí.

Paso 2: Obtener la imagen

Primero, asegúrate de que Docker Desktop esté en ejecución iniciando la aplicación y comprobando el estado:

Imagen de mi

Luego, en cualquier terminal, ejecuta el siguiente comando y espera:

$ docker pull python:3.12-rc-bookworm

El comando obtendrá la imagen oficial de Docker Hub.

Mientras esperas: Una imagen de Docker es un paquete ligero, independiente y ejecutable que incluye todo lo necesario para ejecutar un software, incluyendo el código, el tiempo de ejecución, las herramientas del sistema, bibliotecas y configuraciones.

Por otro lado, un contenedor de Docker es una instancia en ejecución de una imagen de Docker. Vamos a iniciar un contenedor de ese tipo una vez que se complete la obtención.

Docker para los científicos de datos modernos: 6 conceptos que no puedes ignorar en 2023

Editar descripción

towardsdatascience.com

Paso 3: Iniciar un contenedor

¡Redoble de tambores! Estamos a punto de poner nuestras manos en la nueva versión de Python 3.12 por primera vez. El comando para hacerlo es… (silencio dramático de tu parte):

$ docker run -it python:3.12-rc-bookwormPython 3.12.0b2 (main, Jun 14 2023, 17:45:20) [GCC 12.2.0] on linuxType "help", "copyright", "credits" or "license" for more information.>>>

Y ahí lo tenemos, gente amable. El comando lanzó un contenedor a partir de la imagen 3.12-rc-bookworm y agregó la etiqueta -it para iniciar el intérprete de Python. Ahora puedes hacer cualquier cosa que harías dentro de una terminal interactiva.

Para algunas ideas, echa un vistazo al artículo “What’s new in 3.12” de la documentación oficial. Yo probaría primero esos mensajes de error mejorados.

Para salir de la terminal y el contenedor, ejecuta exit().

Paso 4: Enlazar VSCode con el contenedor

¿No creíste que llegaríamos hasta aquí para ejecutar un montón de expresiones en la estúpida terminal, verdad?

Oh no. Vamos a enlazar el contenedor con Python 3.12 a VSCode y escribir algunos scripts para probar la nueva versión de verdad.

Entonces, en cualquier directorio de tu ordenador, abre VSCode (espero que lo hayas configurado para Python y ciencia de datos).

$ cd some_dir$ code . # Lanza VSCode

Luego, instala la extensión de Desarrollo Remoto:

Imagen de mi

Recarga VSCode. Luego, ve a Docker Desktop y haz clic en el menú Contenedores:

Imagen de mi

Verás una lista de contenedores en ejecución. Mi versión de Python 3.12 se llama adoring_dirac. Ahora mismo, no se está ejecutando porque salí del intérprete de Python en mi CLI. Para ejecutarlo, presiona el botón de reproducción que iniciará el contenedor.

Ahora, vuelve a VSCode y abre la paleta de comandos (Ctrl + Shift + P) y busca “Attach to running containers”. Aquí hay un GIF útil:

En cuanto haga clic en una instancia de contenedor en ejecución con Python 3.12 como imagen base, aparecerá una nueva ventana de VSCode que está directamente vinculada al contenedor.

Recuerde, este contenedor está aislado de su sistema operativo, por lo que cualquier archivo que cree o edite o cualquier sesión de terminal que inicie también estarán aislados y no serán visibles.

Así que, esta es su luz verde para probar cualquier cosa dentro del contenedor para probar Python 3.12. Además de crear scripts,

también puede instalar otro software como Conda, Git, DVC y tratar el contenedor como si tuviera una computadora nueva y vacía con solo Python 3.12 instalado.

Conclusión

También puede aplicar el enfoque descrito para instalar futuras versiones de Python en otras herramientas o bibliotecas. Por ejemplo, marcos populares como TensorFlow o PyTorch tienen sus imágenes Docker oficiales disponibles en Docker Hub.

Al utilizar estas imágenes oficiales, puede configurar fácilmente los marcos con soporte de GPU, eliminando cualquier complejidad o desafío. Los contenedores Docker vienen preconfigurados, lo que garantiza una experiencia de instalación sin problemas.

¡Gracias por leer!

¿Le encantó este artículo y, afrontémoslo, su estilo de escritura bizarro? Imagínese tener acceso a docenas más como este, todos escritos por un autor brillante, encantador e ingenioso (que soy yo, por cierto :).

Por solo 4,99$ de membresía, tendrá acceso no solo a mis historias, sino también a un tesoro de conocimiento de las mentes más brillantes de Zepes. Y si utiliza mi enlace de referencia , ganará mi supernova de gratitud y un ¡choque virtual de manos por apoyar mi trabajo!

Como miembro de Zepes, una parte de su tarifa de membresía va a los escritores que lee, y obtiene acceso completo a cada historia…

ibexorigin.medium.com

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Aprendizaje Automático

Contextual AI presenta LENS un marco de inteligencia artificial para modelos de lenguaje con visión aumentada que supera a Flamingo en un 9% (56->65%) en VQAv2.

Los Modelos de Lenguaje Grandes (LLMs) han transformado la comprensión del lenguaje natural en los últimos años, demo...

Inteligencia Artificial

Rishi Sunak presenta la visión de nuevos organismos internacionales de seguridad de la IA

El Primer Ministro británico defendió la búsqueda de respaldo chino para una serie de nuevas iniciativas de gobernanz...

Inteligencia Artificial

Comprendiendo los fundamentos de las redes neuronales y el aprendizaje profundo

Este artículo tiene como objetivo ofrecer una visión completa de los fundamentos de las redes neuronales y el aprendi...

Inteligencia Artificial

Cómo construir un almacén de características de IA/ML con ScyllaDB NoSQL

En este artículo, profundizaremos en los fundamentos de los almacenes de características de AI/ML y exploraremos cómo...