Просмотрщик моделей нейросетей, глубокого и машинного обучения с поддержкой ONNX, TensorFlow, PyTorch, Core ML и многих других форматов.
LaurentMazare/tch-rs
Rust-привязки к C++ API PyTorch (libtorch), позволяющие создавать, обучать и запускать модели глубокого обучения на Rust.
- Звёзды
- 5,516
- Форки
- 463
- Открытые issues
- 276
- Последний коммит
- 3 месяца назад
Что это?
tch-rs предоставляет crate `tch` — набор тонких обёрток над C++ API PyTorch (libtorch). Он близок к исходному интерфейсу C++, поэтому из Rust можно вызывать операции с тензорами, автоматическое дифференцирование и модули нейронных сетей. Поверх него можно создавать более идиоматичные API для Rust.
Crate поддерживает создание тензоров и арифметические операции, обучение на основе градиентов через VarStore и оптимизаторы, такие как SGD и Adam, а также загрузку моделей TorchScript JIT. В него также входят утилиты для работы с компьютерным зрением: загрузка MNIST, предобработка ImageNet и предварительно обученные модели ResNet и VGG. Кроме того, можно импортировать веса, экспортированные из PyTorch в формате safetensors.
Для работы crate требуется libtorch v2.13.0. Его можно получить из системной установки, скачать вручную, использовать из локальной установки PyTorch для Python или загрузить автоматически с помощью feature download-libtorch. Также поддерживается статическая линковка.
Ключевые возможности
- 01Тонкие обёртки над C++ API libtorch с типом тензора и распространёнными операциями над тензорами.
- 02Автоматическое дифференцирование и оптимизаторы, такие как SGD и Adam, через VarStore.
- 03Загрузка моделей TorchScript JIT и импорт весов PyTorch в формате safetensors.
- 04Утилиты для работы с компьютерным зрением: загрузка MNIST, предобработка ImageNet и предварительно обученные модели ResNet и VGG.
- 05Варианты сборки с системной установкой libtorch, ручной установкой, PyTorch для Python или автоматической загрузкой.
Сценарии использования
- Создание и обучение моделей глубокого обучения на Rust с использованием ядер PyTorch.
- Запуск инференса с предварительно обученными моделями для компьютерного зрения или моделями TorchScript в сервисах на Rust.
- Перенос кода моделей PyTorch на Rust с сохранением той же backend-платформы libtorch.
- Создание высокоуровневых библиотек машинного обучения для Rust на основе libtorch.
Быстрый старт
- 1
Установите libtorch v2.13.0 (в систему или скачайте с сайта PyTorch).
- 2
Укажите каталог libtorch для сборки с помощью переменной LIBTORCH.
export LIBTORCH=/path/to/libtorch - 3
Запустите пример, чтобы проверить настройку.
cargo run --example basics
Что важно знать
- Требуется отдельно установить libtorch v2.13.0, что усложняет настройку.
- Пользователям Windows следует использовать тулчейн MSVC, поскольку у MinGW есть проблемы совместимости с PyTorch.
- Для статической линковки необходимо вручную собрать libtorch из исходного кода.
Темы
Частые вопросы
- Что такое tch-rs?
- Rust-привязки к C++ API PyTorch (libtorch), позволяющие создавать, обучать и запускать модели глубокого обучения на Rust. tch-rs предоставляет crate `tch` — набор тонких обёрток над C++ API PyTorch (libtorch). Он близок к исходному интерфейсу C++, поэтому из Rust можно вызывать операции с тензорами, автоматическое дифференцирование и модули нейронных сетей. Поверх него можно создавать более идиоматичные API для Rust.
- tch-rs можно использовать бесплатно? Какая у него лицензия?
- tch-rs распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- tch-rs всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в tch-rs — 23 авг. 2026 г..
- Для чего можно использовать tch-rs?
- Создание и обучение моделей глубокого обучения на Rust с использованием ядер PyTorch. Запуск инференса с предварительно обученными моделями для компьютерного зрения или моделями TorchScript в сервисах на Rust. Перенос кода моделей PyTorch на Rust с сохранением той же backend-платформы libtorch. Создание высокоуровневых библиотек машинного обучения для Rust на основе libtorch.
- Как установить tch-rs?
- Установите libtorch v2.13.0 (в систему или скачайте с сайта PyTorch). Укажите каталог libtorch для сборки с помощью переменной LIBTORCH.: export LIBTORCH=/path/to/libtorch Запустите пример, чтобы проверить настройку.: cargo run --example basics
- Где скачать tch-rs?
- Исходный код и инструкции по установке — на GitHub: https://github.com/LaurentMazare/tch-rs
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Независимый от движка фреймворк глубокого обучения для Java, позволяющий создавать, обучать и запускать модели через нативный Java API.
TNT (torchtnt) — лёгкая библиотека инструментов и утилит для обучения моделей PyTorch.
Подборка библиотек, моделей, реализаций, руководств и статей по PyTorch на GitHub.
Библиотека тензоров и фреймворк для глубокого обучения на Rust с обучением и инференсом на CUDA, ROCm, Metal, Vulkan, WebGPU и CPU.
Open source-платформа для полного цикла разработки и развёртывания моделей машинного обучения с API для Python и C++.