Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memanggil dan menyesuaikan model Amazon Bedrock dengan Step Functions
Anda dapat mengintegrasikan Step Functions dengan Amazon Bedrock untuk menjalankan model Amazon Bedrock tertentu dan membuat pekerjaan fine-tuning untuk menyesuaikan model. Halaman ini mencantumkan Amazon Bedrock yang didukung APIs dan memberikan contoh Task
status untuk mengekstrak hasil pemanggilan model.
Untuk belajar tentang berintegrasi dengan AWS servicesin Step Functions, lihat Integrasi layanan dan. Meneruskan parameter ke layanan API di Step Functions
Tip
Untuk menerapkan contoh alur kerja yang terintegrasi dengan Amazon Bedrock, lihat Lakukan prompt chaining AI dengan Amazon Bedrock.
Amazon Bedrock Integrasi layanan APIs
Untuk mengintegrasikan AWS Step Functions dengan Amazon Bedrock, Anda dapat menggunakan yang berikut iniAPIs. Ini APIs mirip dengan yang sesuai Amazon Bedrock APIs, kecuali InvokeModelmemiliki bidang permintaan tambahan.
Batuan Dasar API Amazon - CreateModelCustomizationJob
Membuat pekerjaan fine-tuning untuk menyesuaikan model dasar. Anda dapat memanggil integrasi Step Functions API dengan CreateModelCustomizationJobfor Request Response, CreateModelCustomizationJobatau.sync untuk pola integrasi Run a Job (.sync). Tidak ada perbedaan di bidang untuk API panggilan.
Batuan Dasar API Amazon - InvokeModel
Memanggil yang ditentukan Amazon Bedrock model untuk menjalankan inferensi menggunakan input yang Anda berikan di badan permintaan. Anda gunakan InvokeModel
untuk menjalankan inferensi untuk model teks, model gambar, dan model penyematan.
Bagian Amazon Bedrock badan API permintaan integrasi layanan untuk InvokeModelmenyertakan parameter tambahan berikut.
-
Body
- Menentukan data masukan dalam format yang ditentukan dalam header permintaan tipe konten.Body
berisi parameter khusus untuk model target.Jika Anda menggunakan
InvokeModel
API, Anda harus menentukanBody
parameter. Step Functions tidak memvalidasi masukan yang Anda berikan.Body
Saat Anda menentukan
Body
menggunakan Amazon Bedrock integrasi yang dioptimalkan, Anda dapat menentukan payload hingga 256 KB. Jika muatan Anda melebihi 256 KB, kami sarankan Anda menggunakannyaInput
. -
Input
- Menentukan sumber untuk mengambil data input dari. Bidang opsional ini khusus untuk Amazon Bedrock integrasi yang dioptimalkan dengan Step Functions. Di bidang ini, Anda dapat menentukan fileS3Uri
.Anda dapat menentukan baik
Body
dalam Parameter atauInput
, tetapi tidak keduanya.Saat Anda menentukan
Input
tanpa menentukanContentType
, jenis konten dari sumber data input menjadi nilai untukContentType
. -
Output
— Menentukan tujuan di mana API respon ditulis. Bidang opsional ini khusus untuk Amazon Bedrock integrasi yang dioptimalkan dengan Step Functions. Di bidang ini, Anda dapat menentukan fileS3Uri
.Jika Anda menentukan bidang ini, badan API respons diganti dengan referensi ke Amazon S3 lokasi output asli.
Contoh berikut menunjukkan sintaks untuk for InvokeModel API Amazon Bedrock integrasi.
{ "ModelId": String, // required "Accept": String, // default: application/json "ContentType": String, // default: application/json "Input": { // not from Bedrock API "S3Uri": String }, "Output": { // not from Bedrock API "S3Uri": String } }
Definisi status tugas untuk Amazon Bedrock integrasi
Definisi status Tugas berikut menunjukkan bagaimana Anda dapat berintegrasi dengan Amazon Bedrock di mesin negara Anda. Contoh ini menunjukkan status Tugas yang mengekstrak hasil lengkap dari pemanggilan model yang ditentukan oleh jalur,. result_one
Ini didasarkan pada parameter Inferensi untuk model pondasi. Contoh ini menggunakan Cohere Command large language model (LLM).
{ "Type": "Task", "Resource": "arn:aws:states:::bedrock:invokeModel", "Parameters": { "ModelId": "cohere.command-text-v14", "Body": { "prompt.$": "$.prompt_one", "max_tokens": 250 }, "ContentType": "application/json", "Accept": "*/*" }, "ResultPath": "$.result_one", "ResultSelector": { "result_one.$": "$.Body.generations[0].text" }, "End": true }
IAM policies for calling Amazon Bedrock
Saat Anda membuat mesin status menggunakan konsol, Step Functions secara otomatis membuat peran eksekusi untuk mesin status Anda dengan hak istimewa paling sedikit yang diperlukan. Ini secara otomatis dihasilkan IAM peran berlaku untuk Wilayah AWS di mana Anda membuat mesin negara.
Kami merekomendasikan bahwa ketika Anda membuat IAM kebijakan, tidak termasuk wildcard dalam kebijakan. Sebagai praktik terbaik keamanan, Anda harus mencatat kebijakan Anda sebanyak mungkin. Anda harus menggunakan kebijakan dinamis hanya jika parameter input tertentu tidak diketahui selama runtime.
Contoh template berikut menunjukkan bagaimana AWS Step Functions menghasilkan IAM kebijakan berdasarkan sumber daya dalam definisi mesin negara Anda. Untuk informasi selengkapnya, silakan lihat Bagaimana Step Functions menghasilkan IAM kebijakan untuk layanan terintegrasi dan Temukan pola integrasi layanan di Step Functions.
IAM contoh kebijakan untuk Amazon Bedrock integrasi
Bagian berikut menjelaskan IAM izin yang Anda butuhkan berdasarkan Amazon Bedrock APIyang Anda gunakan untuk fondasi tertentu atau model yang disediakan. Bagian ini juga berisi contoh kebijakan yang memberikan akses penuh.
Ingatlah untuk mengganti italicized
teks dengan informasi spesifik sumber daya Anda.
-
IAM contoh kebijakan untuk mengakses model pondasi tertentu menggunakan InvokeModel
-
IAM contoh kebijakan untuk mengakses model tertentu yang disediakan menggunakan InvokeModel
-
Akses penuh IAM contoh kebijakan untuk digunakan InvokeModel
-
IAM contoh kebijakan untuk mengakses model pondasi tertentu sebagai model dasar
-
IAM contoh kebijakan untuk mengakses model kustom tertentu sebagai model dasar
-
Akses penuh IAM contoh kebijakan untuk CreateModelCustomizationJob menggunakan.sync
-
IAM contoh kebijakan untuk mengakses model kustom CreateModelCustomizationJob menggunakan.sync
-
Akses penuh IAM contoh kebijakan untuk CreateModelCustomizationJob menggunakan.sync
IAM contoh kebijakan untuk mengakses model pondasi tertentu menggunakan InvokeModel
Berikut ini adalah IAM contoh kebijakan untuk mesin negara yang mengakses model pondasi tertentu bernama amazon.titan-text-express-v1
menggunakan InvokeModelAPItindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "InvokeModel1", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-2::foundation-model/
amazon.titan-text-express-v1
" ] } ] }
IAM contoh kebijakan untuk mengakses model tertentu yang disediakan menggunakan InvokeModel
Berikut ini adalah IAM contoh kebijakan untuk mesin status yang mengakses model tertentu yang disediakan bernama c2oi931ulksx
menggunakan tindakan. InvokeModelAPI
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "InvokeModel1", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-2:
123456789012
:provisioned-model/c2oi931ulksx
" ] } ] }
Akses penuh IAM contoh kebijakan untuk digunakan InvokeModel
Berikut ini adalah IAM contoh kebijakan untuk mesin status yang menyediakan akses penuh saat Anda menggunakan InvokeModelAPItindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "InvokeModel1", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-2::foundation-model/*", "arn:aws:bedrock:us-east-2:
123456789012
:provisioned-model/*" ] } ] }
IAM contoh kebijakan untuk mengakses model pondasi tertentu sebagai model dasar
Berikut ini adalah IAM contoh kebijakan untuk mesin negara untuk mengakses model pondasi tertentu bernama amazon.titan-text-express-v1
sebagai model dasar menggunakan CreateModelCustomizationJobAPItindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2::foundation-model/
amazon.titan-text-express-v1
", "arn:aws:bedrock:us-east-2:123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/myRole
" ] } ] }
IAM contoh kebijakan untuk mengakses model kustom tertentu sebagai model dasar
Berikut ini adalah IAM contoh kebijakan untuk mesin status untuk mengakses model kustom tertentu sebagai model dasar menggunakan CreateModelCustomizationJobAPItindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2:
123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/[[roleName]]" ] } ] }
Akses penuh IAM contoh kebijakan untuk CreateModelCustomizationJob menggunakan.sync
Berikut ini adalah IAM contoh kebijakan untuk mesin status yang menyediakan akses penuh saat Anda menggunakan CreateModelCustomizationJobAPItindakan.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2::foundation-model/*", "arn:aws:bedrock:us-east-2:
123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/myRole
" ] } ] }
IAM contoh kebijakan untuk mengakses model fondasi tertentu CreateModelCustomizationJob menggunakan.sync
Berikut ini adalah IAM contoh kebijakan untuk mesin status untuk mengakses model dasar tertentu bernama amazon.titan-text-express-v1
menggunakan CreateModelCustomizationJobAPItindakan.sync.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2::foundation-model/amazon.titan-text-express-v1", "arn:aws:bedrock:us-east-2:
123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "bedrock:GetModelCustomizationJob", "bedrock:StopModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob3", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/myRole
" ] } ] }
IAM contoh kebijakan untuk mengakses model kustom CreateModelCustomizationJob menggunakan.sync
Berikut ini adalah IAM contoh kebijakan untuk mesin status untuk mengakses model kustom menggunakan CreateModelCustomizationJobAPItindakan.sync.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2:
123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "bedrock:GetModelCustomizationJob", "bedrock:StopModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob3", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/myRole
" ] } ] }
Akses penuh IAM contoh kebijakan untuk CreateModelCustomizationJob menggunakan.sync
Berikut ini adalah IAM contoh kebijakan untuk mesin status yang menyediakan akses penuh saat Anda menggunakan CreateModelCustomizationJobAPItindakan.sync.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "CreateModelCustomizationJob1", "Action": [ "bedrock:CreateModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:
us-east-2
::foundation-model/*", "arn:aws:bedrock:us-east-2
:123456789012
:custom-model/*", "arn:aws:bedrock:us-east-2
:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob2", "Action": [ "bedrock:GetModelCustomizationJob", "bedrock:StopModelCustomizationJob" ], "Resource": [ "arn:aws:bedrock:us-east-2
:123456789012
:model-customization-job/*" ] }, { "Effect": "Allow", "Sid": "CreateModelCustomizationJob3", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::123456789012
:role/myRole
" ] } ] }