Pengekstrak kustom dengan AI generatif

Pelatihan dan ekstraksi AI generatif memungkinkan Anda:

  • Gunakan teknologi zero-shot dan few-shot untuk mendapatkan model berperforma tinggi dengan sedikit atau tanpa data pelatihan menggunakan model dasar.
  • Gunakan penyesuaian untuk lebih meningkatkan akurasi saat Anda memberikan lebih banyak data pelatihan.

Metode pelatihan AI generatif

Metode pelatihan yang Anda pilih bergantung pada jumlah dokumen yang Anda miliki dan jumlah upaya yang tersedia untuk melatih model Anda. Ada tiga cara untuk melatih model AI generatif:

Metode pelatihan Zero-shot Few-shot Fine tuning
Akurasi Sedang Sedang-tinggi Tinggi
Upaya Rendah Rendah Sedang
Jumlah dokumen pelatihan yang direkomendasikan 0 5 hingga 10 10 hingga 50+

Versi model ekstraktor kustom

Model berikut tersedia untuk ekstraktor kustom. Untuk mengubah versi model, lihat Mengelola versi pemroses.

Versi 1.0 dan 1.3 mendukung skor keyakinan, sedangkan versi 1.1 dan 1.2 tidak.

Versi model Deskripsi Stabil Pemrosesan ML di AS/Uni Eropa Penyesuaian di Amerika Serikat/Uni Eropa Tanggal rilis
pretrained-foundation-model-v1.0-2023-08-22

Calon siap produksi yang dikhususkan untuk kasus penggunaan dokumen yang didukung oleh model visi khusus dan model dasar.

Ya Tidak Khusus Amerika Serikat (GA) 9 Januari 2024
pretrained-foundation-model-v1.1-2024-03-12

Calon rilis yang didukung oleh LLM Gemini 1.0 Pro dan teknologi yang baru dikembangkan, termasuk model bahasa dan visi khusus.

Versi ini dan yang lebih baru menyertakan fitur OCR lanjutan seperti deteksi kotak centang. Direkomendasikan untuk menggunakan batas token yang ditingkatkan atau bereksperimen dengan model yang lebih baru.

Tidak Ya AS, Uni Eropa (Pratinjau) 3 Mei 2024
pretrained-foundation-model-v1.2-2024-05-10

Calon yang siap produksi yang didukung oleh LLM Gemini 1.5 Pro dan teknologi yang baru dikembangkan, termasuk model bahasa dan visi khusus.

Direkomendasikan untuk kualitas terbaik, menggunakan batas token terbesar yang didukung, menggunakan kualitas terbaik dalam mengidentifikasi entitas, atau bereksperimen dengan model yang lebih baru.

Ya Ya AS, Uni Eropa (Pratinjau) 27 Mei 2024
pretrained-foundation-model-v1.3-2024-08-31 Calon yang siap produksi dan didukung oleh LLM Gemini 1.5 Flash. Direkomendasikan bagi pengguna yang menginginkan latensi terendah. Ya Ya AS, Uni Eropa (Pratinjau) 23 Agustus 2024

Untuk mengubah versi pemroses di project Anda, tinjau Mengelola versi pemroses.

Sebelum memulai

Jika belum melakukannya, aktifkan penagihan dan Document AI API.

Membuat dan mengevaluasi model AI generatif

  1. Buat pemroses dan tentukan kolom yang ingin diekstrak dengan mengikuti praktik terbaik, yang penting karena memengaruhi kualitas ekstraksi.

    • Buka Workbench > Custom extractor > Create processor > Assign a name.

    processor-version-genai-1

    • Buka Mulai > Buat kolom baru.

    processor-version-genai-2

  2. Mengimpor dokumen

    • Impor dokumen dengan pemberian label otomatis dan tetapkan dokumen ke set pelatihan dan pengujian.
    • Untuk zero-shot, hanya skema yang diperlukan. Untuk mengevaluasi akurasi model, hanya diperlukan set pengujian.
    • Untuk few-shot, sebaiknya gunakan lima dokumen pelatihan.
    • Jumlah dokumen pengujian yang diperlukan bergantung pada kasus penggunaan. Secara umum, semakin banyak dokumen pengujian, semakin baik.
    • Konfirmasi atau edit label dalam dokumen.
  3. Melatih model:

    • Pilih Build, lalu Create new version.
    • Masukkan nama, lalu pilih Buat.

    processor-version-genai-12

  1. Evaluasi:

    • Buka Evaluasi & uji, pilih versi yang baru saja Anda latih, lalu pilih Lihat evaluasi lengkap.

    processor-version-genai-13

    • Sekarang Anda akan melihat metrik seperti f1, presisi, dan recall untuk seluruh dokumen dan setiap kolom.
    • Tentukan apakah performa memenuhi sasaran produksi Anda. Jika tidak, evaluasi ulang set pelatihan dan pengujian.
  2. Menetapkan versi baru sebagai default:

    • Buka Kelola versi.
    • Pilih untuk meluaskan opsi, lalu pilih Tetapkan sebagai default.

    processor-version-genai-14

    Model Anda kini telah di-deploy. Dokumen yang dikirim ke pemroses ini menggunakan versi kustom Anda. Anda dapat mengevaluasi performa model untuk memeriksa apakah model memerlukan pelatihan lebih lanjut.

Referensi evaluasi

Mesin evaluasi dapat melakukan pencocokan persis atau pencocokan fuzzy. Untuk kecocokan persis, nilai yang diekstrak harus sama persis dengan kebenaran dasar atau dihitung sebagai tidak cocok.

Ekstraksi pencocokan fuzzy yang memiliki sedikit perbedaan seperti perbedaan kapitalisasi masih dihitung sebagai kecocokan. Hal ini dapat diubah di layar Evaluasi.

processor-version-genai-15

Fine tuning

Dengan penyesuaian, Anda menggunakan ratusan atau ribuan dokumen untuk pelatihan.

  1. Buat pemroses dan tentukan kolom yang ingin diekstrak dengan mengikuti praktik terbaik, yang penting karena memengaruhi kualitas ekstraksi.

  2. Mengimpor dokumen dengan pemberian label otomatis, dan menetapkan dokumen ke set pelatihan dan pengujian.

  3. Konfirmasi atau edit label dalam dokumen.

  4. Melatih model.

    • Pilih tab Build, lalu pilih Create New Version.
    • Coba parameter atau nilai pelatihan default yang disediakan. Jika hasilnya tidak memuaskan, bereksperimenlah dengan opsi lanjutan berikut:

    • Langkah pelatihan (antara 100 dan 400): Mengontrol seberapa sering bobot dioptimalkan pada batch data selama penyesuaian.

      • Terlalu rendah menunjukkan risiko bahwa pelatihan berakhir sebelum konvergensi (under-fitting).
      • Terlalu tinggi berarti model mungkin melihat batch data yang sama beberapa kali selama pelatihan, yang dapat menyebabkan overfitting.
      • Lebih sedikit langkah akan menghasilkan waktu pelatihan yang lebih cepat. Jumlah yang lebih tinggi dapat membantu dokumen dengan sedikit variasi template (dan jumlah yang lebih rendah untuk dokumen dengan lebih banyak variasi).
    • Pengganda kecepatan pembelajaran (antara 0,1 dan 10): Mengontrol seberapa cepat parameter model dioptimalkan pada data pelatihan. Ini kira-kira sesuai dengan ukuran setiap langkah pelatihan.

      • Rasio yang rendah berarti perubahan kecil pada bobot model pada setiap langkah pelatihan. Jika terlalu rendah, model mungkin tidak akan berkonvergensi ke solusi yang stabil.
      • Rasio yang tinggi menunjukkan perubahan besar, dan terlalu tinggi dapat berarti model melampaui solusi optimal dan beralih ke solusi yang kurang optimal.
      • Waktu pelatihan tidak terpengaruh oleh pilihan kecepatan belajar.
    • Beri nama, pilih versi prosesor dasar yang diperlukan, lalu pilih Buat.

    processor-version-genai-21

  5. Evaluasi: Buka Evaluasi & uji, lalu pilih versi yang baru saja Anda latih dan pilih Lihat evaluasi lengkap.

    processor-version-genai-13

    • Sekarang Anda akan melihat metrik seperti f1, presisi, dan recall untuk seluruh dokumen dan setiap kolom.
    • Tentukan apakah performa memenuhi sasaran produksi Anda. Jika tidak, dokumen pelatihan lebih lanjut mungkin diperlukan.
  6. Tetapkan versi baru sebagai default:

    • Buka Kelola versi.
    • Pilih untuk meluaskan opsi, lalu pilih Tetapkan sebagai default.

    processor-version-genai-14

    Model Anda kini di-deploy dan dokumen yang dikirim ke pemroses ini kini menggunakan versi kustom Anda. Anda ingin mengevaluasi performa model untuk memeriksa apakah model memerlukan pelatihan lebih lanjut.

Pelabelan otomatis dengan model dasar

Model dasar dapat mengekstrak kolom secara akurat untuk berbagai jenis dokumen, tetapi Anda juga dapat memberikan data pelatihan tambahan untuk meningkatkan akurasi model untuk struktur dokumen tertentu.

Document AI menggunakan nama label yang Anda tentukan dan anotasi sebelumnya untuk mempercepat dan mempermudah pemberian label pada dokumen dalam skala besar dengan pelabelan otomatis.

  1. Setelah membuat pemroses kustom, buka tab Mulai.
  2. Pilih Buat Kolom Baru.
  3. Beri label nama yang deskriptif dan berbeda. Hal ini akan meningkatkan akurasi dan performa model dasar.

    processor-version-genai-17

  4. Untuk akurasi dan performa ekstraksi, tambahkan deskripsi (seperti konteks, insight, dan pengetahuan sebelumnya yang ditambahkan untuk setiap entitas) untuk jenis entitas yang harus diambil.

processor-version-genai-23

  1. Buka tab Build, lalu pilih Import Documents.

    processor-version-genai-18

  2. Pilih jalur dokumen dan set tempat dokumen akan diimpor. Centang opsi pemberian label otomatis dan pilih model dasar.

  3. Di tab Build, pilih Manage Dataset.

  4. Saat Anda melihat dokumen yang diimpor, pilih salah satunya.

    processor-version-genai-19

Prediksi dari model kini ditampilkan dengan warna ungu.

  1. Tinjau setiap label yang diprediksi oleh model, dan pastikan label tersebut sudah benar.
  2. Jika ada kolom yang tidak ada, tambahkan juga.

    processor-version-genai-20

  3. Setelah dokumen ditinjau, pilih Tandai sebagai Dilabeli. Dokumen kini siap digunakan oleh model.

  4. Pastikan dokumen berada dalam set pengujian atau pelatihan.

Tingkat bertingkat tiga

Pengekstrak Kustom kini menyediakan tiga tingkat tingkatan. Fitur ini memberikan ekstraksi yang lebih baik untuk tabel yang kompleks.

Anda dapat menentukan jenis model menggunakan panggilan API berikut:

Responsnya adalah ProcessorVersion, yang berisi kolom modelType di pratinjau v1beta3.

Prosedur dan contoh

Kita menggunakan contoh ini:

processor-version-genai-3

  1. Pilih Mulai, lalu buat kolom:

    • Buat tingkat teratas.
    • Dalam contoh ini, officer_appointments digunakan.
    • Pilih Ini adalah label induk.
    • Pilih Kejadian: Optional multiple.

    processor-version-genai-4 processor-version-genai-5 processor-version-genai-6

  2. Pilih Tambahkan kolom turunan. Label tingkat kedua kini dapat dibuat:

    • Untuk label tingkat ini, buat officer.
    • Pilih Ini adalah label induk.
    • Pilih Kejadian: Optional multiple.

    processor-version-genai-7 processor-version-genai-8

  3. Pilih Tambahkan kolom turunan dari officer tingkat kedua. Buat label turunan untuk tingkat ketiga dari tingkat bertingkat. processor-version-genai-9

  4. Setelah skema ditetapkan, Anda bisa mendapatkan prediksi dari dokumen dengan tiga tingkat tingkatan menggunakan pelabelan otomatis.

    processor-version-genai-10 processor-version-genai-11

Konfigurasi set data

Set data dokumen diperlukan untuk melatih, melakukan up-train, atau mengevaluasi versi pemroses. Pemroses Document AI belajar dari contoh, sama seperti manusia. Set data mendorong stabilitas prosesor dalam hal performa.

Set data pelatihan

Untuk meningkatkan model dan akurasinya, latih set data pada dokumen Anda. Model ini terdiri dari dokumen dengan kebenaran dasar.
  • Untuk penyesuaian, Anda memerlukan minimal 10 dokumen untuk melatih model baru dengan versi pretrained-foundation-model-v1.0-2023-08-22, 16 untuk versi pretrained-foundation-model-v1.1-2024-03-12, dan 1 dokumen untuk pretrained-foundation-model-v1.2-2024-05-10 dan pretrained-foundation-model-v1.3-2024-08-31.
  • Untuk few-shot, lima dokumen direkomendasikan.
  • Untuk zero-shot, hanya skema yang diperlukan.

Set data pengujian

Set data pengujian adalah yang digunakan model untuk menghasilkan skor F1 (akurasi). Set data ini terdiri dari dokumen dengan kebenaran dasar. Untuk melihat seberapa sering model benar, kebenaran dasar digunakan untuk membandingkan prediksi model (kolom yang diekstrak dari model) dengan jawaban yang benar. Set data pengujian harus memiliki minimal 10 dokumen untuk meningkatkan kualitas versi pretrained-foundation-model-v1.0-2023-08-22, 16 untuk versi pretrained-foundation-model-v1.1-2024-03-12, dan 1 dokumen untuk pretrained-foundation-model-v1.2-2024-05-10 dan pretrained-foundation-model-v1.3-2024-08-31.

Pengekstrak kustom dengan deskripsi properti

Dengan deskripsi properti, Anda dapat melatih model dengan mendeskripsikan seperti apa kolom berlabel. Anda dapat memberikan konteks dan insight tambahan untuk setiap entitas. Hal ini memungkinkan model dilatih dengan mencocokkan kolom yang sesuai dengan deskripsi yang Anda berikan dan meningkatkan akurasi ekstraksi. Deskripsi properti dapat ditentukan untuk entitas induk dan turunan.

Contoh deskripsi properti yang baik mencakup informasi lokasi dan pola teks nilai properti, yang membantu membedakan potensi sumber kebingungan dalam dokumen. Deskripsi properti yang jelas dan akurat memandu model dengan aturan yang memastikan ekstraksi yang lebih andal dan konsisten, terlepas dari struktur dokumen atau variasi konten tertentu.

Memperbarui skema dokumen untuk pemroses

Untuk mengetahui cara menetapkan deskripsi properti, lihat Memperbarui skema dokumen.

Mengirim permintaan pemrosesan dengan deskripsi properti

Jika skema dokumen sudah memiliki deskripsi yang ditetapkan, Anda dapat mengirim permintaan pemrosesan dengan petunjuk di Mengirim permintaan pemrosesan.

Menyesuaikan pemroses dengan deskripsi properti

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • LOCATION: Lokasi pemroses Anda, misalnya:
    • us - Amerika Serikat
    • eu - Uni Eropa
  • PROJECT_ID: project ID Google Cloud Anda.
  • PROCESSOR_ID: ID pemroses kustom Anda.
  • DISPLAY_NAME: Nama tampilan untuk pemroses.
  • PRETRAINED_PROCESSOR_VERSION: ID versi prosesor. Lihat Memilih versi prosesor untuk mengetahui informasi selengkapnya. Misalnya:
    • pretrained-TYPE-vX.X-YYYY-MM-DD
    • stable
    • rc
  • TRAIN_STEPS: Langkah-langkah pelatihan untuk penyesuaian model.
  • LEARN_RATE_MULTIPLIER: Pengganda kecepatan belajar untuk penyesuaian model.
  • DOCUMENT_SCHEMA: Skema untuk pemroses. Lihat representasi DocumentSchema.

Metode HTTP dan URL:

POST https://LOCATION-documentai.googleapis.com/v1beta3/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process

Isi JSON permintaan:

{
  "rawDocument": {
      "parent": "projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID",
         "processor_version": {
             "name": "projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/DISPLAY_NAME",
             "display_name": "DISPLAY_NAME",
             "model_type": "MODEL_TYPE_GENERATIVE",
         },
         "base_processor_version": "projects/PROJECT_ID/locations/us/processors/PROCESSOR_ID/processorVersions/PRETRAINED_PROCESSOR_VERSION",
         "foundation_model_tuning_options": {
             "train_steps": TRAIN_STEPS,
             "learning_rate_multiplier": LEARN_RATE_MULTIPLIER,
         }
         "document_schema": DOCUMENT_SCHEMA
      }
}

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-documentai.googleapis.com/v1beta3/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process"

PowerShell

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-documentai.googleapis.com/v1beta3/projects/PROJECT_ID/locations/LOCATION/processors/PROCESSOR_ID/processorVersions/PROCESSOR_VERSION:process" | Select-Object -Expand Content

Langkah selanjutnya

Melatih ulang pemroses khusus