Keras 3 — это мультибэкенд-фреймворк для глубокого обучения с поддержкой JAX, TensorFlow, PyTorch и OpenVINO (только для вывода).
Легко создавайте и обучайте модели для компьютерного зрения, обработки естественного языка, аудио,
прогнозирования временных рядов, рекомендательных систем и других задач.
Присоединяйтесь к почти трём миллионам разработчиков — от стартапов до глобальных корпораций — и используйте мощь Keras 3.
Keras 3 доступен на PyPI как keras
. Обратите внимание, что Keras 2 остаётся доступным в пакете tf-keras
.
keras
:pip install keras --upgrade
Для использования keras
также установите предпочитаемый бэкенд: tensorflow
, jax
или torch
.
Примечание: tensorflow
требуется для некоторых функций Keras 3, таких как определённые слои предобработки
и конвейеры tf.data
.
Keras 3 совместим с Linux и macOS. Пользователям Windows рекомендуется использовать WSL2.
Для установки локальной версии для разработки:
pip install -r requirements.txt
python pip_build.py --install
keras_export
:./shell/api_gen.sh
Файл requirements.txt
устанавливает CPU-версии TensorFlow, JAX и PyTorch. Для поддержки GPU
предусмотрены отдельные файлы requirements-{backend}-cuda.txt
для TensorFlow, JAX и PyTorch.
Они устанавливают все зависимости CUDA через pip
и требуют предустановленного драйвера NVIDIA.
Рекомендуется чистое окружение Python для каждого бэкенда во избежание конфликтов версий CUDA.
Например, так можно создать окружение JAX с GPU через conda
:
conda create -y -n keras-jax python=3.10
conda activate keras-jax
pip install -r requirements-jax-cuda.txt
python pip_build.py --install
Вы можете экспортировать переменную окружения KERAS_BACKEND
или отредактировать локальный конфиг
в ~/.keras/keras.json
. Доступные бэкенды: "tensorflow"
, "jax"
, "torch"
, "openvino"
. Пример:
export KERAS_BACKEND="jax"
В Colab можно сделать так:
import os
os.environ["KERAS_BACKEND"] = "jax"
import keras
Примечание: Бэкенд должен быть настроен до импорта keras
и не может быть изменён после импорта.
Примечание: Бэкенд OpenVINO предназначен только для вывода, то есть для выполнения предсказаний
с помощью метода model.predict()
.
Keras 3 задуман как замена tf.keras
(при использовании бэкенда TensorFlow). Просто возьмите
существующий код tf.keras
, убедитесь, что вызовы model.save()
используют актуальный формат .keras
,
и готово.
Если ваша модель tf.keras
не содержит кастомных компонентов, она сразу заработает на JAX или PyTorch.
Если содержит (например, кастомные слои или train_step()
), обычно её можно адаптировать
для любого бэкенда за несколько минут.
Кроме того, модели Keras могут работать с данными в любом формате, независимо от бэкенда:
вы можете обучать модели на существующих конвейерах tf.data.Dataset
или PyTorch DataLoaders
.
Module
в PyTorch или функции модели в JAX.Подробнее в анонсе Keras 3.