Mengapa perlu menyimpan lebih banyak nomor halaman dan fragmen teks asli di JSON?
Hasil ekstraksi hanya satu `amount: 1200`, dan reviewer masih harus memeriksa seluruh dokumen lagi. Menyimpan lebih banyak nomor halaman dan potongan teks asli yang pendek seringkali lebih berguna daripada menambahkan tempat desimal untuk "kepercayaan": ini memungkinkan kesalahan ditemukan dan koreksi selanjutnya didokumentasikan dengan baik.
Jika hasil ekstraksi Anda hanya memiliki amount: 1200, reviewer masih perlu memeriksa seluruh dokumen lagi untuk memastikan sumbernya. Menyimpan nomor halaman tambahan dan cuplikan teks pendek seringkali lebih berguna daripada menambahkan tempat desimal lainnya untuk "kepercayaan". Hal ini memungkinkan kesalahan ditemukan dan setiap koreksi didokumentasikan.
Artikel ini cocok untuk pengembang dan editor yang melakukan ekstraksi dokumen, tinjauan bilingual, atau verifikasi bidang keuangan. Kode dalam artikel ini didemonstrasikan menggunakan sampel sintetis dan telah lulus pemeriksaan sampel di lingkungan yang terisolasi, namun ini tidak mewakili jaminan semua file atau efek produk yang sebenarnya. Sebelum memproses dokumen penting, harap simpan dokumen asli dan tinjau sesuai dengan batasan dan item penerimaan dalam teks.
Bagaimana cara menyimpan beberapa nomor halaman dan fragmen teks asli? Kesimpulan satu kalimat
Simpan beberapa nomor halaman, cuplikan teks asli pendek, dan hash file sehingga setiap bidang dapat diperiksa kembali ke halaman sumber.
| situasi Anda | Praktik yang direkomendasikan | alasan |
|---|---|---|
| Bidang hanya memiliki nilai dan tidak memiliki sumber | Simpan nomor halaman dan cuplikan teks asli pendek secara bersamaan | Reviewer dapat menemukan lokasi secara langsung tanpa harus membaca ulang keseluruhan dokumen. |
| Perlu mengonfirmasi versi file mana yang sesuai dengan catatan tersebut | Simpan hash konten file | Hash dapat mengidentifikasi versi yang sesuai |
| Parsing nomor halaman perpustakaan dimulai dari 0 | Konversikan untuk memulai dari 1 pada batas dan dicatat dalam protokol | Konsisten dengan nomor halaman yang dilihat secara manual |
| Fragmen mungkin berisi informasi sensitif | Hanya simpan kalimat pendek yang berhubungan dengan bidang tersebut | Hindari menyalin seluruh halaman ke dalam log, indeks pencarian, atau pesan notifikasi |
📊 Perbandingan inti
| barang perbandingan | Hanya simpan nilai bidang (seperti amount: 1200) | Simpan nomor halaman dan cuplikan teks pendek |
|---|---|---|
| Kesalahan posisi | Perlu membaca seluruh dokumen lagi | Dapat direduksi ke halaman terkait |
| Perbaiki catatannya | Sulit untuk menjelaskan dasarnya | Setiap koreksi memiliki cuplikan teks asli yang tersedia untuk ditinjau |
Objek bukti harus mampu mengarahkan orang kembali ke teks aslinya
Contoh berikut menggunakan nomor halaman yang dimulai dari 1. Jika pustaka penguraian Anda dimulai dari 0, pustaka tersebut perlu dikonversi pada batas dan dicatat dalam protokol.
Fragmen hanya menyimpan kalimat pendek yang relevan dengan suatu bidang, menghindari penyalinan seluruh halaman informasi sensitif ke dalam log, indeks pencarian, atau pesan pemberitahuan.
Periksa bentuk terlebih dahulu, lalu periksa korespondensinya
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"}})
Contoh sintetis ini secara sengaja membangun catatan yang secara struktural sah namun tanpa bukti. Ini menunjukkan bahwa validasi skema dan pencocokan sumber tidak dapat saling menggantikan: memiliki struktur yang benar tidak berarti bukti benar-benar ada. Struktur medan dari sebuah objek dapat direferensikan dalam Struktur objek Skema JSON.
PDF nyata mungkin memiliki perbedaan segmentasi kata, ligatur, dan ruang; pencocokan substring hanyalah demonstrasi minimal dan tidak dapat digunakan langsung sebagai algoritma verifikasi bukti lengkap.
Bukti juga harus terikat pada versi file
| Item yang akan disimpan | Masalah ini bisa diselesaikan | Tidak ada jaminan |
|---|---|---|
| Hash konten file | Identifikasi versi yang sesuai | Pengunggah memiliki izin file |
| Nomor halaman | Sempit cakupan pencarian Anda | Halaman tidak diatur ulang |
| Cuplikan teks asli | Verifikasi teks cepat | Semantik bidang harus benar |
| Koordinat dan sistem koordinat | Temukan area halaman | Hasil OCR telah akurat |
Teks aslinya ada, tetapi mungkin juga dikutip di tempat yang salah
Jumlah yang sama dapat muncul beberapa kali dalam satu dokumen. Bahkan jika fragmen itu ada, Anda perlu menentukan apakah itu total, pajak, atau saldo periode sebelumnya.
Penerimaan lebih lanjut dapat diperiksa:
- Apakah tag field konsisten
- Periksa apakah tabel sudah benar
- Apakah konteks yang berdekatan cocok
Saat bertemu dengan beberapa kandidat, jangan hanya memilih yang pertama, tetapi bandingkan konteksnya satu per satu.
Proofreading dwibahasa membutuhkan keterlacakan paling efektif
Dengan menggunakan catatan sumber ini bersama dengan pemeriksaan bilingual OmniDoc (Entri Produk), peninjau dapat melompat dari angka terjemahan kembali ke halaman sumber untuk mengonfirmasi maknanya.
Nilai pendekatan ini bukan untuk membuat hasil kerja terlihat lebih rumit, melainkan untuk menjelaskan setiap koreksi dengan jelas, sehingga mengurangi waktu yang dihabiskan untuk mencari yang asli.
🎯 Metode mana yang cocok untukmu?
Jika Anda membutuhkan proofreading manual angka-angka dalam terjemahan
Prioritas diberikan pada penyimpanan nomor halaman dan klip teks asli pendek; selama proofreading, Anda dapat langsung kembali ke halaman sumber untuk konfirmasi.
Jika Anda membutuhkan versi file yang sesuai dengan catatan keterlacakan
Simpan hash konten file dan gunakan bersama dengan nomor halaman untuk mempersempit rentang pencarian.
Jika kolom Anda mungkin muncul beberapa kali dalam file
Selain membandingkan klip, Anda juga perlu memeriksa tag bidang, tabel di mana mereka berada, dan konteks di sekitarnya—jangan hanya memilih kandidat pertama.
❓ Pertanyaan yang Sering Diajukan (FAQ)
1. Apakah menyimpan nomor halaman dan klip teks asli dapat menggantikan validasi Schema?
Tidak. Contoh dalam artikel ini menunjukkan bahwa catatan yang secara struktural valid mungkin masih belum memiliki bukti yang sesuai, dan keduanya perlu diperiksa secara terpisah.
2. Kenapa tidak tambahkan saja medan kepercayaan diri?
Teks asli percaya bahwa menyimpan nomor halaman dan klip teks asli pendek seringkali lebih berguna, karena memungkinkan kesalahan dideteksi dan memberikan bukti untuk koreksi selanjutnya.
3. Setelah menyimpan hash, bisakah Anda memastikan isi file sudah benar?
Hash hanya dapat mengenali versi yang sesuai; mereka tidak dapat menjamin pengunggah memiliki izin file, juga tidak dapat menjamin semantik kolom benar.
4. Berapa lama sebaiknya sebuah fragmen disimpan?
Simpan hanya kalimat pendek yang berkaitan dengan kolom, hindari menyalin informasi sensitif dari seluruh halaman ke dalam log, indeks pencarian, atau pesan notifikasi.
📝 Ringkasan
Simpan nomor halaman, potongan teks asli singkat, dan hash file untuk memungkinkan nilai field diperiksa di halaman sumber, serta menyediakan koreksi berbasis bukti. Sebelum menangani dokumen penting, harap simpan dokumen asli dan selesaikan peninjauan.
Rasakan sekarang: Unggah dokumen Anda untuk mulai menerjemahkan, mempertahankan format asli


