Для чистой Markdown-версии этой страницы добавьте
.mdк этому URL. Полный индекс документации см. в https://docs.nvidia.com/dynamo/llms.txt. Полное содержимое, включая справочник API и примеры SDK, см. в https://docs.nvidia.com/dynamo/llms-full.txt.
Соберите Dynamo из исходников для разработки и вклада в проект
Сборка из исходников
Собирайте Dynamo из исходников, если хотите вносить код, тестировать функции в ветке разработки или настраивать сборку. Если вам нужно только запустить Dynamo, быстрее воспользоваться руководством Local Installation.
Это руководство охватывает Ubuntu и macOS. Для контейнеризованной среды разработки, которая автоматически выполняет все эти шаги, см. DevContainer.
1. Установите системные библиотеки
Ubuntu:
sudo apt install -y build-essential libhwloc-dev libudev-dev pkg-config libclang-dev protobuf-compiler python3-dev cmake
macOS:
# Установите Homebrew, если он еще не установлен
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install cmake protobuf
# Проверьте доступность Metal
xcrun -sdk macosx metal
2. Установите Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
3. Создайте виртуальное окружение Python
Установите uv, если его еще нет:
curl -LsSf https://astral.sh/uv/install.sh | sh
Создайте и активируйте виртуальное окружение:
uv venv .venv
source .venv/bin/activate
4. Установите инструменты сборки
uv pip install pip maturin
Maturin — это инструмент сборки Rust-Python bindings.
5. Соберите Rust bindings
cd lib/bindings/python
maturin develop --uv
6. Установите GPU Memory Service
# Вернитесь в корень проекта
cd "$(git rev-parse --show-toplevel)"
uv pip install -e lib/gpu_memory_service
7. Установите wheel
uv pip install -e .
8. Проверьте сборку
python3 -m dynamo.frontend --help
Вы должны увидеть справку по команде frontend.
DevContainer
Пользователи VSCode и Cursor могут пропустить ручную настройку, используя заранее настроенные development containers. DevContainer автоматически устанавливает все toolchains, собирает проект и настраивает окружение Python.
Доступны контейнеры для конкретных framework'ов: vLLM, SGLang и TensorRT-LLM. Инструкции по настройке см. в DevContainer README.
Настройте pre-commit hooks
Перед отправкой PR установите pre-commit hooks, чтобы убедиться, что код проходит проверки CI:
uv pip install pre-commit
pre-commit install
Запустите проверки вручную для всех файлов:
pre-commit run --all-files
Устранение неполадок
Отсутствуют системные пакеты
Если maturin develop завершается ошибками линковщика, проверьте, что все системные зависимости установлены. В Ubuntu:
sudo apt install -y build-essential libhwloc-dev libudev-dev pkg-config libclang-dev protobuf-compiler python3-dev cmake
Виртуальное окружение не активировано
Maturin собирает проект с использованием активного интерпретатора Python. Если вы видите ошибки, связанные с Python или site-packages, убедитесь, что виртуальное окружение активировано:
source .venv/bin/activate
Место на диске
Каталог Rust target/ может вырасти более чем до 10 GB во время разработки. Если сборка завершается из-за нехватки места на диске, очистите кэш сборки:
cargo clean
Следующие шаги
- Руководство по вкладу -- Процесс внесения кода
- Примеры -- Изучите кодовую базу
- Good First Issues -- Найдите задачу для начала работы