

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

# Sempurnakan model Amazon Nova dengan penyetelan penguatan
<a name="rft-nova-models"></a>

Sebelum melakukan fine-tuning, pastikan Anda memiliki prasyarat karena Amazon Bedrock memerlukan izin khusus untuk membuat dan mengelola proses fine-tuning. Untuk informasi keamanan dan izin yang komprehensif, lihat[Akses dan keamanan untuk model Amazon Nova](rft-access-security.md).

Jalankan fine-tuning penguatan untuk model Amazon Nova dalam 5 langkah:

1. **Menyediakan Dataset Pelatihan** — Unggah petunjuk dalam format yang diperlukan (misalnya, JSONL) sebagai kumpulan data pelatihan fine-tuning penguatan. Untuk informasi selengkapnya, lihat [Siapkan data untuk model Amazon Nova](rft-prepare-data.md).

1. **Konfigurasi Fungsi Hadiah (grader)** - Tentukan grader untuk menilai respons model berdasarkan kebenaran, struktur, nada, atau tujuan lainnya. Fungsi hadiah dapat dijalankan menggunakan Lambda untuk menghitung skor objektif. Anda juga dapat memilih model sebagai juri (melalui konsol) dan menilai respons berdasarkan kriteria dan prinsip yang Anda konfigurasikan (konsol mengonversinya menjadi fungsi Lambda secara otomatis). Untuk informasi selengkapnya, lihat [Menyiapkan fungsi hadiah untuk model Amazon Nova](reward-functions.md).

1. **Submit reinforcement fine-tuning Job** — Luncurkan pekerjaan fine-tuning tulangan dengan menentukan model dasar, dataset, fungsi reward, dan pengaturan opsional lainnya seperti hyperparameters. Untuk informasi selengkapnya, lihat [Buat dan kelola pekerjaan fine-tuning untuk model Amazon Nova](rft-submit-job.md).

1. **Pantau Pelatihan** — Lacak status pekerjaan, metrik hadiah, dan kemajuan pelatihan hingga selesai. Untuk informasi selengkapnya, lihat [Pantau pekerjaan pelatihan RFT Anda](rft-submit-job.md#rft-monitor-job).

1. **Gunakan Model Fine-Tuned** — Setelah pekerjaan selesai, terapkan model RFT yang dihasilkan dengan satu klik untuk inferensi sesuai permintaan. Anda juga dapat menggunakan Provisioned Throughput untuk beban kerja penting misi yang memerlukan kinerja yang konsisten. Lihat [Siapkan inferensi untuk model khusus](model-customization-use.md). Gunakan **Test in Playground** untuk mengevaluasi dan membandingkan respons dengan model dasar.

**penting**  
Anda dapat memberikan maksimum 20K petunjuk ke Amazon Bedrock untuk penguatan menyempurnakan model.

## Model Nova yang didukung
<a name="rft-nova-supported-models"></a>

Tabel berikut menunjukkan model Amazon Nova yang dapat Anda sesuaikan dengan fine-tuning tulangan:

**catatan**  
Untuk informasi tentang model tambahan yang didukung termasuk model berat terbuka, lihat[Sempurnakan model bobot terbuka menggunakan -kompatibel OpenAI APIs](fine-tuning-openai-apis.md).


**Model yang didukung untuk fine-tuning penguatan**  

| Penyedia | Model | ID Model | Dukungan model wilayah tunggal | 
| --- | --- | --- | --- | 
| Amazon | Nova 2 Lite | amazon.nova-2-lite-v 1:0:256 k | us-east-1 | 

# Akses dan keamanan untuk model Amazon Nova
<a name="rft-access-security"></a>

Sebelum Anda memulai fine-tuning penguatan, pastikan Anda memahami jenis akses apa yang dibutuhkan Amazon Bedrock untuk operasi khusus RFT. RFT memerlukan izin tambahan di luar fine-tuning standar karena kemampuan eksekusi fungsi reward.

Untuk pengaturan keamanan kustomisasi model dasar termasuk hubungan kepercayaan, izin Amazon S3, dan enkripsi KMS, lihat. [Buat peran layanan IAM untuk kustomisasi model](custom-model-job-access-security.md#custom-model-job-service-role)

## Prasyarat
<a name="rft-access-prerequisites"></a>

Sebelum menambahkan izin IAM khusus RFT, Anda harus menambahkan peran layanan IAM berikut:
+ [Hubungan kepercayaan](custom-model-job-access-security.md#custom-model-job-service-role-trust-relationship)
+ [Izin untuk mengakses file pelatihan dan validasi dan untuk menulis file output di S3](custom-model-job-access-security.md#custom-model-job-service-role-s3-permissions)

## Izin IAM khusus RFT
<a name="rft-iam-permissions"></a>

Tambahkan izin ini ke peran layanan penyesuaian model yang ada untuk fungsionalitas RFT.

### Izin Lambda untuk fungsi hadiah
<a name="rft-lambda-permissions"></a>

Anda harus menambahkan izin pemanggilan Lambda. Berikut ini menunjukkan contoh kebijakan yang dapat Anda gunakan:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "lambda:InvokeFunction"
            ],
            "Resource": [
                "arn:aws:lambda:*:*:function:reward-function-name"
            ]
        }
    ]
}
```

### Akses log pemanggilan
<a name="rft-api-log-permissions"></a>

Untuk menggunakan log pemanggilan model Amazon Bedrock yang ada sebagai data pelatihan, tambahkan izin untuk mengakses bucket Amazon S3 tempat log pemanggilan disimpan. 

Anda harus memberikan izin akses bucket Amazon S3 untuk bucket input. Berikut ini menunjukkan contoh kebijakan yang dapat Anda gunakan:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::s3-invocation-logs-bucket",
                "arn:aws:s3:::s3-invocation-logs-bucket/*"
            ]
        }
    ]
}
```

Untuk pengaturan keamanan termasuk peran IAM dasar, izin Amazon S3, dan enkripsi, lihat. [Buat peran layanan IAM untuk kustomisasi model](custom-model-job-access-security.md#custom-model-job-service-role)

## Izin fungsi Grader Lambda untuk RLAIF
<a name="rft-grader-lambda-permissions"></a>

Jika Anda membuat fungsi Lambda sendiri untuk fungsi reward Reinforcement Learning from AI Feedback (RLAIF), Anda perlu menambahkan izin khusus ke peran eksekusi Lambda.

### Izin dasar dasar untuk juri LLM
<a name="rft-bedrock-permissions"></a>

Untuk fungsi LLM-as-Judge reward (RLAIF), tambahkan izin untuk memanggil model foundation. Berikut ini menunjukkan contoh kebijakan yang dapat Anda gunakan untuk peran eksekusi Lambda Anda.

**catatan**  
Hanya tambahkan izin ini ke peran eksekusi Lambda Anda jika Anda membuat fungsi Lambda Anda sendiri. Konsol menangani ini secara otomatis saat membuat fungsi Lambda melalui konsol.

Berikut ini adalah contoh untuk LLM batuan dasar sebagai pemanggilan hakim menggunakan model pondasi:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:*:*:foundation-model/*"
            ]
        }
    ]
}
```

Berikut ini adalah contoh untuk batuan dasar LLM sebagai pemanggilan hakim menggunakan profil inferensi:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1::foundation-model/amazon.nova-premier-v1:0",
                "arn:aws:bedrock:us-east-2::foundation-model/amazon.nova-premier-v1:0",
                "arn:aws:bedrock:us-west-2::foundation-model/amazon.nova-premier-v1:0"
            ],
            "Condition": {
                "StringLike": {
                    "bedrock:InferenceProfileArn": "arn:aws:bedrock:us-east-1:111122223333:inference-profile/us.amazon.nova-premier-v1:0"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1:111122223333:inference-profile/us.amazon.nova-premier-v1:0"
            ]
        }
    ]
}
```

[Untuk informasi tentang prasyarat profil inferensi, lihat Prasyarat untuk profil inferensi.](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-prereq.html)

# Siapkan data untuk model Amazon Nova
<a name="rft-prepare-data"></a>

Saat menyempurnakan model Amazon Nova dengan penyempurnaan penguatan, Anda dapat membawa petunjuk sendiri atau menggunakan log pemanggilan Amazon Bedrock API yang ada sebagai data pelatihan.

## Persyaratan dan sumber data pelatihan
<a name="rft-data-source-options"></a>

Anda dapat memberikan data pelatihan melalui salah satu opsi berikut:

**catatan**  
Kami hanya mendukung format penyelesaian obrolan OpenAI.

### Opsi 1: Berikan petunjuk Anda sendiri
<a name="w2aac15c25c17c15b5b7b1"></a>

Kumpulkan petunjuk Anda dan simpan dalam format `.jsonl` file. Anda dapat mengunggah kumpulan data khusus dalam format JSONL atau memilih kumpulan data yang ada dari Amazon S3. Setiap catatan di JSONL harus menggunakan format penyelesaian obrolan OpenAI dalam struktur berikut:
+ `messages`: Di bidang ini, sertakan peran pengguna, sistem atau asisten yang berisi prompt input yang diberikan kepada model.
+ `reference_answer`: Di bidang ini, harus berisi output yang diharapkan atau kriteria evaluasi yang digunakan fungsi hadiah Anda untuk menilai respons model. Ini tidak terbatas pada output terstruktur—dapat berisi format apa pun yang membantu fungsi hadiah Anda mengevaluasi kualitas.
+ [Opsional] Anda dapat menambahkan bidang yang digunakan oleh grader Lambda untuk penilaian.

**Persyaratan:**
+ Format JSONL dengan petunjuk dalam format penyelesaian obrolan OpenAI (satu prompt per baris)
+ Minimal 100 catatan dalam dataset pelatihan
+ Amazon Bedrock secara otomatis memvalidasi format kumpulan data pelatihan

------
#### [ Example: General question-answering ]

```
{
            "messages": [
                {
                    "role": "system", 
                    "content": "You are a helpful assistant"
                },
                {
                    role": "user", 
                    "content": "What is machine learning?"}
            ],
            "reference_answer": "Machine learning is a subset of artificial intelligence that enables computers to learn and make decisions from data without being explicitly programmed."
            }
```

------
#### [ Example: Math problem ]

```
{
  "id": "sample-001",
  "messages": [
    {
      "role": "system",
      "content": "You are a math tutor"
    },
    {
      "role": "user",
      "content": "Solve: 2x + 5 = 13"
    }
  ],
  "reference_answer": {
    "solution": "x = 4",
    "steps": ["2x = 13 - 5", "2x = 8", "x = 4"]
  }
}
```

------

### Opsi 2: Gunakan log pemanggilan
<a name="w2aac15c25c17c15b5b7b3"></a>

Saat membuat pekerjaan fine-tuning penguatan, Anda dapat meminta Amazon Bedrock menggunakan log pemanggilan yang ada dari bucket S3 sebagai data pelatihan. Untuk Amazon Bedrock, log pemanggilan adalah catatan rinci tentang pemanggilan model.

Anda dapat menggunakan log pemanggilan Invoke/Converse API yang disimpan di sisi pelanggan dari Amazon S3 untuk pelatihan.

**Persyaratan:**
+ Pencatatan API harus diaktifkan untuk penggunaan Amazon Bedrock Anda
+ Log harus dalam format yang didukung (Amazon Bedrock Invoke/Converse API)
+ Minimal 100 contoh prompt

Untuk menggunakan log pemanggilan untuk fine-tuning penguatan, setel log pemanggilan model, gunakan salah satu operasi pemanggilan model, dan pastikan Anda telah menyiapkan bucket Amazon S3 sebagai tujuan log. Untuk informasi selengkapnya tentang menyiapkan log pemanggilan, lihat [Memantau pemanggilan model menggunakan Log dan CloudWatch Amazon](https://docs.aws.amazon.com/bedrock/latest/userguide/model-invocation-logging.html) S3.

Sebelum Anda dapat memulai pekerjaan fine-tuning reinforcement dengan log pemanggilan dari bucket S3 sebagai input, Anda harus memberikan izin Amazon Bedrock untuk mengakses log dari Bucket S3. Untuk informasi selengkapnya, lihat [Akses dan keamanan kustomisasi model](custom-model-job-access-security.md).

Anda dapat menambahkan metadata permintaan secara opsional ke pasangan prompt respons dalam log pemanggilan menggunakan salah satu operasi pemanggilan model dan kemudian menggunakannya untuk memfilter log. Amazon Bedrock dapat menggunakan log yang difilter untuk menyempurnakan model.

#### Tambahkan metadata permintaan ke prompt dan tanggapan di log pemanggilan Anda
<a name="rft-request-metadata"></a>

Dengan log pemanggilan, Anda dapat mengidentifikasi permintaan kumpulan data pelatihan yang ingin digunakan Amazon Bedrock untuk penyempurnaan penguatan menggunakan metadata permintaan yang dilampirkan ke log pemanggilan. 

Berikut ini adalah contoh log pemanggilan dari `InvokeModel` panggilan dengan: `requestMetadata`

```
{
"schemaType": "ModelInvocationLog",
    "schemaVersion": "1.0",
    "timestamp": "2024-09-11T17:16:18Z",
    "accountId": "XXXXX",
    "identity": {
"arn": "arn:aws:sts::XXXXXXX:assumed-role/Admin/XXXXXX"
    },
    "region": "us-east-1",
    "requestId": "7ee514f3-9eff-467c-af75-8fd564ce58e5",
    "operation": "InvokeModel",
    "modelId": "meta.llama3-1-405b-instruct-v1:0",
    "input": {
"inputContentType": "application/json",
        "inputBodyJson": {
"prompt": "story of two dogs",
            "max_tokens_to_sample": 300
        },
        "inputTokenCount": 13
    },
    "output": {
"outputContentType": "application/json",
        "outputBodyJson": {
"type": "completion",
            "completion": " Here is a story about two dogs:\n\nRex and Charlie were best friends who lived next door to each other. Every morning, their owners would let them out into the backyard to play. Rex was a golden retriever with long, shaggy fur. He loved to run and chase sticks. Charlie was a corgi with short legs and a big smile. He was happy just sniffing the grass and rolling around. \n\nThe two dogs spent every day playing together. Rex would grab a stick and bring it over to Charlie, wagging his tail excitedly. Charlie would take the other end of the stick in his mouth and they'd have a friendly game of tug-of-war. After tiring themselves out, they'd flop down in the warm sunshine for a nap. \n\nAt lunchtime, their owners would call them in for food. Rex would gobble up his kibble hungrily while Charlie ate his at a more leisurely pace. After lunch, it was right back outside for more playtime. The afternoon sunbeams would light up their fur as they chased each other around the yard. \n\nWhen it started getting late, their owners called them in for the night. Rex and Charlie would head inside, tired but happy after another fun day of play. After slurping up fresh water from their bowls, they'd curl up on their beds, Rex's fluffy golden tail tucked over his nose and little",
            "stop_reason": "max_tokens",
            "stop": null
        },
        "outputTokenCount": 300
    },
    "requestMetadata": {
"project": "CustomerService",
        "intent": "ComplaintResolution",
        "priority": "High"
    }
}
```

Anda dapat menentukan log pemanggilan sebagai sumber data input saat memulai pekerjaan fine-tuning penguatan. Anda dapat memulai pekerjaan fine-tuning penguatan melalui konsol Amazon Bedrock, menggunakan API, AWS CLI atau SDK.

##### Persyaratan untuk menyediakan metadata permintaan
<a name="rft-metadata-requirements"></a>

Metadata permintaan harus memenuhi persyaratan berikut:
+ Disediakan dalam `key:value` format JSON.
+ Pasangan kunci dan nilai harus berupa string maksimum 256 karakter.
+ Berikan maksimal 16 pasangan kunci-nilai.

##### Menggunakan filter metadata permintaan
<a name="rft-metadata-filters"></a>

Setelah log pemanggilan dengan metadata permintaan tersedia, Anda dapat menerapkan filter berdasarkan metadata permintaan untuk memilih secara selektif permintaan mana yang akan disertakan untuk menyempurnakan model. Misalnya, Anda mungkin hanya ingin menyertakan metadata yang memiliki `"project": "CustomerService"` dan `"priority": "High"` meminta metadata.

Untuk memfilter log menggunakan beberapa metadata permintaan, gunakan satu operator Boolean atau. `AND` `OR` Anda tidak dapat menggabungkan operator ini. Untuk pemfilteran metadata permintaan tunggal, gunakan operator or. `Equals` `Not Equals`

## Karakteristik data pelatihan yang efektif
<a name="rft-data-characteristics"></a>

Data pelatihan RFT yang efektif membutuhkan tiga karakteristik utama:
+ **Kejelasan dan konsistensi** - Gunakan petunjuk yang jelas dan tidak ambigu dengan pemformatan yang konsisten. Hindari label yang kontradiktif, instruksi yang ambigu, atau jawaban referensi yang bertentangan yang menyesatkan pelatihan.
+ **Keragaman** — Sertakan beragam format input, kasus tepi, dan tingkat kesulitan yang mencerminkan pola penggunaan produksi di berbagai jenis dan skenario pengguna.
+ **Fungsi hadiah yang efisien** — Merancang fungsi yang dijalankan dengan cepat (detik, bukan menit), sejajar dengan AWS Lambda, dan mengembalikan skor yang konsisten untuk pelatihan hemat biaya.

## Properti tambahan
<a name="rft-additional-properties"></a>

Format data RFT mendukung bidang khusus di luar persyaratan skema inti (`messages`dan`reference_answer`). Fleksibilitas ini memungkinkan Anda untuk menambahkan data tambahan apa pun yang dibutuhkan fungsi hadiah Anda untuk evaluasi yang tepat.

**catatan**  
Anda tidak perlu mengonfigurasi ini dalam resep Anda. Format data secara inheren mendukung bidang tambahan. Cukup sertakan mereka dalam data pelatihan Anda JSON, dan mereka akan diteruskan ke fungsi hadiah Anda di `metadata` lapangan.

**Properti tambahan umum**
+ `task_id`— Pengidentifikasi unik untuk melacak
+ `difficulty_level`— Indikator kompleksitas masalah
+ `domain`— Bidang subjek atau kategori
+ `expected_reasoning_steps`— Jumlah langkah dalam solusi

Bidang tambahan ini diteruskan ke fungsi hadiah Anda selama evaluasi, memungkinkan logika penilaian canggih yang disesuaikan dengan kasus penggunaan spesifik Anda.

**Contoh dengan properti tambahan**

------
#### [ Chemistry problem ]

```
{
  "id": "chem-001",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful chemistry assistant"
    },
    {
      "role": "user",
      "content": "Predict hydrogen bond donors and acceptors for this SMILES: CCN(CC)CCC(=O)c1sc(N)nc1C"
    }
  ],
  "reference_answer": {
    "donor_bond_counts": 2,
    "acceptor_bond_counts": 4
  }
}
```

`reference_answer`Bidang berisi output yang diharapkan atau kriteria evaluasi yang digunakan fungsi hadiah Anda untuk menilai respons model. Ini tidak terbatas pada output terstruktur—dapat berisi format apa pun yang membantu fungsi hadiah Anda mengevaluasi kualitas.

------
#### [ Math problem with metadata ]

```
{
  "messages": [
    {
      "role": "system",
      "content": "You are a math tutor"
    },
    {
      "role": "user",
      "content": "Solve: 2x + 5 = 13"
    }
  ],
  "reference_answer": {
    "solution": "x = 4",
    "steps": ["2x = 13 - 5", "2x = 8", "x = 4"]
  },
  "task_id": "algebra_001",
  "difficulty_level": "easy",
  "domain": "algebra",
  "expected_reasoning_steps": 3
}
```

------

# Menyiapkan fungsi hadiah untuk model Amazon Nova
<a name="reward-functions"></a>

Fungsi penghargaan mengevaluasi kualitas respons dan memberikan sinyal umpan balik untuk pelatihan model. Anda dapat mengatur fungsi reward menggunakan fungsi Lambda kustom atau model foundation yang dihosting Amazon Bedrock sebagai juri. Template terpandu tersedia untuk menyederhanakan pembuatan fungsi hadiah untuk tugas-tugas umum seperti mengikuti instruksi dan validasi format. Pilih pendekatan yang sesuai dengan persyaratan tugas Anda.

## Pembelajaran Penguatan melalui Hadiah yang Dapat Diverifikasi (RLVR)
<a name="rft-rlvr"></a>

RLVR mengoptimalkan model untuk tugas objektif seperti pembuatan kode atau penalaran matematika menggunakan grader atau templat berbasis aturan yang dapat diverifikasi. ready-to-use

Anda memiliki dua opsi untuk RLVR (Kode Kustom):

### Opsi 1: Gunakan templat yang disediakan konsol
<a name="w2aac15c25c17c17b5b7b1"></a>

Konsol Amazon Bedrock menyediakan contoh template untuk fungsi Lambda grader:
+ Penalaran matematis dengan verifikasi kebenaran dasar
+ Format validasi dan pemeriksaan kendala
+ Template Lambda grader generik dengan kode boilerplate

Ikuti petunjuk dalam templat yang disediakan di halaman **pekerjaan Buat RFT** di konsol [Amazon Bedrock](https://console.aws.amazon.com/bedrock).

### Opsi 2: Bawa fungsi Lambda Anda sendiri
<a name="w2aac15c25c17c17b5b7b3"></a>

Buat fungsi hadiah khusus menggunakan Lambda ARN Anda sendiri untuk logika kompleks, perhitungan eksternal, multi-langkah APIs, atau menggabungkan beberapa kriteria evaluasi.

**catatan**  
Jika Anda membawa fungsi Lambda Anda sendiri, ingatlah hal berikut:  
Tingkatkan batas waktu Lambda dari default 3 detik menjadi maksimum 15 menit untuk evaluasi kompleks.
Peran eksekusi Lambda memerlukan izin untuk memanggil model seperti yang dijelaskan dalam. [Akses dan keamanan untuk model Amazon Nova](rft-access-security.md)

## Pembelajaran Penguatan melalui Umpan Balik AI (RLAIF)
<a name="rft-rlaif"></a>

RLAIF mengoptimalkan model untuk tugas subjektif seperti mengikuti instruksi atau interaksi chatbot menggunakan juri berbasis AI dengan templat. ready-to-use

**Untuk RLAIF (Model sebagai Hakim):**
+ Pilih Model dasar yang dihosting Amazon Bedrock sebagai Hakim
+ Konfigurasikan instruksi untuk evaluasi
+ Tentukan kriteria evaluasi dan pedoman penilaian

Templat LLM-as-Judge prompt yang tersedia di konsol Amazon Bedrock:
+ Instruksi berikut (Pelatihan model hakim)
+ Ringkasan (Dialog multi-putaran)
+ Evaluasi penalaran (CoT untuk domain khusus)
+ Kesetiaan RAG (Tanya Jawab berdasarkan konteks)

**catatan**  
Opsi **Model sebagai Hakim** konsol secara otomatis mengubah konfigurasi Anda menjadi fungsi Lambda selama pelatihan.

## Detail implementasi fungsi Lambda
<a name="rft-lambda-implementation"></a>

Saat menerapkan fungsi hadiah Lambda khusus, fungsi Anda harus menerima dan mengembalikan data dalam format berikut.

------
#### [ Input structure ]

```
[{
  "id": "123",
  "messages": [
    {
      "role": "user",
      "content": "Do you have a dedicated security team?"
    },
    {
      "role": "assistant",
      "content": "As an AI developed by Amazon, I don not have a dedicated security team..."
    }
  ],
  "metadata": {
    "reference_answer": {
      "compliant": "No",
      "explanation": "As an AI developed by Company, I do not have a traditional security team..."
    },
    "my_key": "sample-001"
  }
}]
```

------
#### [ Output structure ]

```
[{
  "id": "123",
  "aggregate_reward_score": 0.85,
  "metrics_list": [
    {
      "name": "accuracy",
      "value": 0.9,
      "type": "Reward"
    },
    {
      "name": "policy_compliance",
      "value": 0.8,
      "type": "Metric"
    }
  ]
}]
```

------

**Pedoman desain**
+ **Tanggapan peringkat** — Berikan jawaban terbaik dengan skor yang jelas lebih tinggi
+ **Gunakan pemeriksaan yang konsisten** — Evaluasi penyelesaian tugas, kepatuhan format, keamanan, dan panjang yang wajar
+ **Pertahankan penskalaan yang stabil** - Jaga skor tetap normal dan tidak dapat dieksploitasi

# Buat dan kelola pekerjaan fine-tuning untuk model Amazon Nova
<a name="rft-submit-job"></a>

Anda dapat membuat pekerjaan reinforcement fine-tuning (RFT) menggunakan konsol Amazon Bedrock atau API. Pekerjaan RFT dapat memakan waktu beberapa jam tergantung pada ukuran data pelatihan Anda, jumlah zaman, dan kompleksitas fungsi hadiah Anda.

## Prasyarat
<a name="rft-prerequisites"></a>
+ Buat peran layanan IAM dengan izin yang diperlukan. Untuk informasi keamanan dan izin yang komprehensif termasuk izin khusus RFT, lihat. [Akses dan keamanan untuk model Amazon Nova](rft-access-security.md)
+ (Opsional) Enkripsi data input dan output, pekerjaan RFT Anda, atau permintaan inferensi yang dibuat untuk model kustom. Untuk informasi selengkapnya, lihat [Enkripsi model kustom](https://docs.aws.amazon.com/bedrock/latest/userguide/encryption-custom-job.html).

## Buat pekerjaan RFT Anda
<a name="rft-submit-job-how-to"></a>

Pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

------
#### [ Console ]

Untuk mengirimkan pekerjaan RFT di konsol, lakukan langkah-langkah berikut:

1. Buka konsol Amazon Bedrock dan navigasikan ke **model Kustom** di bawah **Tune**.

1. Pilih **Buat**, lalu **Buat pekerjaan fine-tuning tulangan**.

1. Di bagian **Detail model**, pilih **Amazon Nova 2 Lite** sebagai model dasar Anda.

1. Di bagian **Detail kustomisasi**, masukkan nama kustomisasi.

1. Di bagian **Data pelatihan**, pilih sumber data Anda. Pilih dari log pemanggilan yang tersedia yang disimpan di Amazon S3, atau pilih lokasi Amazon S3 dari file kumpulan data pelatihan Anda, atau unggah file langsung dari perangkat Anda.
**catatan**  
Dataset pelatihan Anda harus dalam format data Penyelesaian Obrolan OpenAI. Jika Anda memberikan log pemanggilan dalam format pemanggilan atau percakapan Amazon Bedrock, Amazon Bedrock secara otomatis mengonversinya ke format Penyelesaian Obrolan.

1. Di bagian **fungsi Reward**, siapkan mekanisme reward Anda:
   + **Model sebagai hakim (RLAIF)** - Pilih model dasar yang dihosting Bedrock sebagai hakim dan konfigurasikan instruksi untuk evaluasi. Gunakan ini untuk tugas subjektif seperti moderasi konten.
**catatan**  
Opsi **Model sebagai hakim** konsol secara otomatis mengubah konfigurasi Anda menjadi fungsi Lambda selama pelatihan.
   + **Kode kustom (RLVR)** - Buat fungsi hadiah khusus menggunakan kode Python yang dijalankan melalui fungsi Lambda. Gunakan ini untuk tugas-tugas objektif seperti pembuatan kode.

   Untuk informasi selengkapnya, lihat [Menyiapkan fungsi hadiah untuk model Amazon Nova](reward-functions.md).

1. (Opsional) Di bagian **Hyperparameters**, sesuaikan parameter pelatihan atau gunakan nilai default.

1. Di bagian **Data keluaran**, masukkan lokasi Amazon S3 tempat Amazon Bedrock harus menyimpan output pekerjaan.

1. Di bagian **Konfigurasi peran**, pilih peran yang ada dari daftar tarik-turun atau masukkan nama untuk peran layanan yang akan dibuat.

1. (Opsional) Di bagian **Konfigurasi tambahan**, konfigurasikan data validasi dengan menunjuk ke bucket Amazon S3, setelan enkripsi KMS, serta tag job dan model.

1. Pilih **Buat pekerjaan fine-tuning tulangan untuk memulai pekerjaan**.

------
#### [ API ]

Kirim CreateModelCustomizationJob permintaan dengan `customizationType` set ke`REINFORCEMENT_FINE_TUNING`.

**Bidang yang diperlukan:** `roleArn``baseModelIdentifier`,`customModelName`,`jobName`,,`trainingDataConfig`,`outputDataConfig`, `rftConfig`

**Permintaan contoh:**

```
{
    "roleArn": "arn:aws:iam::123456789012:role/BedrockRFTRole",
    "baseModelIdentifier": "amazon.nova-2.0",
    "customModelName": "my-rft-model",
    "jobName": "my-rft-job",
    "customizationType": "REINFORCEMENT_FINE_TUNING",
    "trainingDataConfig": {
        "s3Uri": "s3://my-bucket/training-data.jsonl"
    },
    "customizationConfig": {
        "rftConfig" : {
            "graderConfig": {
                "lambdaGrader": {
                    "lambdaArn": "arn:aws:lambda:us-east-1:123456789012:function:function-name"
                }
            },
            "hyperParameters": {
                "batchSize": 64,
                "epochCount": 2,
                "evalInterval": 10,
                "inferenceMaxTokens": 8192,
                "learningRate": 0.00001,
                "maxPromptLength": 4096,
                "reasoningEffort": "high",
                "trainingSamplePerPrompt": 4
            }
        }
    },
    "outputDataConfig": {
        "s3Uri": "s3://my-bucket/rft-output/"
    }
}
```

**Permintaan sampel API Python:**

```
import boto3

bedrock = boto3.client(service_name='bedrock')
    
# Set parameters
customizationType = "REINFORCEMENT_FINE_TUNING"
baseModelIdentifier = "arn:aws:bedrock:us-east-1::foundation-model/amazon.nova-2-lite-v1:0:256k"
roleArn = "${your-customization-role-arn}"
jobName = "MyFineTuningJob"
customModelName = "MyCustomModel"

customizationConfig = {
    'rftConfig' : {
        'graderConfig': {
            'lambdaGrader': {
                'lambdaArn': 'arn:aws:lambda:us-east-1:123456789012:function:function-name'
            }
        },
        'hyperParameters': {
            'batchSize': 64,
            'epochCount': 2,
            'evalInterval': 10,
            'inferenceMaxTokens': 8192,
            'learningRate':0.00001,
            'maxPromptLength': 4096,
            'reasoningEffort': 'high',
            'trainingSamplePerPrompt':4
        }
    }
}

trainingDataConfig = {"s3Uri": "s3://${training-bucket}/myInputData/train.jsonl"}
outputDataConfig = {"s3Uri": "s3://${output-bucket}/myOutputData"}

# Create job
response_ft = bedrock.create_model_customization_job(
    jobName=jobName, 
    customModelName=customModelName,
    roleArn=roleArn,
    baseModelIdentifier=baseModelIdentifier,
    customizationConfig=customizationConfig,
    trainingDataConfig=trainingDataConfig,
    outputDataConfig=outputDataConfig,
    customizationType=customizationType
)

jobArn = response_ft['jobArn']
```

------

## Pantau pekerjaan pelatihan RFT Anda
<a name="rft-monitor-job"></a>

Amazon Bedrock menyediakan pemantauan real-time dengan grafik dan metrik visual selama pelatihan RFT. Metrik ini membantu Anda memahami apakah model menyatu dengan benar dan apakah fungsi hadiah secara efektif memandu proses pembelajaran.

### Pelacakan status Job
<a name="rft-job-status"></a>

Anda dapat memantau status pekerjaan RFT Anda melalui fase validasi dan pelatihan di konsol Amazon Bedrock.

**Indikator penyelesaian:**
+ Status Job berubah menjadi **Selesai** saat pelatihan berhasil diselesaikan
+ Model khusus ARN menjadi tersedia untuk penerapan
+ Metrik pelatihan mencapai ambang konvergensi

### Metrik pelatihan waktu nyata
<a name="rft-real-time-metrics"></a>

Amazon Bedrock menyediakan pemantauan waktu nyata selama pelatihan RFT dengan grafik visual yang menampilkan metrik pelatihan dan validasi.

#### Metrik pelatihan inti
<a name="rft-core-metrics"></a>
+ **Kehilangan pelatihan** - Mengukur seberapa baik model belajar dari data pelatihan
+ **Statistik hadiah pelatihan** - Menampilkan skor hadiah yang ditetapkan oleh fungsi hadiah Anda
+ **Margin hadiah** - Mengukur perbedaan antara imbalan respons baik dan buruk
+ **Akurasi pada set pelatihan dan validasi** - Menunjukkan kinerja model pada data pelatihan dan held-out

**Kategori metrik terperinci**
+ **Metrik hadiah** —`critic/rewards/mean`,`critic/rewards/max`, `critic/rewards/min` (distribusi hadiah), dan `val-score/rewards/mean@1` (hadiah validasi)
+ **Perilaku model** — `actor/entropy` (variasi kebijakan; lebih tinggi sama dengan lebih eksplorasi)
+ **Kesehatan pelatihan** — `actor/pg_loss` (kehilangan gradien kebijakan), `actor/pg_clipfrac` (frekuensi pembaruan terpotong), dan `actor/grad_norm` (besarnya gradien)
+ **Karakteristik respons** — `prompt_length/mean``prompt_length/max`,, `prompt_length/min` (statistik token masukan)`response_length/mean`,,`response_length/max`, `response_length/min` (statistik token keluaran), dan `response/aborted_ratio` (tingkat pembangkitan tidak lengkap; 0 sama dengan semua selesai)
+ **Kinerja** — `perf/throughput` (throughput pelatihan), `perf/time_per_step` (waktu per langkah pelatihan), dan `timing_per_token_ms/*` (waktu pemrosesan per token)
+ **Penggunaan sumber daya** —`perf/max_memory_allocated_gb`, `perf/max_memory_reserved_gb` (memori GPU), dan `perf/cpu_memory_used_gb` (memori CPU)

#### Visualisasi kemajuan pelatihan
<a name="rft-progress-visualization"></a>

Konsol menampilkan grafik interaktif yang diperbarui secara real-time saat pekerjaan RFT Anda berlangsung. Visualisasi ini dapat membantu Anda:
+ Lacak konvergensi menuju kinerja optimal
+ Identifikasi potensi masalah pelatihan lebih awal
+ Tentukan titik berhenti yang optimal
+ Bandingkan kinerja di berbagai zaman

## Mengatur inferensi
<a name="rft-setup-inference"></a>

Setelah pekerjaan selesai, terapkan model RFT untuk inferensi sesuai permintaan atau gunakan Provisioned Throughput untuk kinerja yang konsisten. Untuk menyiapkan inferensi, lihat[Siapkan inferensi untuk model khusus](model-customization-use.md).

Gunakan **Test in Playground** untuk mengevaluasi dan membandingkan respons dengan model dasar. Untuk mengevaluasi model RFT Anda yang telah selesai, lihat. [Evaluasi model RFT Anda](rft-evaluate-model.md)