The LAS speech-to-text (Doubao-Seed-2.0-lite) enhanced operator provides multimodal refinement capabilities on top of the basic ASR recognition results: it first completes input download, audio extraction, duration detection, and basic ASR recognition. When the routing, language, and basic ASR results meet the refinement conditions, audio slices, basic ASR recognition drafts, and reference hotwords extracted from the hotword context are sent to the multimodal model to correct proper nouns, numbers, punctuation, and some recognition errors. If the model determines that there are missed recognitions, it attempts to fill in missing content.
Operator ID: las_asr_seed-2-0-lite
Region | region id | Base URL |
|---|---|---|
North China 2 (Beijing) | cn-beijing | https://operator.las.cn-beijing.volcesbytepluses.com |
East China 2 (Shanghai) | cn-shanghai | https://operator.las.cn-shanghai.volces.com |
South China 1 (Guangzhou) | cn-guangzhou | https://operator.las.cn-guangzhou.volces.com |
tip
It is recommended to explicitly pass audio.language. If the language is not passed, the code defaults to using the SeedASR resource. During the refinement phase, the explicit language is prioritized, followed by lid_lang returned by SeedASR. If still unknown, it defaults to zh for refinement. If the language is not supported by the refinement model, refinement is skipped and only the basic recognition result is returned.
Language | Refinement supported |
|---|---|
Arabic (ar) | ✓ |
German (de) | ✓ |
Russian (ru) | ✓ |
French (fr) | ✓ |
Filipino (fil) | ✓ |
Korean (ko) | ✓ |
Dutch (nl) | ✓ |
Malay (ms) | ✓ |
Portuguese (pt) | ✓ |
Japanese (ja) | ✓ |
Thai (th) | ✓ |
Turkish (tr) | ✓ |
Spanish (es) | ✓ |
English (en) | ✓ |
Indonesian (id) | ✓ |
Italian (it) | ✓ |
Vietnamese (vi) | ✓ |
Cantonese (yue) | ✓ |
Chinese (zh) | ✓ |
Sub-item | Performance impact description |
|---|---|
Maximum RPM | 600 |
Maximum concurrency | 10 |
Latency |
|
Category | Detailed description |
|---|---|
Supported input data modalities |
|
Input formats: audio/video |
|
Input path requirements | Provide input data to the operator via the request parameter
|
Category | Detailed description |
|---|---|
Output data modality |
|
Output path: returned by API | After the operator finishes processing the input audio file, the converted text will be returned directly through the response parameters of the operator's Poll interface. |
Billing standards
Breakdown | Billing standards description |
|---|---|
Billing items | When using the current operator, the refinement model is used by default to refine the speech recognition results. Therefore, the billing items include
The final cost is the sum of the two fees. |
Billing type | Usage-based billing, with charges billed hourly based on actual usage. |
Unit price | Depends on the model used. |
Billing details
Billing formula: Total cost = speech recognition fee + refinement fee = (speech recognition unit price * audio duration) + (refinement tier unit price * model usage)
Speech recognition unit price:
Speech recognition model | Unit price |
|---|---|
Seed-ASR 2.0 Enhanced | 1.6 CNY/hour |
Refinement unit price:
Refinement model | Model input length | Cache storage | Text input | Audio input | Text cache hit | Audio cache hit | Output | Unit |
|---|---|---|---|---|---|---|---|---|
Seed-2.0 Lite | [0, 32] | 0.017 | 0.6 | 9 | 0.12 | 1.8 | 3.6 | CNY/million tokens |
(32, 128] | 0.017 | 0.9 | 13.5 | 0.18 | 2.7 | 5.4 | CNY/million tokens | |
(128, 256] | 0.017 | 1.8 | 27 | 0.36 | 5.4 | 10.8 | CNY/million tokens |
Billing example
Example scenario: A 3-minute video is input, and the current operator is used to convert speech to text. The processing result displays the following model usage.
"token_usages": [ { "task_info": "refine_chunk_001", "model_name": "doubao-seed-2-0-lite-260428", "token_usage": { "prompt_tokens": 2015, "completion_tokens": 6429, "total_tokens": 8444, "cached_tokens": 0, "audio_tokens": 814, "audio_cached_tokens": 0, "reasoning_tokens": 5599 } }
Cost details:
Speech recognition fee = 1.6 CNY/hour * (3/60) hours = 0.08 CNYprompt_tokens): 2015, within the [0, 32] thousand token tier.prompt_tokens - audio_tokens): 2015 - 814 = 1198.audio_tokens): 814.completion_tokens): 6429.Refinement cost = text input cost + audio input cost + output cost = 0.6 CNY/million tokens * (1198/1000,000) +9 CNY/million tokens * (814/1000,000) + 3.6 CNY/million tokens * (6429/1000,000) ≈ 0.0007 + 6.6332 + 0.231 ≈ 6.8649 CNY
Total cost = speech recognition fee + post-editing fee = 0.08 CNY + 6.8649 CNY = 6.9449 CNY
Details | Caution and prerequisites |
|---|---|
Costs | Before calling an operator, you need to understand the model invocation costs associated with using the operator. For details, see Large model invocation billing. |
Authentication (API Key) | Before calling an operator, you need to generate an API Key for operator invocation. It is recommended to configure the API Key as an environment variable to ensure safer operator calls. For details, see Obtain and configure API Key. |
BaseURL | Before calling an operator, you need to determine the BaseURL for operator invocation based on the region where your current LAS service is deployed. This is used to configure the path parameter values for operator calls. |
LAS provides you with the capability for an "online experience" and offers a certain amount of free trial quota. No configuration is required to experience the data processing results of the LAS operator online.
warning
The current operator's online experience allows you to transcribe up to 5 minutes of audio files for free. Any excess will be billed according to the operator's billing metrics.
After logging in and entering the LAS console LAS console, locate the current operator card, hover the mouse over the operator card, and click the "online experience" button.
The enhanced version of the speech-to-text (Doubao-Seed-2.0-lite) operator is an asynchronous interface, with the process divided into two stages: submitting a task and querying results. You need to first create a speech recognition task, and then query the recognition result using the task ID.
Submit Task interface to obtain the task's task_id, and then use the Query Result interface to obtain the running status of the corresponding task (task_id) and retrieve the operator's processing result.task_id is valid for 3 days. After 3 days, you will not be able to use this task_id to obtain the operator's processing result.Submit the audio link and obtain the task ID assigned by the server. This operator enables Doubao-Seed-2.0-lite multimodal refinement by default, and always uses the seedasr resource at the underlying layer.
Parameter | Type | Required | Example value | Description |
|---|---|---|---|---|
operator_id | string | Yes | las_asr_seed-2-0-lite | Operator ID |
operator_version | string | Yes | v1 | Operator version |
data | SpeechRecognition | Yes | Request data |
Parameter | Type | Sample value | Description |
|---|---|---|---|
metadata | Metadata | Request metadata | |
task_id | string | The task ID in asynchronous mode. | |
task_status | string | Task status in asynchronous mode. | |
business_code | string | Business code | |
error_msg | string | If an exception occurs, detailed exception information will be returned. | |
request_id | string | Request ID (requestid) |
Request example
curl --location "https://operator.las.ap-southeast-1.volces.com/api/v1/submit" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data ' { "operator_id": "las_asr_seed-2-0-lite", "operator_version": "v1", "data": { "audio": { "url": "https://${LAS_TOS_BUCKET}.tos-${LAS_REGION}.volces.com/operator_cards_serving/public/${LAS_ENVIRONMENT}/las_asr/badaling.wav", "language": "zh", "format": "wav" }, "request": { "enable_punc": true, "enable_speaker_info": true, "corpus": { "context": "{\"hotwords\":[{\"word\":\"火山引擎\"}]}" } } } }'
Response example
{ "metadata": { "task_id": "xxxxx123ef24ea40546c", "task_status": "PENDING", "business_code": "0", "error_msg": "", "request_id": "494022a8a0fc3eadb758cf8b0e8b20ef" } }
HttpStatusCode | Error code | Error message | Description |
|---|---|---|---|
400 | Parameter.Invalid | The parameter is invalid. | The parameter is invalid. |
401 | Authorization.Missing | Missing Authorization. | Missing authorization. |
401 | ApiKey.Invalid | The api key is invalid. | The API is invalid. |
429 | Server.Busy | Server is Busy, please try again later. | The server is busy and rate-limited. |
500 | Server.InternalError | Depends on the specific exception | Business exception |
Query the speech transcription and refinement results using the task ID.
Name | Type | Required or optional | Example value | Description |
|---|---|---|---|---|
operator_id | string | is | las_asr_seed-2-0-lite | Operator ID |
operator_version | string | is | v1 | Operator version |
task_id | string | is | Asynchronous task ID |
Parameter | Type | Example value | Description |
|---|---|---|---|
metadata | Metadata | Request metadata. The asynchronous task ID is in the task_id field. | |
data | AudioResponse | Returned audio recognition and refinement results. |
Request example
curl --location "https://operator.las.ap-southeast-1.volces.com/api/v1/poll" \ --header "Content-Type: application/json" \ --header "Authorization: Bearer $LAS_API_KEY" \ --data ' { "operator_id": "las_asr_seed-2-0-lite", "operator_version": "v1", "task_id": "xxxxx123ef24ea40546c" }'
Response example
{ "metadata": { "task_id": "xxxxx123ef24ea40546c", "task_status": "COMPLETED", "submit_time": "2026-07-21T16:04:06+08:00", "end_time": "2026-07-21T16:04:06+08:00", "business_code": "0", "error_msg": "", "request_id": "d204c21f5c7c8f8cfeb85d211b9c20ac" }, "data": { "audio_info": { "duration": 3575, "language": "zh" }, "result": { "text": "参观八达岭长城。", "utterances": [ { "additions": { "speaker": "1" }, "end_time": 2320, "start_time": 640, "text": "参观八达岭长城。" } ], "segments": [] }, "metrics": [ { "name": "DURATION_MS", "value": 3575 } ], "token_usages": [ { "task_info": "refine_chunk_001", "model_name": "doubao-seed-2-0-lite-260428", "token_usage": { "prompt_tokens": 1200, "completion_tokens": 80, "total_tokens": 1280, "cached_tokens": 0, "audio_tokens": 64, "audio_cached_tokens": 0, "reasoning_tokens": 30 } } ], "refine_info": { "mode": "on", "enabled": true, "status": "SUCCESS", "model_name": "doubao-seed-2-0-lite-260428", "strategy": "utterance_dynamic_chunk", "chunk_count": 1, "warnings": [] }, "resource": "seedasr" } }
HttpStatusCode | Error code | Error message | Description |
|---|---|---|---|
400 | Parameter.Invalid | The parameter is invalid. | The parameter is invalid. |
401 | Authorization.Missing | Missing Authorization. | Missing authorization. |
401 | ApiKey.Invalid | The api key is invalid. | The API is invalid. |
429 | Server.Busy | Server is Busy, please try again later. | The server is busy and rate-limited. |
500 | Server.InternalError | Depends on the specific exception | Business exception |