Files

2.2 KiB

Model Ingest

Цель: принять новую модель от пользователя, агента или внешнего источника без ручного копирования в реестр.

UI

Локальный кабинет моделей доступен в Model Chat Testbench:

http://127.0.0.1:8765

Блок Модели поддерживает:

  • загрузку файла из браузера;
  • заявку на импорт из URL;
  • заявку на импорт из пути, доступного серверу;
  • просмотр последних ingest jobs.

API

Последние заявки:

curl http://127.0.0.1:8765/api/model-ingest/jobs

Загрузить файл raw stream:

curl -X POST "http://127.0.0.1:8765/api/model-ingest/upload?model_id=my-model&plugin=1c&format=gguf&filename=model.gguf" `
  --data-binary "@model.gguf"

Попросить сервер скачать из URL или импортировать путь:

curl -X POST http://127.0.0.1:8765/api/model-ingest/source `
  -H "Content-Type: application/json" `
  -d "{\"model_id\":\"my-model\",\"plugin\":\"1c\",\"format\":\"gguf\",\"source\":\"https://example/model.gguf\"}"

Storage

Файлы складываются в:

models/incoming/<job_id>/

Метаданные задания:

models/incoming/<job_id>/metadata.json

Журнал:

reports/model-ingest/jobs.jsonl

Promotion

После проверки размера, checksum, лицензии и runtime модель нужно вручную промоутить:

  1. Перенести файл из models/incoming/<job_id>/ в целевую папку models/....
  2. Создать или обновить registry/model-cards/<model_id>.yaml.
  3. Запустить:
python scripts/validate_model_cards.py
python scripts/build_model_index.py
python scripts/check_model_storage.py --warn-only

Пароли к NAS, Hugging Face токены и другие секреты не записываются в ingest job и не должны попадать в model card.