Model Preparation#
Live Video Captioning needs at least one Vision Language Model (VLM) in ov_models/. Object detection is optional and uses models in ov_detection_models/.
The provided helper uses the ephemeral model-download container flow from the Model Download project in Open Edge Platform. It starts a temporary container, downloads or converts the model, writes the files to this repository, and removes the container when finished. No separate model-download setup is required.
Prerequisites#
Docker is installed and running.
curlandpython3are available on the host.The commands are run from the
live-video-captioningdirectory.For gated Hugging Face models, set a token first:
export HUGGINGFACEHUB_API_TOKEN=<your-huggingface-token> # Optional: To download the model to a different path (for example, ~/edge-ai-suites/metro-ai-suite/live-video-analysis/live-video-captioning-rag for live-video-captioning-rag standalone deployment), export: export MODEL_PATH=~/edge-ai-suites/metro-ai-suite/live-video-analysis/live-video-captioning-rag
Usage#
Use the helper script with the following arguments:
./model_download_scripts/download_models.sh \
--model <huggingface-model-id> \
--type <vlm|vision|llm> \
--weight-format <int4|int8|fp16> \
--device <CPU|GPU>
Parameters:
--model: Hugging Face model identifier (for example,OpenGVLab/InternVL2-1B).--type: Model category. Usevlmfor Vision Language Models,visionfor object-detection models, orllmfor text-only LLMs.--weight-format: Precision/quantization format. Supported values areint4,int8, andfp16.--device: Target conversion device (for example,CPUorGPU, depending on host support).
Weight format options:
Format |
Memory use |
Accuracy |
When to use |
|---|---|---|---|
|
Lowest |
Lower |
Memory-constrained systems |
|
Medium |
Good |
Recommended default |
|
Highest |
Best |
Maximum accuracy, more RAM required |
Download a VLM model#
./model_download_scripts/download_models.sh \
--model OpenGVLab/InternVL2-1B \
--type vlm \
--weight-format int8
The model is prepared under ov_models/.
Supported weight formats are int4, int8, and fp16. The default is int8.
Optional: Download an Object-Detection Model#
Download a YOLO model only if you plan to enable the object-detection pipeline:
./model_download_scripts/download_models.sh --model yolov8s --type vision
The model is prepared under ov_detection_models/.
Then enable detection in .env:
ENABLE_DETECTION_PIPELINE=true
Optional: Change the Conversion Device Configuration#
For VLM conversion, set the target device:
./model_download_scripts/download_models.sh \
--model OpenGVLab/InternVL2-1B \
--type vlm \
--weight-format int8 \
--device CPU
Valid device values depend on the model-download container and host hardware. CPU is the safest default.
RAG and LLM models#
RAG is optional and not required for the base Live Video Captioning application. For LLM and RAG model setup, see RAG Model Download.
Troubleshooting#
If Docker cannot pull
intel/model-download:<TAG>, check theTAGvalue in.env.If a gated model fails with an authentication error, set
HUGGINGFACEHUB_API_TOKENand rerun the command.If a download is interrupted, rerun the same command. The ephemeral container is removed automatically when the helper exits.