Menggunakan API Otomasi Data Batuan Dasar - Amazon Bedrock

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan API Otomasi Data Batuan Dasar

Fitur Otomasi Amazon Bedrock Data (BDA) menyediakan alur kerja API yang efisien untuk memproses data Anda. Untuk semua modalitas, alur kerja ini terdiri dari tiga langkah utama: membuat proyek, menjalankan analisis, dan mengambil hasilnya. Untuk mengambil output kustom untuk data yang diproses, Anda memberikan Blueprint ARN saat Anda menjalankan operasi analisis.

Buat Proyek Otomasi Data

Untuk mulai memproses file dengan BDA, Anda harus terlebih dahulu membuat Proyek Otomasi Data. Ini dapat dilakukan dengan dua cara, dengan CreateDataAutomationProject operasi atau Amazon Bedrock Konsol Amazon.

Menggunakan API

Saat menggunakan API untuk membuat proyek, Anda memanggil file. CreateDataAutomationProject Saat membuat proyek, Anda harus menentukan pengaturan konfigurasi untuk jenis file yang cenderung Anda proses (modalitas yang ingin Anda gunakan). Berikut adalah contoh bagaimana Anda dapat mengkonfigurasi output standar untuk gambar:

{ "standardOutputConfiguration": { "image": { "state": "ENABLED", "extraction": { "category": { "state": "ENABLED", "types": [ "CONTENT_MODERATION", "TEXT_DETECTION" ] }, "boundingBox": { "state": "ENABLED" } }, "generativeField": { "state": "ENABLED", "types": [ "IMAGE_SUMMARY", "IAB" ] } } } }

API memvalidasi konfigurasi input. Ini menciptakan proyek baru dengan ARN yang unik. Pengaturan proyek disimpan untuk penggunaan masa depan. Jika proyek dibuat tanpa parameter, pengaturan default akan berlaku. Misalnya, saat memproses gambar, ringkasan gambar dan deteksi teks akan diaktifkan secara default.

Ada batasan jumlah proyek yang dapat dibuat per AWS akun. Kombinasi pengaturan tertentu mungkin tidak diizinkan atau mungkin memerlukan izin tambahan.

Memanggil Otomatisasi Data Async

Anda memiliki proyek yang disiapkan, Anda dapat mulai memproses gambar menggunakan InvokeDataAutomationAsyncoperasi. Jika menggunakan keluaran khusus, Anda hanya dapat mengirimkan satu cetak biru ARN per permintaan.

Panggilan API ini memulai pemrosesan asinkron file Anda dalam bucket S3 yang ditentukan. API menerima ARN proyek dan file yang akan diproses, kemudian memulai pekerjaan pemrosesan asinkron. ID pekerjaan dikembalikan untuk melacak proses. Kesalahan akan muncul jika proyek tidak ada, atau jika pemanggil tidak memiliki izin yang diperlukan, atau jika file input tidak dalam format yang didukung.

Berikut ini adalah struktur permintaan JSON:

{ { "blueprints": [ { "blueprintArn": "string", "stage": "string", "version": "string" } ], "clientToken": "string", "dataAutomationConfiguration": { "dataAutomationProjectArn": "string", "stage": "string" }, "dataAutomationProfileArn": "string", "encryptionConfiguration": { "kmsEncryptionContext": { "string" : "string" }, "kmsKeyId": "string" }, "inputConfiguration": { "assetProcessingConfiguration": { "video": { "segmentConfiguration": { ... } } "s3Uri": "string" }, "notificationConfiguration": { "eventBridgeConfiguration": { "eventBridgeEnabled": boolean } }, "outputConfiguration": { "s3Uri": "string" }, "tags": [ { "key": "sstring", "value": "string" } ] } }

Saat menjalankan InvokeDataAutomationAsync file video, Anda dapat mengatur bagian video 5 menit atau lebih lama yang akan diperlakukan sebagai video lengkap untuk ekstraksi data. Waktu ini diatur dengan stempel waktu milidetik awal dan milidetik akhir. Informasi ini ditambahkan dalam assetProcessingConfiguration elemen.

Memanggil Otomatisasi Data (Sinkronisasi)

Atau, Anda dapat menggunakan InvokeDataAutomationoperasi ini. InvokeDataAutomationOperasi ini hanya mendukung pemrosesan gambar.

Panggilan API ini memulai pemrosesan sinkron dari yang disediakan melalui referensi S3, atau di payload. API menerima ARN proyek dan file yang akan diproses, dan mengembalikan wawasan terstruktur dalam respons. Kesalahan akan muncul jika proyek tidak ada, atau jika pemanggil tidak memiliki izin yang diperlukan, atau jika file input tidak dalam format yang didukung. Jika gambar yang dianalisis secara semantik diklasifikasikan sebagai dokumen, ini juga akan dinaikkan sebagai kesalahan, karena InvokeDataAutomation satu-satunya yang mendukung Gambar. Untuk mencegah kesalahan ini, Anda dapat menggunakan Perutean Modalitas pada proyek Anda untuk memaksa perutean semua jenis file gambar sebagai Gambar (lihat). Menonaktifkan modalitas dan jenis file routing

Berikut adalah struktur permintaan JSON:

{ { "blueprints": [ { "blueprintArn": "string", "stage": "string", "version": "string" } ], "clientToken": "string", "dataAutomationConfiguration": { "dataAutomationProjectArn": "string", "stage": "string" }, "dataAutomationProfileArn": "string", "encryptionConfiguration": { "kmsEncryptionContext": { "string" : "string" }, "kmsKeyId": "string" }, "inputConfiguration": { "assetProcessingConfiguration": { "video": { "segmentConfiguration": { ... } } "s3Uri": "string" }, "notificationConfiguration": { "eventBridgeConfiguration": { "eventBridgeEnabled": boolean } }, "tags": [ { "key": "string", "value": "string" } ] } }

Output mencakup struktur unik tergantung pada file, operasi, dan konfigurasi output khusus yang ditentukan dalam panggilan ke InvokeDataAutomation. Perhatikan bahwa respons ini mencakup respons keluaran standar dan kustom.

Berikut adalah struktur respons JSON dengan konfigurasi output standar dan kustom:

{ "semanticModality": "IMAGE", "outputSegments": [ { "customOutputStatus": "MATCH", "standardOutput": { "image": { "summary": "This image shows a white Nike running shoe with a black Nike swoosh logo on the side. The shoe has a modern design with a thick, cushioned sole and a sleek upper part. The word \"ROUKEA\" is visible on the sole of the shoe, repeated twice. The shoe appears to be designed for comfort and performance, suitable for running or athletic activities. The background is plain and dark, highlighting the shoe.", "iab_categories": [ { "category": "Style and Fashion", "confidence": 0.9890000000000001, "taxonomy_level": 1, "parent_name": "", "id": "0ebe86c8-e9af-43f6-a7bb-182a61d2e1fd", "type": "IAB" }, { "category": "Men's Fashion", "confidence": 0.9890000000000001, "taxonomy_level": 2, "parent_name": "Style and Fashion", "id": "13bd456a-3e1b-4681-b0dd-f42a8d5e5ad5", "type": "IAB" }, { "category": "Style and Fashion", "confidence": 0.853, "taxonomy_level": 1, "parent_name": "", "id": "177b29a1-0e40-45c1-8540-5f49a3d7ded3", "type": "IAB" }, { "category": "Women's Fashion", "confidence": 0.853, "taxonomy_level": 2, "parent_name": "Style and Fashion", "id": "f0197ede-3ba6-498b-8f7b-43fecc5735ef", "type": "IAB" } ], "content_moderation": [], "logos": [ { "id": "2e109eb6-39f5-4782-826f-911b62d277fb", "type": "LOGOS", "confidence": 0.9170872209665809, "name": "nike", "locations": [ { "bounding_box": { "left": 0.3977411523719743, "top": 0.4922481227565456, "width": 0.2574246356942061, "height": 0.15461772197001689 } } ] } ], "text_words": [ { "id": "f70301df-5725-405e-b50c-612e352467bf", "type": "TEXT_WORD", "confidence": 0.10091366487951722, "text": "ROUKEA", "locations": [ { "bounding_box": { "left": 0.6486002310163024, "top": 0.6783271480251003, "width": 0.13219473954570082, "height": 0.05802226710963898 }, "polygon": [ { "x": 0.6486002310163024, "y": 0.7025876947351404 }, { "x": 0.7760931467045249, "y": 0.6783271480251003 }, { "x": 0.7807949705620032, "y": 0.7120888684246991 }, { "x": 0.6533020989743271, "y": 0.7363494151347393 } ] } ], "line_id": "9147fec0-d869-4d58-933e-93eb7164c404" } ], "text_lines": [ { "id": "9147fec0-d869-4d58-933e-93eb7164c404", "type": "TEXT_LINE", "confidence": 0.10091366487951722, "text": "ROUKEA", "locations": [ { "bounding_box": { "left": 0.6486002310163024, "top": 0.6783271480251003, "width": 0.13219473954570082, "height": 0.05802226710963898 }, "polygon": [ { "x": 0.6486002310163024, "y": 0.7025876947351404 }, { "x": 0.7760931467045249, "y": 0.6783271480251003 }, { "x": 0.7807949705620032, "y": 0.7120888684246991 }, { "x": 0.6533020989743271, "y": 0.7363494151347393 } ] } ] } ] }, "statistics": { "iab_category_count": 4, "content_moderation_count": 0, "logo_count": 1, "line_count": 1, "word_count": 1 }, "metadata": { "semantic_modality": "IMAGE", "image_width_pixels": 173, "image_height_pixels": 148, "image_encoding": "jpeg", "s3_bucket": "test-bucket", "s3_key": "uploads/test-image.jpeg" } }, "customOutput": { "matched_blueprint": { "arn": "arn:aws:bedrock:us-east-1:123456789012:blueprint/test", "version": "1", "name": "test-blueprint", "confidence": 1.0 }, "inference_result": { "product_details": { "product_category": "footwear" }, "image_sentiment": "Positive", "image_background": "Solid color", "image_style": "Product image", "image_humor": false } } } ] }

Dapatkan Status Otomatisasi Data

Untuk memeriksa status pekerjaan pemrosesan Anda dan mengambil hasil, gunakan GetDataAutomationStatus.

GetDataAutomationStatus API memungkinkan Anda untuk memantau kemajuan pekerjaan Anda dan mengakses hasilnya setelah pemrosesan selesai. API menerima pemanggilan ARN yang dikembalikan oleh. InvokeDataAutomationAsync Ini memeriksa status pekerjaan saat ini dan mengembalikan informasi yang relevan. Setelah pekerjaan selesai, ia memberikan lokasi hasil di S3.

Jika pekerjaan masih dalam proses, ia mengembalikan status saat ini (misalnya, "InProgress“). Jika pekerjaan selesai, ia mengembalikan “Sukses” bersama dengan lokasi S3 hasil. Jika ada kesalahan, ia mengembalikan "ServiceError" atau "ClientError" dengan detail kesalahan.

Berikut ini adalah format permintaan JSON:

{ "InvocationArn": "string" // Arn }

Respon Keluaran Asinkron

Hasil pemrosesan file disimpan dalam bucket S3 yang dikonfigurasi untuk gambar input. Outputnya mencakup struktur unik tergantung pada modalitas file dan jenis operasi yang ditentukan dalam panggilan ke InvokeDataAutomationAsync.

Untuk informasi tentang output standar untuk modalitas tertentu, lihat. Output standar dalam Otomasi Data Batuan Dasar

Sebagai contoh, untuk gambar dapat mencakup informasi tentang hal berikut:

  • Ringkasan Gambar: Ringkasan deskriptif atau keterangan gambar.

  • Klasifikasi IAB: Kategorisasi berdasarkan taksonomi IAB.

  • Deteksi Teks Gambar: Teks yang diekstraksi dengan informasi kotak pembatas.

  • Moderasi Konten: Mendeteksi konten yang tidak pantas, tidak diinginkan, atau menyinggung dalam gambar.

Berikut ini adalah contoh cuplikan output untuk pemrosesan gambar:

{ "metadata": { "id": "image_123", "semantic_modality": "IMAGE", "s3_bucket": "my-s3-bucket", "s3_prefix": "images/", "image_width_pixels": 1920, "image_height_pixels": 1080 }, "image": { "summary": "A lively party scene with colorful decorations and supplies", "iab_categories": [ { "category": "Party Supplies", "confidence": 0.9, "parent_name": "Events & Attractions" } ], "content_moderation": [ { "category": "Drugs & Tobacco Paraphernalia & Use", "confidence": 0.7 } ], "text_words": [ { "id": "word_1", "text": "lively", "confidence": 0.9, "line_id": "line_1", "locations": [ { "bounding_box": { "left": 100, "top": 200, "width": 50, "height": 20 }, "polygon": [ { "x": 100, "y": 200 }, { "x": 150, "y": 200 }, { "x": 150, "y": 220 }, { "x": 100, "y": 220 } ] } ] } ] } }

Output terstruktur ini memungkinkan integrasi yang mudah dengan aplikasi hilir dan analisis lebih lanjut.

Pengoptimalan Cetak Biru APIs

InvokeBlueprintOptimizationAsync

Anda dapat meningkatkan akurasi cetak biru dengan memberikan contoh aset konten dengan hasil yang diharapkan benar. Pengoptimalan instruksi cetak biru menggunakan contoh Anda untuk menyempurnakan instruksi bahasa alami di bidang cetak biru Anda, yang meningkatkan akurasi Hasil inferensi Anda.

Untuk cetak biru, Anda dapat memanggil InvokeBlueprintOptimizationAsync API yang memulai pekerjaan pengoptimalan asinkron untuk meningkatkan instruksi bidang Blueprint berdasarkan data kebenaran dasar.

Isi Permintaan

{ "blueprint": { "blueprintArn": "arn:aws:bedrock:us-east-1:123456789012:blueprint/my-document-processor", "stage": "DEVELOPMENT" }, "samples": [ { "assetS3Object": { "s3Uri": "s3://my-optimization-bucket/samples/document1.pdf" }, "groundTruthS3Object": { "s3Uri": "s3://my-optimization-bucket/ground-truth/document1-expected.json" } } ], "outputConfiguration": { "s3Object": { "s3Uri": "s3://my-optimization-bucket/results/optimization-output" } }, "dataAutomationProfileArn": "arn:aws:bedrock:us-east-1:123456789012:data-automation-profile/my-profile" }
Respons

{ "invocationArn": "arn:aws:bedrock:us-east-1:123456789012:blueprint-optimization-invocation/opt-12345abcdef" }
penting

Simpan InvocationARN untuk memantau status pekerjaan pengoptimalan.

GetBlueprintOptimizationStatus

Mengambil status saat ini dan hasil pekerjaan pengoptimalan cetak biru yang dikeluarkan dengan memanggil API async. InvokeBlueprintOptimizationAsync GetBlueprintOptimizationStatus menerima doa ARN yang dikembalikan oleh. InvokeBlueprintOptimizationAsync

Respons

{ "status": "Success", "outputConfiguration": { "s3Object": { "s3Uri": "s3://my-optimization-bucket/results/optimization-output" } } }
Nilai Status:

  • Dibuat - Job telah dibuat

  • InProgress - Optimasi sedang berjalan

  • Sukses - Optimasi berhasil diselesaikan

  • ServiceError - Terjadi kesalahan layanan internal

  • ClientError - Parameter permintaan tidak valid

CopyBlueprintStage

Menyalin Cetak Biru dari tahap sumber ke tahap target (mis. Tahap PENGEMBANGAN ke tahap LIVE). Ini akan digunakan untuk menyinkronkan semua konfigurasi termasuk bidang OptimizationSampel antar tahapan.

Isi Permintaan

{ "blueprintArn": "arn:aws:bedrock:us-east-1:123456789012:blueprint/my-document-processor", "sourceStage": "DEVELOPMENT", "targetStage": "LIVE" }
Nilai Tahap:

  • PENGEMBANGAN - Development/testing tahap

  • LIVE - Tahap produksi

Respons

{}
Awas

Operasi ini menimpa konfigurasi tahap target dan tidak dapat dengan mudah dibatalkan. Pastikan pengujian menyeluruh sebelum menyalin ke tahap LIVE.