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.

5 min readSume
All posts

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.

Outcome of the digit check on example cues (read 2026-10-05)
Source cueTranslated cueResultWhy
Only 12 left at $24Solo quedan 12 a $24PassSame digits: 12, 24
Only 12 left at $24Solo quedan a $24HoldThe 12 is missing
Buy 2 get 1 freeCompra dos y llévate uno gratisHoldNumbers 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

All Use cases posts

Written by Sume