Библиотека C++11, состоящая из одного заголовочного файла и позволяющая разбирать, создавать, изменять и сериализовать JSON с синтаксисом в духе STL.
cloudpipe/cloudpickle
Расширяет pickle в Python, позволяя сериализовать лямбда-функции, функции и классы, определённые в интерактивной среде, для отправки кода удалённым воркерам.
- Звёзды
- 1,947
- Форки
- 212
- Открытые issues
- 124
- Последний коммит
- в прошлом месяце
Что это?
cloudpickle — библиотека сериализации для Python, которая умеет обрабатывать конструкции, с которыми не справляется стандартный модуль pickle. Она сериализует лямбда-функции, а также функции и классы, определённые в модуле __main__, например в скрипте, оболочке или ноутбуке Jupyter.
Основной сценарий использования — кластерные вычисления, при которых код Python отправляют по сети для выполнения на удалённых хостах, часто расположенных рядом с данными. Вместо того чтобы сериализовать функции по ссылке на их модуль, cloudpickle может сериализовать их по значению. Начиная с версии 2.0.0 разработчики также могут явно регистрировать модули для сериализации по значению, чтобы воркерам не требовалась их установка.
Сериализованными данными можно обмениваться только между одинаковыми версиями Python; долговременное хранение не поддерживается. Поскольку десериализация может выполнять произвольный код, загружайте данные только из доверенных источников.
Ключевые возможности
- 01Сериализует лямбда-функции, а также функции и классы, определённые в интерактивной среде.
- 02Поддерживает сериализацию функций и классов по значению, а не по ссылке.
- 03Позволяет регистрировать модули для сериализации по значению с помощью register_pickle_by_value.
- 04Работает как расширение стандартного интерфейса pickle и поддерживает dumps и loads.
Сценарии использования
- Отправка функций Python удалённым воркерам в распределённых вычислительных фреймворках.
- Передача лямбда-функций или функций, определённых в ноутбуке, в задачу параллельной обработки.
- Разработка модулей, код которых нужно обновлять на воркерах без повторной установки.
Быстрый старт
- 1
Установите cloudpickle из PyPI
pip install cloudpickle
Что важно знать
- Передача объектов поддерживается только между средами с абсолютно одинаковой версией Python.
- Не поддерживается долговременное хранение объектов.
- Загружайте данные pickle только из доверенных источников, поскольку десериализация может выполнить произвольный код.
- Сериализация импортируемых модулей по значению является экспериментальной.
Темы
Частые вопросы
- Что такое cloudpickle?
- Расширяет pickle в Python, позволяя сериализовать лямбда-функции, функции и классы, определённые в интерактивной среде, для отправки кода удалённым воркерам. cloudpickle — библиотека сериализации для Python, которая умеет обрабатывать конструкции, с которыми не справляется стандартный модуль pickle. Она сериализует лямбда-функции, а также функции и классы, определённые в модуле __main__, например в скрипте, оболочке или ноутбуке Jupyter.
- cloudpickle можно использовать бесплатно? Какая у него лицензия?
- cloudpickle распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- cloudpickle всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в cloudpickle — 10 сент. 2026 г..
- Для чего можно использовать cloudpickle?
- Отправка функций Python удалённым воркерам в распределённых вычислительных фреймворках. Передача лямбда-функций или функций, определённых в ноутбуке, в задачу параллельной обработки. Разработка модулей, код которых нужно обновлять на воркерах без повторной установки.
- Как установить cloudpickle?
- Установите cloudpickle из PyPI: pip install cloudpickle
- Где скачать cloudpickle?
- Исходный код и инструкции по установке — на GitHub: https://github.com/cloudpipe/cloudpickle
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Декларативный язык схем, который генерирует типобезопасные модели данных и RPC-код для TypeScript, Python, Java, Go, C++ и других языков из одного файла .skir.
Оператор Kubernetes для развёртывания и управления приложениями Ray с помощью ресурсов RayCluster, RayJob и RayService.
Бесплатный распределённый сервис под управлением сообщества: волонтёры генерируют изображения и текст на своих GPU по запросам пользователей.
Open-source-фреймворк для запуска вычислительных задач рядом с данными, без передачи больших наборов данных по сети.
Набор инструментов для создания Web API на базе Django: сериализация, политики аутентификации, viewsets и интерактивный API.