Хранение модели
Для развертывания модели необходимо сначала сохранить её в одном из типов хранилищ, поддерживаемых Alauda AI. Поддерживаемые типы хранилищ включают:
- S3 Object Storage: самый часто используемый режим. Данные загружаются до запуска основного контейнера с помощью Storage Initializer (InitContainer).
- Persistent Volume Claim (PVC): монтирует данные, хранящиеся на постоянном томе, до запуска основного контейнера через Storage Initializer.
- Open Container Initiative (OCI) контейнеры: также известны как modelcars в KServe. Этот подход обеспечивает загрузку за секунды с использованием возможности кэширования слоёв контейнерного рантайма через Sidecar.
Содержание
Использование S3 Object Storage для хранения моделиКонфигурация аутентификацииПараметры конфигурации ключей S3Развертывание Inference ServiceИспользование OCI контейнеров для хранения моделиИспользование PVC для хранения моделиЗагрузка файлов модели в PVCПредварительные условияПроцедураПроверкаСледующие шагиРазвертывание Inference ServiceИспользование S3 Object Storage для хранения модели
Это самый часто используемый режим. Управление учётными данными реализуется через Secret с аннотациями, содержащими специфические параметры конфигурации S3.
Конфигурация аутентификации
Рекомендуется создавать отдельные ServiceAccount и Secret для каждого проекта.
Параметры конфигурации ключей S3
- Замените
YOUR_BASE64_ENCODED_ACCESS_KEYна ваш фактический Base64-кодированный AWS access key ID. - Замените
YOUR_BASE64_ENCODED_SECRET_KEYна ваш фактический Base64-кодированный AWS secret access key. - Замените
your_s3_service_ip:your_s3_portна фактический IP-адрес и порт вашего S3-сервиса. - Установите
serving.kserve.io/s3-usehttpsв "1", если ваш S3-сервис использует HTTPS, или в "0", если HTTP.
Развертывание Inference Service
- Замените
Qwen2.5-0.5B-Instructна фактическое имя вашей модели. aml.cpaas.io/runtime-type: vllmуказывает тип рантайма кода. Для получения дополнительной информации о пользовательских inference runtime смотрите Extend Inference Runtimes.- Замените
aml-vllm-0.11.2-cpuна имя рантайма, уже установленного на вашей платформе (соответствующего экземпляру ClusterServingRuntime CRD). storageUri: s3://models/Qwen2.5-0.5B-Instructуказывает URI S3-бакета, где хранится модель.serviceAccountName: sa-modelsуказывает сервисный аккаунт с правами доступа к секрету с учётными данными S3.
Использование OCI контейнеров для хранения модели
В качестве альтернативы хранению модели в S3-бакете или PVC, вы можете хранить модели в Open Container Initiative (OCI) контейнерах. Развёртывание моделей из OCI контейнеров также известно как modelcars в KServe. Этот подход идеально подходит для офлайн-сред и внутренних корпоративных регистров, таких как Quay или Harbor.
Подробные инструкции по упаковке и развертыванию моделей с использованием OCI контейнеров смотрите в разделе Using KServe Modelcar for Model Storage.
Использование PVC для хранения модели
Загрузка файлов модели в PVC
При развертывании модели вы можете обслуживать её из уже существующего Persistent Volume Claim (PVC), где хранятся файлы модели. Вы можете загрузить локальные файлы модели в PVC через IDE, доступную из запущенного workbench.
Предварительные условия
-
У вас есть доступ к панели управления Alauda AI.
-
У вас есть доступ к проекту с запущенным workbench.
-
Вы создали Persistent Volume Claim (PVC).
-
Workbench подключён к Persistent Volume (PVC).
Для инструкций по созданию workbench и подключению PVC смотрите Create Workbench.
-
Файлы модели сохранены на вашем локальном компьютере.
Процедура
Выполните следующие шаги для загрузки файлов модели в PVC через ваш workbench:
-
В панели управления Alauda AI нажмите Workbench, чтобы перейти на страницу списка workbench.
-
Найдите запущенный экземпляр workbench и нажмите кнопку Connect для входа в workbench.
-
В IDE workbench откройте файловый браузер:
- В JupyterLab это вкладка Files в левой боковой панели.
- В code-server это вид Explorer в левой боковой панели.
-
В файловом браузере перейдите в домашний каталог. Этот каталог представляет корень подключённого PVC.
Примечание Все файлы и папки, которые вы создаёте или загружаете в эту папку, сохраняются в PVC.
-
По желанию: создайте новую папку для организации моделей:
- В файловом браузере кликните правой кнопкой мыши в домашнем каталоге и выберите New Folder.
- Назовите папку (например, models).
- Дважды кликните по новой папке models, чтобы войти в неё.
-
Загрузите файлы модели в текущую папку:
- В JupyterLab:
- Нажмите кнопку Upload на панели инструментов файлового браузера.
- В диалоговом окне выбора файлов перейдите к файлам модели на локальном компьютере и выберите их. Нажмите Open.
- Дождитесь завершения загрузки.
- В code-server:
- Перетащите файлы модели из локального проводника файлов прямо в панель файлового браузера в целевой папке внутри code-server.
- Дождитесь завершения загрузки.
- В JupyterLab:
Проверка
Убедитесь, что ваши файлы отображаются в файловом браузере по пути, куда вы их загрузили.
Следующие шаги
При развертывании модели из PVC укажите storageUri в формате pvc://<pvc-name>/<optional-path>. Например:
pvc://model-pvc— загрузка из корня PVC.pvc://model-pvc/models/Qwen2.5-0.5B-Instruct— загрузка из конкретной поддиректории.
Развертывание Inference Service
- Замените
Qwen2.5-0.5B-Instructна фактическое имя вашей модели. aml.cpaas.io/runtime-type: vllmуказывает тип рантайма кода. Для получения дополнительной информации о пользовательских inference runtime смотрите Extend Inference Runtimes.- Замените
aml-vllm-0.11.2-cpuна имя рантайма, уже установленного на вашей платформе (соответствующего экземпляру ClusterServingRuntime CRD). storageUri: pvc://model-pvcуказывает имя PVC, где хранится модель.