Lake AI ServiceEmbodied IntelligenceSemantic AnnotationEmbodied Semantic Annotation
Copy page
Download PDF
Semantic Annotation
Embodied Semantic Annotation
Copy page
Download PDF
Embodied Semantic Annotation
The Embodied Semantic Annotation operator is designed for embodied data collection scenarios such as real robots, UMI, and human data. It identifies interactive objects during operations, annotates action descriptions, start and end times, and skill labels, and supports temporal annotation with candidate task descriptions.
Operator introduction
Operator ID: las_embodied_caption
Applicable scenarios
Interactive object recognition in real-robot, UMI, and human operation videos.
Generation of task descriptions, action segments, and skill labels for first-person operation videos.
Locating actual operations and time intervals in videos based on candidate task descriptions.
Key features
Interactive object recognition: Identifies main interactive objects and distinguishable instances, and annotates interaction time intervals.
Action temporal annotation: Splits continuous operations and generates task descriptions, action start and end times, action descriptions, and skill labels.
Candidate task-assisted annotation: Locates actual operations and time intervals in videos based on candidate task descriptions.
Frame extraction and resolution configuration: Supports configuring the frame extraction frame rate and video processing resolution level.
Segment interval analysis: Supports specifying the video analysis interval through start and end.
Video content caching: After the Responses API is enabled, cached content from the same video can be reused.
Supported tasks
LAS provides preset task templates for typical Embodied Semantic Annotation scenarios. You can directly use templates to quickly call the operator for corresponding scenarios. The supported preset task templates are as follows.
Note
When you do not use a preset task template, you can also provide prompts for custom semantic annotation tasks through the request parameter query. If both a custom task prompt and a preset task template are provided, the custom task prompt overrides the default template configuration.
Task template
Description
embodied_active_object_detection@v2
Interactive object recognition, applicable to horizontally stitched left-right dual-wrist videos
embodied_active_object_detection@v3
Interactive object recognition, supporting both horizontally stitched left-right dual-wrist videos and single-channel head-mounted videos
embodied_action_captioning@v2
First-person main-view action annotation, outputting the task description and action segments with skill labels
embodied_action_captioning_prior@v2
Performs temporal annotation with candidate task descriptions (task_context.prompt_context) and outputs actions and time intervals.
Note
When using this template, you must provide the JSON string serialized from the candidate task description array through task_context.prompt_context.
Increasing the frame extraction frame rate increases processing latency and Token consumption.
Input and output requirements
Input requirements
Item
Detailed requirements
Supported data modalities
Video
Text
Data modality: Video
Formats: mp4, mov, avi, mkv, flv, webm
Duration and size: no more than 3 hours and no more than 10 GB
Video source
Supports accessible HTTP/HTTPS addresses and Volcengine TOS addresses
Required information
Video address, ModelArk API Key, and model name
Input path requirements
Provide input data to the operator through the request parameter video_url. Currently, public URLs and TOS paths are supported.
Public URL: A publicly accessible video URL in http/https format.
TOS path: After uploading the data to be processed to a TOS Bucket under the same primary account and region as the current LAS service, you can provide a TOS path in the format tos://bucket_name/demo.
Output requirements
Item
Detailed requirements
Supported data modalities
Text
Returns structured results such as interactive objects, task descriptions, action segments, start and end times, and skill labels based on the task template
Output path: API response
After the operator finishes processing, the result is returned directly through the response parameters of the operator Poll API.
Billing description
When calling the LAS Embodied Semantic Annotation operator, the ModelArk model under your account is used directly. LAS does not charge additional operator processing fees. Model calls use the pay-as-you-go postpaid Token billing method of ModelArk online inference (standard). The currently supported models and list prices are as follows.
Supported model ID
Input length (thousand tokens)
Input (non-audio)
CNY/million tokens
Input (audio)
CNY/million tokens
Cache storage
CNY/million tokens/hour
Cache hit (non-audio)
CNY/million tokens
Cache hit (audio)
CNY/million tokens
Output
CNY/million tokens
doubao-seed-2-0-mini-260215
doubao-seed-2-0-mini-260428
[0, 32]
0.2
3.0
0.017
0.04
0.6
2.0
(32, 128]
0.4
6.0
0.017
0.08
1.2
4.0
(128, 256]
0.8
12.0
0.017
0.16
2.4
8.0
doubao-seed-2-0-lite-260215
doubao-seed-2-0-lite-260428
[0, 32]
0.6
9.0
0.017
0.12
1.8
3.6
(32, 128]
0.9
13.5
0.017
0.18
2.7
5.4
(128, 256]
1.8
27.0
0.017
0.36
5.4
10.8
doubao-seed-2-0-pro-260215
[0, 32]
3.2
-
0.017
0.64
-
16.0
(32, 128]
4.8
-
0.017
0.96
-
24.0
(128, 256]
9.6
-
0.017
1.92
-
48.0
doubao-seed-2-1-pro-260628
doubao-seed-2-1-pro-260915
[0, 1024]
6.0
-
0.017
1.2
-
30.0
doubao-seed-2-1-turbo-260628
[0, 256]
3.0
-
0.017
0.6
-
15.0
Note
Input tokens generated by the current operator's text and video visual content are billed at the "Input (non-audio)" unit price. The audio prices in the table are the complete pricing information for the corresponding ModelArk model.
The Seed 2.0 series is billed by segment based on the input length of a single request. Both input and output tokens use the unit price of the corresponding interval.
When video content caching is enabled, cache storage and cache hit tokens are billed at the corresponding unit prices in the table.
The preceding table shows the list prices for ModelArk online inference (standard). The actual purchasable product specifications and fees are subject to the actual order and bill. For the latest prices, see ModelArk model pricing.
Notes and prerequisites
Item
Notes and prerequisites
Enable LAS
If you are a new Volcengine user and have not enabled the LAS product before, you can enable LAS first. Enabling only the LAS product without using LAS billing features does not incur fees. For enabling instructions, see Preparation.
After enabling is complete, you can view the operator introduction documentation to learn about operator capabilities, getting started guides, and more. For details, see LAS intelligent data processing operators.
Fees
Before calling the operator, you need to understand the model call fees when using the operator. For details, see Large model call billing.
Authentication (API Key)
Before calling the operator, you need to generate the API Key for the operator call. We recommend configuring the API Key as an environment variable to call the operator more securely. For details, see Obtain and configure an API Key.
BaseURL
Before calling the operator, you need to learn the BaseURL for operator calls based on the region where your current LAS service is located. This is used to configure the value of the operator call path parameter.
For details, see Obtain the Base URL. The following examples are for reference only. Replace the path value with the one corresponding to your region during actual calls.
Rest API calls
Submit
API description
Call the las_embodied_caption operator to submit an Embodied Semantic Annotation task. After a successful submission, a task ID is returned. You can query the task status and result through Poll.
Accessible address of the video to be analyzed. HTTP/HTTPS and Volcengine TOS are supported. Up to 3 hours and 10 GB are supported. Supported formats are mp4, mov, avi, mkv, flv, and webm.
ModelArk inference endpoint. If it is not empty, it must correspond to the same model minor version as model_name. If omitted, the model default endpoint is used.
querystringOptionalExample value: Annotate the actions of picking up and placing items, and their start and end times
Custom prompt. Required when task_template is not passed. If explicitly passed, it overrides the template default prompt.
Task template in the format "template name@version number". If the version number is omitted, v1 is used by default. Supports templates for interactive object recognition, action temporal annotation, and candidate task-assisted annotation.
task_contexttask_contextOptional
Task template context.
prompt_contextstringOptionalExample value: Main interactive objects: white cylindrical trash can, plastic bottle
You can provide object information or a skill vocabulary during action annotation. When using embodied_action_captioning_prior@v2, you must pass the JSON string serialized from the candidate description string array, for example ["调整垃圾桶位置","拿起塑料瓶"].
startfloatOptionalExample value: 0.0
Analysis start time, in seconds. The default value is 0. The value range is [0, 视频时长], and the value must be less than end.
endfloatOptionalExample value: 106.9
Analysis end time, in seconds. If omitted, the video is analyzed until the end. The value must be greater than start.
fpsfloatOptionalExample value: 1.0
Frame extraction frame rate. The range is 1/60 to 10. The default is 1.0 when no template is used. Templates can provide different defaults. Explicit parameters take precedence.
Model reasoning intensity. Common values include minimal, low, medium, and high. The default is minimal when no template is used. Available levels depend on the model.
clip_contextstringOptionalExample value: medium
Single-segment context range. Supports medium and long. The default is medium.
Whether to enable the Responses API. The default is false. After it is enabled, video content can be cached. Subsequent requests can reuse the cache through previous_response_ids. The default cache validity period is 1 hour.
previous_response_idslist of stringOptionalExample value: ["cache_resp_test"]
Pass the previous response ID when reusing cached video content. This takes effect only when use_responses_api=true.
Query the status and result of an Embodied Semantic Annotation task based on the task ID. A task is successful only when both task_status=COMPLETED and business_code=0 are met.
Number of input tokens, including text, audio, and all other types.
completion_tokensintegerExample value: 1000
Number of tokens generated by the model.
audio_tokensintegerExample value: 0
Number of audio tokens in the input.
cached_tokensintegerExample value: 0
Number of hit tokens.
cached_store_tokensintegerExample value: 0
Number of tokens written to cache.
cached_audio_tokensintegerExample value: 0
Number of hit audio tokens.
total_tokensintegerExample value: 11000
Total number of tokens, which is prompt_tokens + completion_tokens.
video_durationfloatExample value: 106.9
Video duration, in seconds.
resolutionstringExample value: 854x480
Original video resolution, not the media_resolution level.
final_summarystring
JSON string of the annotation result. Interactive object recognition returns objects. Action temporal annotation returns task_description and segments. Candidate task-assisted annotation returns segments. The time unit is seconds.
response_idslist of stringExample value: ["cache_resp_test"]
Response IDs returned after the Responses API is enabled. They can be used to reuse the cache through previous_response_ids in subsequent Submit requests.