Repolode
cloudpipe

cloudpipe/cloudpickle

Amplía pickle de Python para serializar lambdas y funciones y clases definidas de forma interactiva, y enviar código a workers remotos.

Estrellas
1,947
Forks
212
Issues abiertos
124
Último commit
el mes pasado

¿Qué es?

cloudpickle es una biblioteca de serialización para Python que admite construcciones que el módulo pickle estándar no puede manejar. Puede serializar funciones lambda y funciones o clases definidas en el módulo __main__, por ejemplo, en un script, una shell o un notebook de Jupyter.

Su principal caso de uso es la computación en clúster, donde se envía código Python por la red para ejecutarlo en hosts remotos, a menudo cerca de los datos. En lugar de serializar las funciones por referencia a su módulo, cloudpickle puede serializarlas por valor. Desde la versión 2.0.0, los desarrolladores también pueden registrar explícitamente módulos para serializarlos por valor, de modo que los workers no necesiten tener instalado el módulo.

Los datos serializados solo se pueden intercambiar entre versiones idénticas de Python, y no se admite el almacenamiento a largo plazo. Como la deserialización puede ejecutar código arbitrario, solo se deben cargar datos de fuentes confiables.

Funciones clave

  • 01Serializa funciones lambda y funciones y clases definidas de forma interactiva.
  • 02Permite serializar funciones y clases por valor en lugar de por referencia.
  • 03Permite a los desarrolladores registrar módulos para serializarlos por valor mediante register_pickle_by_value.
  • 04Funciona como una extensión compatible con la interfaz del módulo pickle estándar, con dumps y loads.

Casos de uso

  • Enviar funciones Python a workers remotos en frameworks de computación distribuida.
  • Pasar lambdas o funciones definidas en notebooks a un trabajo de procesamiento en paralelo.
  • Desarrollar módulos cuyo código deba actualizarse en los workers sin tener que reinstalarlos.

Inicio rápido

  1. 1

    Instala cloudpickle desde PyPI

    pip install cloudpickle

Antes de usarlo

  • Solo envía objetos entre instalaciones que usan exactamente la misma versión de Python.
  • No está diseñado para el almacenamiento de objetos a largo plazo.
  • Carga datos pickle solo de fuentes de confianza, ya que deserializarlos puede ejecutar código arbitrario.
  • La serialización por valor de módulos importables es experimental.

Temas

Preguntas frecuentes

¿Qué es cloudpickle?
Amplía pickle de Python para serializar lambdas y funciones y clases definidas de forma interactiva, y enviar código a workers remotos. cloudpickle es una biblioteca de serialización para Python que admite construcciones que el módulo pickle estándar no puede manejar. Puede serializar funciones lambda y funciones o clases definidas en el módulo __main__, por ejemplo, en un script, una shell o un notebook de Jupyter.
¿cloudpickle es gratuito? ¿Qué licencia tiene?
cloudpickle es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿cloudpickle sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de cloudpickle fue el 10 sept 2026.
¿Para qué puedo usar cloudpickle?
Enviar funciones Python a workers remotos en frameworks de computación distribuida. Pasar lambdas o funciones definidas en notebooks a un trabajo de procesamiento en paralelo. Desarrollar módulos cuyo código deba actualizarse en los workers sin tener que reinstalarlos.
¿Cómo se instala cloudpickle?
Instala cloudpickle desde PyPI: pip install cloudpickle
¿Dónde consigo cloudpickle?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/cloudpipe/cloudpickle

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados