Implementation:Open compass VLMEvalKit SmolVLM
| Field | Value |
|---|---|
| source | VLMEvalKit |
| domain | Vision, Model_Architecture |
Overview
VLM adapter for the SmolVLM model enabling benchmark evaluation in VLMEvalKit.
Description
SmolVLM inherits from BaseModel and wraps the SmolVLM model for use within the VLMEvalKit evaluation framework. It initializes the model and tokenizer/processor from a HuggingFace model path (default: HuggingFaceTB/SmolVLM-Instruct) and provides the generate_inner method for inference. Also includes SmolVLM2 adapter class for the SmolVLM2 model variant.
Usage
Register in vlmeval/config.py via supported_VLM and invoke through the standard evaluation pipeline.
Code Reference
- Source:
vlmeval/vlm/smolvlm.py, Lines: L1-869 - Import:
from vlmeval.vlm.smolvlm import SmolVLM
Signature:
class SmolVLM(BaseModel):
INSTALL_REQ = True
INTERLEAVE = True
def __init__(self, model_path='HuggingFaceTB/SmolVLM-Instruct', **kwargs): ...
def generate_inner(self, message, dataset=None): ...
I/O Contract
| Direction | Description |
|---|---|
| Inputs | message — list of dicts with type (text/image) and value; dataset — optional dataset name for custom prompting |
| Outputs | generate_inner() returns str (model response text) |
Usage Examples
from vlmeval.vlm.smolvlm import SmolVLM
model = SmolVLM(model_path='path/to/model')
response = model.generate_inner(message)