Proč se vyplatí uložit více čísel stránek a původních textových fragmentů v JSON?
Výsledek extrakce je pouze jeden `amount: 1200` a recenzent musí ještě projít celý dokument znovu. Uložení většího počtu čísel stránek a krátkých fragmentů původního textu je často užitečnější než přidání desetinného místa „důvěry“: umožňuje najít chyby a dobře zdokumentovat následné opravy.
– Hash obsahu souboru dokáže identifikovat odpovídající verzi, ale nezaručuje, že uživatel, který nahrál soubor, má oprávnění k souboru.
- Stejné množství se může objevit vícekrát. Když narazíte na více kandidátů, neměli byste vzít jen prvního.
Pokud váš výsledek extrakce obsahuje pouze amount: 1200, musí recenzent znovu projít celý dokument, aby potvrdil jeho zdroj. Ukládání dalších čísel stránek a krátkých textových úryvků je často užitečnější než přidávání dalšího desetinného místa „důvěry". Umožňuje lokalizovat chyby a dokumentovat každou opravu.
Tento článek je vhodný pro vývojáře a editory, kteří provádějí extrakci dokumentů, dvojjazyčné recenze nebo ověřování finančního pole. Kód v tomto článku je demonstrován pomocí syntetických vzorků a prošel kontrolou vzorků v izolovaném prostředí, ale to nepředstavuje záruku všech skutečných souborů nebo efektů produktu. Před zpracováním důležitých dokumentů si prosím uschovejte originály a zkontrolujte je podle hranic a přejímacích položek v textu.
Jak uložit více čísel stránek a fragmentů původního textu? Závěr jednou větou
Uložte více čísel stránek, krátké úryvky původního textu a hodnoty hash souborů, aby bylo možné každé pole zkontrolovat zpět na zdrojovou stránku.
| vaší situaci | Doporučené postupy | důvod |
|---|---|---|
| Pole mají pouze hodnoty a žádné zdroje | Uložte si čísla stránek a krátké části původního textu současně | Recenzent může umístění najít přímo, aniž by musel znovu číst celý dokument. |
| Je třeba potvrdit, které verzi souboru záznam odpovídá | Uložit hash obsahu souboru | Hash může identifikovat odpovídající verzi |
| Čísla stránek knihovny při analýze začínají od 0 | Převést na začátek od 1 na hranici a zaznamenané v protokolu | V souladu s ručně zobrazenými čísly stránek |
| Fragmenty mohou obsahovat citlivé informace | Udržujte pouze krátké věty související s oborem | Nekopírujte celou stránku do protokolů, vyhledávacích indexů nebo zpráv s upozorněním |
📊 Srovnání jádra
| srovnávací položka | Ukládejte pouze hodnoty polí (jako jeamount: 1200) | Uložte si čísla stránek a krátké textové úryvky |
|---|---|---|
| Chyba umístění | Je třeba si celý dokument přečíst znovu | Lze zmenšit na odpovídající stránku |
| Opravte záznam | Je těžké vysvětlit základ | U každé opravy je k dispozici ke kontrole úryvek původního textu |
Objekt důkazů by měl být schopen přivést lidi zpět k původnímu textu
Následující příklad používá čísla stránek začínající od 1. Pokud vaše knihovna analýzy začíná na 0, je třeba ji převést na hranicích a zaznamenat do protokolu.
Fragmenty uchovávají pouze krátké věty relevantní pro pole, čímž se zabrání kopírování celých stránek citlivých informací do protokolů, vyhledávacích indexů nebo zpráv s upozorněním.
Nejprve ověřte tvar a poté ověřte shodu.
from jsonschema import Draft202012Validator
schema = {
"type": "object", "required": ["value", "evidence"],
"additionalProperties": False,
"properties": {
"value": {"type": "string"},
"evidence": {"type": "object", "additionalProperties": False,
"required": ["page", "quote"],
"properties": {"page": {"type": "integer", "minimum": 1},
"quote": {"type": "string", "minLength": 1}}}
}
}
v = Draft202012Validator(schema)
pages = ["Invoice total: USD 1200."]
record = {"value": "1200", "evidence": {"page": 1, "quote": "USD 1200"}}
assert v.is_valid(record)
def quote_exists(r):
if not v.is_valid(r):
return False
e = r["evidence"]
return e["page"] <= len(pages) and e["quote"] in pages[e["page"] - 1]
assert quote_exists(record)
fake = {"value": "9999", "evidence": {"page": 1, "quote": "USD 9999"}}
assert v.is_valid(fake)
assert not quote_exists(fake)
assert not quote_exists({"value": "1", "evidence": {"page": 9, "quote": "x"}})
Tento syntetický příklad záměrně vytváří záznam s právní strukturou, ale důkazy neexistují. Ukazuje, že ověření schématu a porovnání zdrojů se nemohou navzájem nahradit: správná struktura neznamená, že důkazy skutečně existují. Struktura pole objektu může odkazovat na Struktura objektu schématu JSON.
Skutečné soubory PDF mohou mít rozdíly v zalomení slov, pomlčkách a mezerách. Shoda podřetězců je pouze minimální ukázkou a nelze ji přímo použít jako úplný algoritmus ověřování důkazů.
Důkazy musí být také svázány s verzí souboru
| Uložit položky | lze vyřešit | není zaručeno |
|---|---|---|
| Hash obsahu souboru | Identifikujte odpovídající verzi | Uživatel, který nahrál soubor, má oprávnění k souboru |
| Číslo stránky | Zúžit vyhledávání | Stránka není přeformátována |
| Původní textový fragment | Rychle zkontrolujte text | Sémantika pole musí být správná |
| Souřadnice a souřadnicové systémy | Cílová oblast stránky | Výsledky OCR jsou již přesné |
Původní text existuje nebo může být citován ze špatného umístění.
Stejná částka se může v dokumentu objevit vícekrát. I když fragment existuje, určete, zda se jedná o celkovou částku, částku daně nebo zůstatek za předchozí období.
Další přijetí lze zkontrolovat:
- Jsou označení polí konzistentní?
- Je formulář ve správném tvaru
- Zda se sousední kontext shoduje
Při setkání s více kandidáty byste si neměli vybrat pouze prvního, ale porovnat kontext jeden po druhém.
Dvojjazyční recenzenti nejvíce potřebují sledovatelnost
Pomocí tohoto typu zdrojového záznamu spolu s dvojjazyčnou kontrolou OmniDoc (produktový portál) mohou recenzenti přeskočit z čísla překladu zpět na zdrojovou stránku, aby potvrdili jeho význam.
Hodnota tohoto přístupu nespočívá v tom, aby výstup vypadal složitější, ale v tom, aby byla každá oprava jasně vysvětlena a zkrátila se doba přecházení tam a zpět k nalezení originálu.
🎯 Která metoda je pro vás vhodná?
Pokud potřebujete ručně zkontrolovat čísla v překladu
Upřednostněte ukládání čísel stránek a krátkých fragmentů původního textu a během kontroly můžete přejít přímo zpět na zdrojovou stránku pro potvrzení.
Pokud potřebujete vysledovat odpovídající verzi souboru
Uložte hash obsahu souboru a použijte jej ve spojení s číslem stránky k zúžení rozsahu hledání.
Pokud se vaše pole může v souboru objevit vícekrát
Kromě porovnávání fragmentů zkontrolujte také označení pole, tabulku a přilehlý kontext, neberte jen prvního kandidáta.
❓ Často kladené otázky (FAQ)
1. Může uložení více čísel stránek a původních textových fragmentů nahradit ověření schématu?
nemůže. Příklady v tomto článku ilustrují, že záznamy s právní strukturou stále nemusejí mít odpovídající důkazy a tyto dva je třeba ověřit samostatně.
2. Proč prostě nepřidat pole spolehlivosti?
Původní text se domnívá, že je často užitečnější uložit více čísel stránek a krátké části původního textu, protože to umožňuje lokalizovat chyby a dokumentovat následné opravy.
3. Mohu po uložení hashe potvrdit, že je obsah souboru správný?
Hash může identifikovat pouze odpovídající verzi. Nezaručuje, že uživatel, který nahrál soubor, má oprávnění k souboru, ani to neznamená, že sémantika pole musí být správná.
4. Jak dlouho by měl být klip uložen?
Udržujte pouze krátké věty relevantní pro dané pole a vyhněte se duplikování celých stránek citlivých informací do protokolů, vyhledávacích indexů nebo zpráv s upozorněním.
📝 Shrnutí
Uložení více čísel stránek, krátkých úryvků původního textu a hodnot hash souborů umožňuje zkontrolovat hodnoty polí zpět na zdrojovou stránku a zdokumentovat opravy. Před zpracováním důležitých dokumentů si prosím uschovejte originály a proveďte kontrolu.
Vyzkoušejte to hned: Nahrajte dokument a začněte překládat při zachování původního rozvržení


