Check prices survive translation before burning live-selling captions
A live-selling caption with a wrong price costs a $0.20 re-burn and a customer. Compare the digits of each source and translated cue with a ten-line check.

Before you burn translated live-selling captions, compare the digit groups of each source cue with its translation: if the multiset of numbers differs, hold the cue for review. It catches a dropped price or a changed quantity, and it costs nothing, while each re-burn on Sume is another $0.20 caption job.
Bilibili's Index-Translate README says the models support translation instructions such as terminology and formatting preservation, but a model is not a guarantee. Treat the check as a gate, read 2026-10-05.
What the check does and does not prove
It compares numbers, not meaning.
| Source cue | Translated cue | Result | Why |
|---|---|---|---|
| Only 12 left at $24 | Solo quedan 12 a $24 | Pass | Same digits: 12, 24 |
| Only 12 left at $24 | Solo quedan a $24 | Hold | The 12 is missing |
| Buy 2 get 1 free | Compra dos y llévate uno gratis | Hold | Numbers written as words; a person decides |
The check
It strips thousands separators and decimal marks only for comparison, so 1,299 and 1.299 are both 1299. Some languages may write digits differently, so a hold is a flag for a person, not proof of an error.
import re
from collections import Counter
def digits(text):
return Counter(re.sub(r"(?<=\d)[.,](?=\d)", "", t) for t in re.findall(r"\d[\d.,]*", text))
def needs_review(source, translated):
return digits(source) != digits(translated)
pairs = [("Only 12 left at $24", "Solo quedan 12 a $24"),
("Only 12 left at $24", "Solo quedan a $24"),
("Total $1,299", "Total 1.299 $")]
for src, out in pairs:
print("HOLD" if needs_review(src, out) else "ok", "|", out)
Where this sits in the pipeline
Run it after translation and before the caption job. A held cue goes to a person, and only passed cues become authored cues for a Sume caption job. The Video captions docs describe the cue fields.
Sources
Related posts
More in Use cases
- Child's drawing to a picture-book page with GPT Image 2.5
Turn a child's drawing into a polished picture-book page: host the scan at a public HTTPS URL, pass it as a reference, and ask for 4:3. Code and Sume prices.
- Choking hazard warning in a holiday toy ad: match the product label
CPSC says internet ads for toys that need a choking-hazard label must use the same warning (16 CFR 1500.20). Burn the label text as a cue and assert it matches.
- Christmas shipping cutoff videos: put the last order date in input
A last-order-date promo is wrong the day the date moves. Keep the cutoff in each bulk item's input, derive it from one config, and re-run only what changed.
- Coffee ad in one take, pour to sip: Seedance 2.5 prompt and price
A 20-second one-take coffee ad on Seedance 2.5: pour, steam, hand, sip. Prompt wording, why one take suits liquids, and the Sume price at 720p and 1080p.
Written by Sume