VLA 场景指南

简介

VLA(Vision-Language-Action)场景是一类特殊场景。在该类场景中,用户需要根据相机画面中的交通指示牌等视觉内容,识别文字指令,并向场景输出识别到的完整指令文本以及从中解析出的语义片段。

如何辨别 VLA 场景

需要提交什么

在每个子场景中,用户需要提交一次 metacar.VLAExtensionOutput,其结构如下:

  • ocr_text: 识别到的整句 OCR 指令文本(例如“100秒内去到B栋一单元门口”)。

  • time_phrase: 从指令中抽取的时间相关片段(例如“100秒内”)。

  • location_phrase: 从指令中抽取的地点相关片段(例如“B栋一单元门口”)。

  • action_phrase: 从指令中抽取的动作相关片段(例如“去到”)。

如何提交

使用 metacar.SceneAPI.set_vehicle_control() 发送车辆控制命令时,可将 metacar.VLAExtensionOutput 通过参数 vla_extension 传入:

from metacar import SceneAPI, VehicleControl, VLAExtensionOutput, VLATextOutput

api = SceneAPI()
api.connect()

for sim_car_msg, frames in api.main_loop():
    vc = VehicleControl(throttle=0.3)
    vla_payload = VLAExtensionOutput(
        text_info=VLATextOutput(
            ocr_text="100秒内去到B栋一单元门口",
            time_phrase="100秒内",
            location_phrase="B栋一单元门口",
            action_phrase="去到",
        )
    )
    api.set_vehicle_control(vc, vla_extension=vla_payload)

说明:每个子场景仅需要提交一次 vla_extension,同一子场景如多次提交,以最后一次提交为准。

相关模型

VLA 相关数据模型定义见: