Skip to main content
Glama
INTEGRATION_GUIDE.md15.1 kB
# 🚀 Полная Интеграция Vast.ai MCP + HunyuanVideo Avatar Этот гайд покажет, как последовательно запустить два проекта: 1. **vastai-mcp** - MCP сервер для управления GPU инстансами в Vast.ai 2. **avatar** - проект для генерации видео аватаров с использованием HunyuanVideo-Avatar ## 🎯 Общий Обзор Архитектуры ``` ┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐ │ Локальная Машина │ │ Vast.ai Cloud │ │ GPU Инстанс H100 │ │ │ │ │ │ │ │ ┌─────────────────┐│ │ ┌─────────────────┐│ │ ┌─────────────────┐│ │ │ vastai-mcp ││───▶│ │ Vast.ai API ││───▶│ │ HunyuanVideo ││ │ │ MCP Server ││ │ │ ││ │ │ Avatar Project ││ │ └─────────────────┘│ │ └─────────────────┘│ │ └─────────────────┘│ │ │ │ │ │ │ │ ┌─────────────────┐│ │ │ │ ┌─────────────────┐│ │ │ Claude ││ │ │ │ │ Conda Env ││ │ │ Desktop/AI ││ │ │ │ │ + PyTorch ││ │ └─────────────────┘│ │ │ │ └─────────────────┘│ └─────────────────────┘ └─────────────────────┘ └─────────────────────┘ ``` ## 📋 Системные Требования ### Локальная Машина - Python 3.10+ - Git - SSH клиент - Minimum 8GB RAM - Стабильное интернет-соединение ### Vast.ai Инстанс - **GPU:** H100 SXM или H200 (рекомендуется) - **CPU:** AMD EPYC 9554 (224 cores) @ 3.100GHz - **RAM:** 1.5TB - **Storage:** 500GB+ SSD - **OS:** Ubuntu 24.04.2 LTS x86_64 ## 🔧 Часть 1: Настройка Vast.ai MCP Server ### 1.1 Клонирование и Установка ```bash # Клонируем проект git clone https://github.com/CryDevOk/vastai-mcp.git cd vastai-mcp # Устанавливаем зависимости pip install -r requirements.txt # Или используем uv для более быстрой установки curl -LsSf https://astral.sh/uv/install.sh | sh uv sync ``` ### 1.2 Настройка Конфигурации ```bash # Создаем файл конфигурации cp mcp_config.json.example mcp_config.json # Редактируем конфигурацию nano mcp_config.json ``` Конфигурация должна содержать: ```json { "vast_api_key": "your_vast_api_key_here", "ssh_key_path": "~/.ssh/id_rsa", "default_image": "tensorflow/tensorflow:latest-gpu", "auto_attach_ssh": true, "auto_label": true, "label_prefix": "avatar-gen-" } ``` ### 1.3 Получение API Ключа Vast.ai 1. Перейдите на [console.vast.ai](https://console.vast.ai) 2. Зарегистрируйтесь/войдите в аккаунт 3. Перейдите в раздел "Account" → "API Keys" 4. Создайте новый API ключ 5. Скопируйте ключ в конфигурационный файл ### 1.4 Настройка SSH Ключей ```bash # Генерируем SSH ключи (если их нет) ssh-keygen -t rsa -b 4096 -C "your_email@example.com" # Копируем публичный ключ в Vast.ai cat ~/.ssh/id_rsa.pub ``` Затем добавьте публичный ключ в [console.vast.ai](https://console.vast.ai) → Account → SSH Keys ### 1.5 Запуск MCP Server ```bash # Запускаем MCP сервер python server.py # Или через uv uv run server.py ``` ### 1.6 Интеграция с Claude Desktop Добавьте в файл `claude_desktop_config.json`: ```json { "mcpServers": { "vastai": { "command": "python", "args": ["/path/to/vastai-mcp/server.py"], "env": { "VAST_API_KEY": "your_vast_api_key_here" } } } } ``` ## 🎬 Часть 2: Настройка Avatar Project ### 2.1 Поиск и Создание GPU Инстанса Используйте vastai-mcp для поиска подходящего инстанса: ```bash # Через Claude Desktop или напрямую через MCP # Ищем H100/H200 инстансы search_offers(query="H100 OR H200", limit=10) # Создаем инстанс create_instance( offer_id=<найденный_offer_id>, image="nvidia/cuda:12.8-devel-ubuntu24.04", disk=500, ssh=True, label="hunyuan-avatar-gen" ) ``` ### 2.2 Подготовка Инстанса После создания инстанса выполните: ```bash # Подключение к инстансу через SSH ssh -i ~/.ssh/id_rsa root@<instance_ip> -p <instance_port> # Или используйте MCP команду ssh_execute_command( remote_host="<instance_ip>", remote_user="root", remote_port=<instance_port>, command="whoami" ) ``` ### 2.3 Установка Avatar Project Выполните установочный скрипт: ```bash # Скачиваем и запускаем установочный скрипт wget https://raw.githubusercontent.com/CryDevOk/avatar/main/installation.sh bash installation.sh ``` Или выполните команды вручную: ```bash # Установка Miniconda wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash ~/Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda3 source ~/.bashrc source ~/miniconda3/bin/activate ~/miniconda3/bin/conda init # Клонирование HunyuanVideo-Avatar git clone https://github.com/Tencent-Hunyuan/HunyuanVideo-Avatar.git cd HunyuanVideo-Avatar # Создание conda environment conda create -n HunyuanVideo-Avatar python==3.10.9 -y conda activate HunyuanVideo-Avatar # Установка зависимостей conda install pytorch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 pytorch-cuda=12.4 -c pytorch -c nvidia -y python -m pip install -r requirements.txt python -m pip install ninja python -m pip install decord python -m pip install git+https://github.com/Dao-AILab/flash-attention.git@v2.6.3 # Установка Hugging Face CLI и загрузка модели python -m pip install "huggingface_hub[cli]" cd ./weights huggingface-cli download tencent/HunyuanVideo-Avatar --local-dir ./ cd ../ ``` ### 2.4 Копирование Asset Files ```bash # Создаем необходимые директории mkdir -p assets/input assets/image assets/audio # Копируем файлы из локального avatar проекта scp -i ~/.ssh/id_rsa -P <instance_port> -r ../avatar/assets/* root@<instance_ip>:~/HunyuanVideo-Avatar/assets/ ``` ### 2.5 Запуск Генерации Аватаров ```bash # Копируем и запускаем скрипт генерации scp -i ~/.ssh/id_rsa -P <instance_port> ../avatar/start.sh root@<instance_ip>:~/HunyuanVideo-Avatar/ ssh -i ~/.ssh/id_rsa root@<instance_ip> -p <instance_port> "cd ~/HunyuanVideo-Avatar && bash start.sh" ``` ## 🔄 Часть 3: Автоматизация через MCP ### 3.1 Автоматический Пайплайн Создайте автоматизированный пайплайн через MCP: ```python # Пример автоматизации через MCP def automated_avatar_generation(): # 1. Найти подходящий инстанс offers = search_offers(query="H100", limit=5) # 2. Создать инстанс instance = create_instance( offer_id=offers[0]['id'], image="nvidia/cuda:12.8-devel-ubuntu24.04", disk=500, ssh=True ) # 3. Подождать готовности wait_for_instance_ready(instance['id']) # 4. Установить avatar project ssh_execute_command( remote_host=instance['ip'], remote_user="root", remote_port=instance['port'], command="wget -O - https://raw.githubusercontent.com/CryDevOk/avatar/main/installation.sh | bash" ) # 5. Запустить генерацию ssh_execute_background_command( remote_host=instance['ip'], remote_user="root", remote_port=instance['port'], command="cd ~/HunyuanVideo-Avatar && bash start.sh" ) return instance ``` ### 3.2 Мониторинг и Логи ```bash # Отслеживание прогресса через MCP ssh_execute_command( remote_host="<instance_ip>", remote_user="root", remote_port=<instance_port>, command="tail -f ~/HunyuanVideo-Avatar/logs/generation.log" ) # Проверка статуса задач ssh_check_background_task( remote_host="<instance_ip>", remote_user="root", remote_port=<instance_port>, task_id="<task_id>", process_id=<process_id> ) ``` ### 3.3 Скачивание Результатов ```bash # Скачивание сгенерированных видео scp -i ~/.ssh/id_rsa -P <instance_port> -r root@<instance_ip>:~/HunyuanVideo-Avatar/results-single/* ./results/ ``` ## 🧹 Часть 4: Очистка и Оптимизация ### 4.1 Остановка Инстанса ```bash # Остановка инстанса (сохраняет диск) stop_instance(instance_id) # Или полное удаление destroy_instance(instance_id) ``` ### 4.2 Управление Затратами ```bash # Проверка баланса show_user_info() # Установка лимита времени label_instance(instance_id, "avatar-gen-auto-destroy-2h") ``` ## 🎯 Часть 5: Полный Рабочий Процесс ### 5.1 Единый Скрипт Запуска ```bash #!/bin/bash # full-pipeline.sh set -e echo "🚀 Запуск полного пайплайна Vast.ai + Avatar Generation" # 1. Проверка nastroек echo "📋 Проверка конфигурации..." python -c "import json; print('✅ Конфигурация валидна')" || exit 1 # 2. Поиск инстанса echo "🔍 Поиск доступных GPU инстансов..." INSTANCE_DATA=$(python -c " import server offers = server.search_offers('H100', limit=3) print(offers[0]['id']) ") # 3. Создание инстанса echo "🏗️ Создание инстанса..." python -c " import server instance = server.create_instance( offer_id=$INSTANCE_DATA, image='nvidia/cuda:12.8-devel-ubuntu24.04', disk=500, ssh=True ) print(f'Instance ID: {instance[\"id\"]}') " # 4. Установка и запуск echo "⚙️ Установка avatar project..." # ... остальная логика echo "✅ Пайплайн завершен успешно!" ``` ### 5.2 Мониторинг через Claude Desktop Используйте Claude Desktop для интерактивного управления: ``` Создай H100 инстанс для генерации аватаров, установи HunyuanVideo-Avatar и запусти генерацию на основе файлов в assets/ ``` Claude будет использовать MCP для: - Поиска подходящих инстансов - Создания GPU инстанса - Подключения через SSH - Установки всех зависимостей - Запуска процесса генерации - Мониторинга прогресса ## 🔧 Часть 6: Troubleshooting ### 6.1 Частые Проблемы **Проблема:** Инстанс не запускается ```bash # Проверка статуса show_instance(instance_id) # Проверка логов logs(instance_id) ``` **Проблема:** SSH подключение не работает ```bash # Проверка SSH ключей ssh_execute_command( remote_host="<instance_ip>", remote_user="root", remote_port=<instance_port>, command="echo 'SSH работает'" ) ``` **Проблема:** Не хватает GPU памяти ```bash # Проверка использования GPU ssh_execute_command( remote_host="<instance_ip>", remote_user="root", remote_port=<instance_port>, command="nvidia-smi" ) ``` ### 6.2 Оптимизация Производительности ```bash # Использование FP8 для экономии памяти export USE_FP8=1 # Настройка кеширования export USE_DEEPCACHE=1 # Оптимизация CUDA export CUDA_VISIBLE_DEVICES=0 ``` ## 📊 Стоимость и Планирование ### Примерные Расходы: - **H100 SXM:** ~$1.50-3.00/час - **H200:** ~$2.00-4.00/час - **Генерация 6 видео:** ~2-4 часа - **Общая стоимость:** $6-16 за полный цикл ### Рекомендации: 1. Используйте Spot инстансы для экономии 2. Настройте автоматическую остановку 3. Мониторьте использование через MCP 4. Скачивайте результаты сразу после генерации ## 🎉 Заключение Этот гайд предоставляет полную интеграцию между vastai-mcp и avatar проектами, позволяя автоматизировать весь процесс создания AI аватаров от поиска GPU инстансов до получения готовых видео. Используйте MCP для автоматизации рутинных задач и Claude Desktop для интерактивного управления всем процессом. --- **Полезные Ссылки:** - [Vast.ai Console](https://console.vast.ai) - [HunyuanVideo-Avatar GitHub](https://github.com/Tencent-Hunyuan/HunyuanVideo-Avatar) - [MCP Documentation](https://modelcontextprotocol.io/) - [Claude Desktop](https://claude.ai/desktop)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CryDevOk/vastai-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server