Fine-Tuning yang Diawasi - Amazon Nova

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

Fine-Tuning yang Diawasi

Pengantar

Penyetelan halus yang diawasi menggunakan kumpulan data dengan pasangan input-output untuk tugas yang diinginkan. Dengan kata lain, Anda memberikan contoh petunjuk (pertanyaan, instruksi, dll.) Bersama dengan tanggapan yang benar atau yang diinginkan dan melanjutkan pelatihan model tentang ini. Bobot model disesuaikan untuk meminimalkan kerugian yang diawasi, biasanya lintas entropi antara prediksi dan token respons target.

Kapan menggunakan SFT?

SFT adalah yang terbaik ketika Anda memiliki tugas yang terdefinisi dengan baik dengan output yang diinginkan yang jelas. Jika Anda dapat secara eksplisit mengatakan “Diberikan input X, correct/desired outputnya adalah Y” dan Anda dapat mengumpulkan contoh pemetaan XY tersebut, maka fine-tuning yang diawasi adalah pilihan yang bagus. Beberapa skenario di mana SFT unggul meliputi:

  • Tugas klasifikasi terstruktur atau kompleks: misalnya mengklasifikasikan dokumen internal atau kontrak ke dalam banyak kategori kustom. Dengan SFT, model dapat mempelajari kategori-kategori spesifik ini jauh lebih baik daripada mendorong saja.

  • Tugas penjawab pertanyaan atau transformasi dengan jawaban yang diketahui: misalnya menyempurnakan model untuk menjawab pertanyaan dari basis pengetahuan perusahaan, atau untuk mengonversi data antar format, di mana setiap input memiliki respons yang benar.

  • Pemformatan dan konsistensi gaya: Jika Anda membutuhkan model untuk selalu merespons dalam format atau nada tertentu, Anda dapat menyempurnakan contoh format/nada yang benar. Misalnya, pelatihan pada pasangan respons cepat yang menunjukkan suara atau gaya merek tertentu dapat mengajarkan model dengan gaya itu dalam outputnya. Perilaku mengikuti instruksi sering kali awalnya diajarkan melalui SFT pada contoh perilaku asisten yang baik yang dikuratori.

SFT adalah cara paling langsung untuk mengajarkan LLM keterampilan atau perilaku baru ketika Anda dapat menentukan seperti apa perilaku yang benar. Ini memanfaatkan pemahaman bahasa model yang ada dan memfokuskannya pada tugas Anda. Jangan gunakan SFT ketika kesenjangan adalah pengetahuan daripada perilaku; itu tidak akan membuat model mempelajari fakta baru, jargon, atau peristiwa baru-baru ini. Dalam kasus tersebut, lebih suka pra-pelatihan lanjutan pada korpora dalam domain besar atau generasi tambahan pengambilan untuk membawa pengetahuan eksternal pada kesimpulan. Ketika Anda dapat mengukur kualitas tetapi tidak dapat memberi label satu jawaban yang benar, penyempurnaan penguatan dengan imbalan yang dapat diverifikasi atau LLM-as-judge mungkin lebih disukai daripada SFT.

Bergantung pada kompleksitas tugas dan kinerja model Nova tanpa penyetelan, rencanakan ribuan hingga puluhan ribu demonstrasi per tugas, dengan kualitas data, konsistensi, dan keragaman lebih penting daripada volume mentah.

Kapan menggunakan parameter efisien dan kapan peringkat penuh SFT?

Resep kustomisasi Nova memungkinkan Anda melakukan parameter yang efisien, khususnya LoRa, atau SFT peringkat penuh. Jika Anda menginginkan pembaruan model yang mudah dan hemat biaya, atau memiliki sedikit data, pilih metode hemat parameter sehingga Anda melatih adaptor kecil sambil membiarkan sebagian besar tulang punggung tidak tersentuh (SFT peringkat penuh memperbarui semua parameter model).

Pencampuran Data untuk SFT

Pencampuran data memungkinkan Anda untuk menggabungkan kumpulan data pelatihan khusus Anda dengan data pelatihan milik Nova. Fitur ini tersedia untuk model Nova 1.0 dan Nova 2.0.

Nova Proprietary Data Type: Nova mendukung tipe data SFT teks dan multimodal. Ini diatur ke dalam beberapa kategori data yang masing-masing berisi campuran tugas yang relevan untuk kategori yang sesuai.

Nova Proprietary Data Kategori: Kumpulan data teks mencakup beberapa kategori termasuk: pengambilan keputusan otonom, penyelesaian tugas, kumpulan data berorientasi tujuan (agen), baik set data eksekusi tugas yang tepat penalaran maupun non-penalaran (, mengikuti instruksi)reasoning-instruction-following, urutan yang menunjukkan pemikiran strategis dan pemecahan step-by-step tugas (perencanaan), AI yang bertanggung jawab (rai), konteks panjang, faktualitas, matematika, batang dan banyak lagi. Demikian pula, kumpulan data multimodal mencakup video, tangkapan layar, bagan, dan banyak lagi.

Fitur pencampuran data memungkinkan Anda untuk memadukan sampel pelatihan fine-tuning Anda sendiri dengan sampel dari kumpulan data Nova yang digunakan untuk menyempurnakan Nova. Ini dapat mencegah overfitting pada pelatihan khusus Anda dan “bencana melupakan” kemampuan Nova, atau membantu Anda membangun kemampuan saat berlatih dari pos pemeriksaan baru yang telah dilatih sebelumnya.

Untuk mencampur data Nova, Anda hanya perlu menambahkan blok data_mixing ke file YAMM resep Anda, di bawah bagian training_config. Blok pencampuran data teks dan multi-modal memiliki konten yang berbeda, dan blok pencampuran data agak berbeda untuk Nova 1.0 dan Nova 2.0. Silakan lihat resep yang sesuai.

Model yang Didukung

  • Nova 1.0 (Mikro, Lite, Pro)

  • Nova 2.0 Lite

Modalitas yang Didukung

  • Teks

  • Multimodal

Contoh Konfigurasi YAMM

Contoh Blok Pencampuran Data untuk Pencampuran Teks Nova 1.0

## Run config run: name: "my-lora-run" # A descriptive name for your training job model_type: "amazon.nova-lite-v1:0:300k" # Model variant specification, do not change model_name_or_path: "nova-lite/prod" # Base model path, do not change replicas: 4 # Number of compute instances for training, allowed values are 4, 8, 16 data_s3_path: "" # Customer data path output_s3_path: "" # Output artifact path, SageMaker HyperPod job-specific configuration - not compatible with standard SageMaker Training jobs ## MLFlow configs mlflow_tracking_uri: "" # Required for MLFlow mlflow_experiment_name: "my-lora-experiment" # Optional for MLFlow. Note: leave this field non-empty mlflow_run_name: "my-lora-run" # Optional for MLFlow. Note: leave this field non-empty ## Training specific configs training_config: max_length: 32768 # Maximum context window size (tokens). global_batch_size: 64 # Global batch size, allowed values are 16, 32, 64 trainer: max_epochs: 2 # Number of training epochs model: hidden_dropout: 0.0 # Dropout for hidden states, must be between 0.0 and 1.0 attention_dropout: 0.0 # Dropout for attention weights, must be between 0.0 and 1.0 ffn_dropout: 0.0 # Dropout for feed-forward networks, must be between 0.0 and 1.0 optim: lr: 1e-5 # Learning rate name: distributed_fused_adam # Optimizer algorithm, do not change adam_w_mode: true # Enable AdamW mode eps: 1e-06 # Epsilon for numerical stability weight_decay: 0.0 # L2 regularization strength, must be between 0.0 and 1.0 betas: # Adam optimizer betas, must be between 0.0 and 1.0 - 0.9 - 0.999 sched: warmup_steps: 10 # Learning rate warmup steps constant_steps: 0 # Steps at constant learning rate min_lr: 1e-6 # Minimum learning rate peft: peft_scheme: "lora" # Enable LoRA for parameter-efficient fine-tuning lora_tuning: loraplus_lr_ratio: 8.0 # LoRA+ learning rate scaling factor, must be between 0.0 and 100.0 alpha: 32 # Scaling factor for LoRA weights. Allowed values are 32, 64, 96, 128, 160 and 192 adapter_dropout: 0.01 # Regularization for LoRA parameters. Must be between 0.0 and 1.0 data_mixing: dataset_catalog: sft_text # Nova text dataset catalog sources: customer_data: percent: 50 # Percent of overall mix to draw from customer data nova_data: # The remainder will be drawn from Nova data. The categories below must add to 100 agents: 1 # autonomous decision-making, task completion, goal-oriented behavior in AI systems chat: 51 # Conversational exchanges demonstrating natural dialogue flow code: 8 # Programming examples and solutions spanning multiple languages rai: 1 # ethical AI principles, safety considerations, and responsible technology deployment instruction-following: 13 # precise task execution based on varying levels of user prompts and directives stem: 6 # science, technology, engineering, and mathematics content planning: 2 # sequences demonstrating strategic thinking and step-by-step task breakdown reasoning: 8 # logical problem-solving and analytical thinking demonstrations rag: 1 # retrieval-augmented generation examples translation: 9 # language translation tasks

Contoh Konfigurasi Nova 2.0

run: name: my-lora-sft-run model_type: amazon.nova-2-lite-v1:0:256k model_name_or_path: nova-lite-2/prod data_s3_path: s3://my-bucket-name/train.jsonl replicas: 4 output_s3_path: s3://my-bucket-name/outputs/ mlflow_tracking_uri: "" mlflow_experiment_name: "my-lora-sft-experiment" mlflow_run_name: "my-lora-sft-run" training_config: max_steps: 100 save_steps: 10 save_top_k: 5 max_length: 32768 global_batch_size: 32 reasoning_enabled: true lr_scheduler: warmup_steps: 15 min_lr: 1e-6 optim_config: lr: 1e-5 weight_decay: 0.0 adam_beta1: 0.9 adam_beta2: 0.95 peft: peft_scheme: "lora" lora_tuning: alpha: 64 lora_plus_lr_ratio: 64.0

Pencampuran Data Teks Nova 2.0

data_mixing: dataset_catalog: sft_1p5_text_chat sources: customer_data: percent: 50 nova_data: agents: 1 baseline: 10 chat: 0.5 code: 10 factuality: 0.1 identity: 1 long-context: 1 math: 2 rai: 1 instruction-following: 13 stem: 0.5 planning: 10 reasoning-chat: 0.5 reasoning-code: 0.5 reasoning-factuality: 0.5 reasoning-instruction-following: 45 reasoning-math: 0.5 reasoning-planning: 0.5 reasoning-rag: 0.4 reasoning-rai: 0.5 reasoning-stem: 0.4 rag: 1 translation: 0.1

Nova 1.0 Pencampuran Data Multimodal

data_mixing: dataset_catalog: sft_mm sources: customer_data: percent: 50 nova_data: agents: 11 docs: 17 perception: 10 rag: 4 rai: 3 reasoning: 10 stem: 17 text: 10 video: 18

Pencampuran Data Multimodal Nova 2.0

data_mixing: dataset_catalog: sft_1p5_mm_chat sources: customer_data: percent: 50 nova_data: charts: 1 chat: 38 code: 20 docs: 3 general: 2 grounding: 1 rag: 4 screenshot: 4 text: 8 translation: 4 video: 15

Pos Pemeriksaan Model

Pos Pemeriksaan Nova 1.0

  • nova-<micro/lite/pro>/pretraining-text-partialPRE-TRAINED []: Pos pemeriksaan setelah tahap tingkat pembelajaran konstan dari pra-pelatihan Nova di mana model dilatih pada triliunan token teks. [Hasil Tahap 1]

  • MID-TRAINED [nova-<micro/lite/pro>/pretraining-text-full]: Pos pemeriksaan khusus teks setelah semua tahap pra-pelatihan Nova dan pelatihan menengah dengan triliunan token teks. Gunakan jika Anda tidak ingin model melihat data multi-modal. [Hasil Tahap 3]

  • MID-TRAINED [nova-<lite/pro>/pretraining-mm-full]: Pos pemeriksaan setelah semua tahap pra-pelatihan dan pelatihan menengah Nova, termasuk data multi-modal, dengan triliunan token. [Hasil Tahap 3 dengan data multimodal]

  • FINAL [nova-<micro/lite/pro>/prod]: Pos pemeriksaan akhir yang sepenuhnya selaras yang telah melalui semua langkah pra-pelatihan dan pasca pelatihan. [Hasil dari Tahap 4]

Pos Pemeriksaan Nova 2.0

  • PRE-TRAINED [nova-lite-2/pretraining-text-RD]: Pos pemeriksaan setelah tingkat pembelajaran konstan dan tahap ramp-down di mana model dilatih pada triliunan token. [Hasil Tahap 2]

  • nova-lite-2/pretraining-text-CEMID-TRAINED []: Memungkinkan pelanggan dengan volume menengah data tidak terstruktur untuk memperkenalkan data mereka dengan tingkat pembelajaran yang lebih konservatif daripada pra-pelatihan, menyerap pengetahuan khusus domain sambil menghindari bencana lupa. [Hasil Tahap 3]

  • FINAL [nova-lite-2/prod]: Pos pemeriksaan akhir yang sepenuhnya selaras yang telah melalui semua langkah pra-pelatihan dan pasca pelatihan. [Hasil dari Tahap 4]

Tahapan Pelatihan:

  • Tahap 1: PT Ckpt, pra-pelatihan awal dengan tingkat pembelajaran konstan

  • Tahap 2: PT Ckpt, tingkat pembelajaran ramp-down

  • Tahap 3: PT Ckpt, pelatihan penyuluhan konteks

  • Tahap 4: pelatihan penyelarasan dan keselamatan mengikuti instruksi

Pendekatan Pelatihan

Panduan Pemilihan Pendekatan Pelatihan
Tipe data Volume Data Melakukan Dengan Checkpoint
Data domain mentah tidak terstruktur skala besar (dokumen, log, artikel, kode, dll.) 1T+Token Lanjutan Pra-Pelatihan Akhir Tingkat Pembelajaran Konstan (CLR)
Data domain mentah tidak terstruktur skala besar 100B+Token Pertengahan Pelatihan Akhir dari CLR
Volume data mentah tidak terstruktur yang lebih kecil; Jejak penalaran terstruktur/data CoT 1B+Token Pertengahan Pelatihan Model dasar Nova
Demonstrasi terstruktur (pasangan input-output berkualitas tinggi, instruksi tugas yang dikuratori, dialog multi-putaran) 1K+ Contoh Fine-Tuning yang Diawasi (SFT) Model dasar Nova

Prasyarat sebelum Anda mulai

  • Kami berasumsi bahwa Anda telah menyiapkan klaster SMHP dengan grup instans terbatas (RIG) yang memiliki kapasitas aktif. Jika tidak, silakan lihat di sini untuk menyelesaikan pengaturan SMHP Cluster dan RIG Anda [Docs Link, Workshop Link]

  • Anda akan memerlukan instans EC2 p5.48xlarge untuk menjalankan resep ini. Contoh jumlah minimum yang diperlukan untuk menjalankan resep ini secara efisien adalah sebagai berikut:

    • Nova Lite 2.0 - 4 p5.48xbesar

    • Nova Lite 1.0 — 4 p5.48xbesar

    • Nova Mikro 1.0 - 4 p5.48xlarge

    • Nova Pro 1.0 — 6 p5.48xbesar

  • Instal SageMaker HyperPod CLI Forge Specific menggunakan instruksi yang disediakan di sini

  • Konfirmasikan bahwa Anda dapat terhubung ke cluster Anda menggunakan hyperpod get-clusters

    • Perhatikan bahwa perintah ini akan mencantumkan semua cluster SMHP di akun Anda

  • Konfirmasikan bahwa pelatihan Anda, dan data validasi opsional, tersedia di bucket S3 yang dapat diakses oleh peran eksekusi klaster SMHP Anda. Untuk persiapan data, lihat bagian selanjutnya.

  • Telah penyiapan selesai. Jika Anda belum menyelesaikan pengaturan, silakan ikuti panduan di bawah ini.

  • Verifikasi: Setelah menyelesaikan penyiapan, konfirmasikan bahwa Anda berhasil menjalankan perintah di bawah ini

    aws sagemaker describe-cluster --cluster-name <cluster-name> --region <region> hyperpod connect-cluster --cluster-name cluster-name

Pendekatan Sistematis untuk Mencapai SFT yang Sukses

  • Persiapan Data: Ikuti pedoman yang ditetapkan untuk membuat, membersihkan, atau memformat ulang kumpulan data ke dalam struktur yang diperlukan. Pastikan bahwa input, output, dan informasi tambahan (seperti jejak penalaran atau metadata) diselaraskan dan diformat dengan benar.

  • Konfigurasi Pelatihan: Tentukan bagaimana model akan dilatih. Saat menggunakan Amazon SageMaker HyperPod, konfigurasi ini ditulis dalam file resep YAMM yang mencakup:

    • Jalur sumber data (kumpulan data pelatihan dan validasi)

    • Hiperparameter kunci (jumlah langkah pelatihan, tingkat pembelajaran, ukuran batch)

    • Komponen opsional (parameter pelatihan terdistribusi, dll)

    • Pengaturan Pencampuran Data (mendefinisikan proporsi kategori data pelanggan dan Nova)

  • Optimalkan Parameter Hiper SFT: Nilai parameter resep SFT yang kami rekomendasikan adalah titik awal yang bagus dan pilihan yang kuat. Jika Anda ingin mengoptimalkannya lebih lanjut untuk kasus penggunaan Anda, lakukan beberapa SFT berjalan dengan kombinasi parameter yang berbeda dan pilih yang terbaik. Anda dapat memilih kombinasi parameter mengikuti metode Hyper-Parameter Optimization pilihan Anda. Pendekatan sederhana adalah memvariasikan nilai satu parameter (default*0.5, default, default*2) sambil mempertahankan nilai default lainnya untuk parameter lain, ulangi ini untuk setiap parameter yang ingin Anda optimalkan, dan ulangi jika diperlukan. Parameter yang paling relevan untuk LoRa adalah tingkat pembelajaran, alfa (parameter penskalaan), jumlah zaman untuk melatih dan langkah pemanasan; untuk peringkat penuh itu terutama tingkat pembelajaran, jumlah zaman, dan langkah pemanasan.

Pengurutan Eksperimen dan Pencampuran Data

  • Jika Anda hanya memiliki data SFT (train/dev/test) untuk serangkaian tugas dan hanya peduli tentang kinerja pengujian pada tugas-tugas ini

    • Lakukan SFT tanpa mencampur di pos pemeriksaan [FINAL] Nova. Gunakan parameter hiper SFT default dan optimalkan secara opsional untuk kasus penggunaan Anda. Metrik validasi monitor and/or mengevaluasi pos pemeriksaan menengah untuk kumpulan data yang lebih besar.

  • Jika Anda hanya memiliki data SFT (train/dev/test) untuk serangkaian tugas dan peduli dengan kinerja pengujian pada tugas-tugas ini dan tolok ukur umum dalam domain yang diminati

    • Mulailah dengan melakukan SFT dengan pencampuran data Nova di pos pemeriksaan pra-pelatihan (pos pemeriksaan PRE-TRAINED atau MID-TRAINED, bukan FINAL). Menggunakan pos pemeriksaan perantara memungkinkan model untuk mengintegrasikan data kustom Anda dengan lebih baik dengan data milik Nova sambil mempertahankan kemampuan umum yang kuat.

    • Jalankan pelatihan SFT yang lebih pendek dengan jumlah data Nova yang bervariasi dalam campuran (misalnya, 10%, 25%, 50%, 75%) dan pilihan kategori data Nova yang melengkapi kasus penggunaan Anda (misalnya, pilih instruksi berikut kategori jika Anda peduli dengan instruksi umum mengikuti kemampuan). Pantau metrik validasi dan evaluasi apakah pencampuran membantu kinerja pada tolok ukur umum. Pilih campuran pelatihan dan pos pemeriksaan yang mengarah ke kombinasi kinerja terbaik pada tugas dan kinerja umum Anda. Bergantung pada kasus penggunaan, tugas dan kinerja umum dapat ditingkatkan lebih lanjut menggunakan penyetelan halus penguatan (RFT).

Siapkan Dataset untuk SFT

Nova 1.0: Persiapan data dijelaskan di -fine-tune.html https://docs.aws.amazon.com/sagemaker/ latest/dg/nova

Nova 2.0: Gunakan format Converse API untuk Nova 1.0 https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference-call.html. Format data Nova 2.0 dapat berisi bidang penalaran tambahan: https://docs.aws.amazon.com/bedrock/latest/APIReference/APIReasoningContentBlock_runtime_ .html

Konten penalaran menangkap langkah-langkah pemikiran menengah model sebelum menghasilkan jawaban akhir. Pada assistant gilirannya, gunakan reasoningContent bidang untuk memasukkan jejak penalaran. Gunakan teks biasa untuk penalaran konten, hindari tag markup seperti <thinking> dan </thinking> kecuali secara khusus diperlukan oleh tugas Anda, dan pastikan konten penalaran jelas dan relevan dengan proses pemecahan masalah.

Toolkit AI yang Bertanggung Jawab dan Moderasi Konten

Pengaturan moderasi konten: Pelanggan Nova Forge memiliki akses ke Pengaturan Moderasi Konten yang Dapat Disesuaikan (CCMS) untuk model Nova Lite 1.0 dan Pro 1.0. CCMS memungkinkan Anda menyesuaikan kontrol moderasi konten agar sesuai dengan kebutuhan bisnis spesifik Anda sambil mempertahankan perlindungan AI yang bertanggung jawab. Untuk menentukan apakah kasus penggunaan bisnis Anda memenuhi syarat untuk CCM, hubungi manajer akun Amazon Web Services Anda.

Nova Forge menyediakan Toolkit AI Bertanggung Jawab yang mencakup data pelatihan, tolok ukur evaluasi, dan kontrol runtime untuk membantu Anda menyelaraskan model Anda dengan pedoman AI yang bertanggung jawab dari Nova.

Data pelatihan: Kategori “RAI” dalam pencampuran data berisi kasus dan skenario yang menekankan prinsip AI yang bertanggung jawab, pertimbangan keselamatan, dan penyebaran teknologi yang bertanggung jawab. Gunakan ini untuk menyelaraskan model Anda secara bertanggung jawab selama pra-pelatihan lanjutan.

Evaluasi: Tugas benchmark tersedia untuk menguji kemampuan model Anda dalam mendeteksi dan menolak konten yang tidak pantas, berbahaya, atau salah. Gunakan evaluasi ini untuk mengukur perbedaan antara kinerja model dasar dan kinerja model kustom Anda.

Kontrol runtime: Secara default, runtime Nova mengontrol respons model moderat selama inferensi. Untuk mengubah kontrol ini untuk kasus bisnis spesifik Anda, minta Pengaturan Moderasi Konten yang Dapat Disesuaikan (CCMS) dengan menghubungi manajer akun Amazon Web Services Anda.

Tanggung Jawab Bersama untuk Keselamatan

Keselamatan adalah tanggung jawab bersama antara Amazon Web Services dan pelanggan kami. Mengubah model dasar atau menggunakan pra-pelatihan lanjutan untuk meningkatkan kinerja pada kasus penggunaan tertentu dapat memengaruhi keselamatan, keadilan, dan properti lain dari model baru.

Kami menggunakan metode adaptasi yang kuat untuk meminimalkan perubahan pada keselamatan, keadilan, dan perlindungan lain yang dibangun ke dalam model dasar kami sambil meminimalkan dampak pada kinerja model untuk tugas-tugas yang tidak disesuaikan untuk model.

Anda bertanggung jawab untuk:

  • End-to-end pengujian aplikasi mereka pada kumpulan data yang mewakili kasus penggunaannya

  • Memutuskan apakah hasil tes memenuhi harapan spesifik mereka tentang keamanan, keadilan, dan properti lainnya, serta efektivitas keseluruhan

Untuk informasi selengkapnya, lihat Panduan Penggunaan AI yang Bertanggung Jawab Amazon Web Services, Kebijakan AI Bertanggung Jawab Amazon Web Services, Kebijakan Penggunaan yang AWS Dapat Diterima, dan Ketentuan AWS Layanan untuk layanan yang Anda rencanakan untuk digunakan.

Pengaturan Moderasi Konten yang Dapat Disesuaikan (CCMS)

CCMS memungkinkan Anda untuk menyesuaikan kontrol yang relevan dengan kebutuhan bisnis Anda sambil mempertahankan kontrol penting dan tidak dapat dikonfigurasi yang memastikan penggunaan AI yang bertanggung jawab.

Pengaturan ini memungkinkan pembuatan konten melalui tiga konfigurasi yang tersedia:

  • Keamanan saja

  • Keamanan, konten sensitif, dan keadilan digabungkan

  • Semua kategori digabungkan

Empat kategori moderasi konten adalah:

  1. Keselamatan — Meliputi aktivitas berbahaya, senjata, dan zat yang dikendalikan

  2. Konten sensitif - Termasuk kata-kata kotor, ketelanjangan, dan intimidasi

  3. Keadilan — Mengatasi bias dan pertimbangan budaya

  4. Keamanan — Melibatkan kejahatan dunia maya, malware, dan konten berbahaya

Terlepas dari konfigurasi CCMS Anda, Amazon Nova memberlakukan kontrol penting yang tidak dapat dikonfigurasi untuk memastikan penggunaan AI yang bertanggung jawab, seperti kontrol untuk mencegah bahaya pada anak-anak dan menjaga privasi.

Rekomendasi untuk Menggunakan CCMS

Saat menggunakan CCMS, sebaiknya gunakan Continuous Pre Training (CPT) dan mulai dari pos pemeriksaan penyelarasan pra-RAI (Pra-pelatihan-awal,, atau) daripada pos pemeriksaan. PRE-TRAINING-Mid PRE-TRAINING-Final GA/FINAL Pos pemeriksaan ini belum menjalani pelatihan keselamatan atau diarahkan ke perilaku RAI tertentu, memungkinkan Anda untuk menyesuaikannya secara lebih efisien dengan persyaratan moderasi konten Anda.

Tip: Saat menggunakan CCMS dengan pencampuran data, pertimbangkan untuk menyesuaikan persentase kategori “rai” dalam konfigurasi nova_data Anda agar selaras dengan persyaratan moderasi konten spesifik Anda.

Ketersediaan

CCMS saat ini tersedia untuk pelanggan yang disetujui menggunakan:

  • Model Nova Lite 1.0 dan Pro 1.0

  • Inferensi Berdasarkan Permintaan Amazon Bedrock

  • Wilayah us-east-1 (Virginia N.)

Untuk mengaktifkan CCM untuk model Forge Anda, hubungi manajer akun Amazon Web Services Anda.

Metode Evaluasi

Prasyarat

  • Checkpoint S3 URI dari manifest.json file pekerjaan pelatihan Anda (untuk model terlatih)

  • Dataset evaluasi diunggah ke S3 dalam format yang benar

  • Output jalur S3 untuk hasil evaluasi

Tolok ukur di luar kotak: Gunakan tolok ukur di luar kotak untuk memvalidasi kinerja pada tugas umum. Untuk lebih jelasnya, periksa di sini: https://docs.aws.amazon.com/sagemaker/latest/dg/nova-hp-evaluate.html

Bawa Data Anda Sendiri

Anda juga dapat menyediakan data kustom Anda dengan memformatnya dalam format di bawah ini dan kemudian menggunakan wadah yang disebutkan di bawah ini untuk mendapatkan hasil inferensi bersama dengan probabilitas log untuk kalibrasi jika diperlukan.

Buat jsonl per tugas dengan struktur berikut:

{ "metadata": "{key:4, category:'apple'}", "system": "arithmetic-patterns, please answer the following with no other words: ", "query": "What is the next number in this series? 1, 2, 4, 8, 16, ?", "response": "32" }

Output yang dihasilkan selama fase inferensi pekerjaan evaluasi akan memiliki struktur sebagai berikut:

{ "prompt": "[{'role': 'system', 'content': 'arithmetic-patterns, please answer the following with no other words: '}, {'role': 'user', 'content': 'What is the next number in this series? 1, 2, 4, 8, 16, ?'}]", "inference": "['32']", "gold": "32", "metadata": "{key:4, category:'apple'}" }

Deskripsi bidang:

  • prompt: Input yang diformat dikirim ke model

  • inference: Respons yang dihasilkan model

  • gold: Diharapkan jawaban yang benar dari dataset input, bidang respons dari input

  • metadata: Metadata opsional dilewatkan dari input

Siapkan Evaluasi Config

Perintah untuk meluncurkan pekerjaan evaluasi. Gunakan "--override-parameters" untuk memodifikasi entri apa pun dari resep.

hyperpod start-job -n kubeflow \ --recipe evaluation/nova/nova_micro_p5_48xl_bring_your_own_dataset_eval \ --override-parameters '{ "instance_type": "p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-evaluation-repo:SM-HP-Eval-latest", "recipes.run.name": "<your-eval-job-name>", "recipes.run.model_name_or_path": "<checkpoint-s3-uri>", "recipes.run.output_s3_path": "s3://<your-bucket>/eval-results/", "recipes.run.data_s3_path": "s3://<your-bucket>/eval-data.jsonl" }'

Praktik Terbaik

  • Prioritaskan kualitas data daripada volume: Data pelatihan berkualitas tinggi, beragam, dan representatif lebih berharga daripada data berkualitas rendah dalam jumlah besar.

  • Sertakan reasoning-instruction-following kategori: Saat menggunakan pencampuran data, sertakan kategori reasoning-instruction-following "" untuk mempertahankan kinerja generik yang kuat di seluruh tugas.

  • Gunakan tingkat pembelajaran default: Mulailah dengan tingkat pembelajaran default (1e-5 untuk LoRa, 5e-6 untuk SFT peringkat penuh) dan sesuaikan hanya jika diperlukan berdasarkan metrik validasi.

  • Pencampuran data Balance Nova: Campurkan data Nova maksimum 50% untuk keseimbangan kinerja latensi yang optimal. Persentase yang lebih tinggi dapat meningkatkan kemampuan umum tetapi dapat meningkatkan waktu pelatihan.

  • Monitor metrik validasi: Evaluasi pos pemeriksaan perantara secara teratur selama pelatihan untuk mendeteksi overfitting atau penurunan kinerja lebih awal.

  • Uji pada kumpulan data representatif: Pastikan kumpulan data evaluasi Anda secara akurat mewakili kasus penggunaan produksi Anda untuk penilaian kinerja yang bermakna.

Siapkan Training Job Config

Parameter Hiper

Set lengkap parameter hiper selain pencampuran data:

## Run config run: name: my-lora-sft-run model_type: amazon.nova-2-lite-v1:0:256k model_name_or_path: nova-lite-2/prod data_s3_path: s3://my-bucket-name/train.jsonl # SageMaker HyperPod (SMHP) only and not compatible with SageMaker Training jobs. Note replace my-bucket-name with your real bucket name for SMHP job replicas: 4 # Number of compute instances for training, allowed values are 4, 8, 16, 32 output_s3_path: s3://my-bucket-name/outputs/ # Output artifact path (Hyperpod job-specific; not compatible with standard SageMaker Training jobs). Note replace my-bucket-name with your real bucket name for SMHP job ## MLFlow configs mlflow_tracking_uri: "" # Required for MLFlow mlflow_experiment_name: "my-lora-sft-experiment" # Optional for MLFlow. Note: leave this field non-empty mlflow_run_name: "my-lora-sft-run" # Optional for MLFlow. Note: leave this field non-empty training_config: max_steps: 100 # Maximum training steps. Minimal is 4. save_steps: 10 # This parameter suggests after how many training steps the checkpoints will be saved. Should be less than or equal to max_steps(please override this value with a numerical value equal or less than max_steps value; min: 4) save_top_k: 5 # Keep top K best checkpoints. Note supported only for SageMaker HyperPod jobs. Minimal is 1. max_length: 32768 # Sequence length (options: 8192, 16384, 32768 [default], 65536) global_batch_size: 32 # Golbal batch size (options: 32, 64, 128) reasoning_enabled: true # If data has reasoningContent, set to true; otherwise False lr_scheduler: warmup_steps: 15 # Learning rate warmup steps. Recommend 15% of max_steps min_lr: 1e-6 # Minimum learning rate, must be between 0.0 and 1.0 optim_config: # Optimizer settings lr: 1e-5 # Learning rate, must be between 0.0 and 1.0 weight_decay: 0.0 # L2 regularization strength, must be between 0.0 and 1.0 adam_beta1: 0.9 # Exponential decay rate for first-moment estimates, must be between 0.0 and 1.0 adam_beta2: 0.95 # Exponential decay rate for second-moment estimates, must be between 0.0 and 1.0 peft: # Parameter-efficient fine-tuning (LoRA) peft_scheme: "lora" # Enable LoRA for PEFT lora_tuning: alpha: 64 # Scaling factor for LoRA weights ( options: 32, 64, 96, 128, 160, 192), lora_plus_lr_ratio: 64.0 # LoRA+ learning rate scaling factor (0.0–100.0)

Parameter yang paling relevan untuk LoRa adalah tingkat pembelajaran, alfa (parameter penskalaan), jumlah zaman untuk melatih dan langkah pemanasan; untuk peringkat penuh itu terutama tingkat pembelajaran, jumlah zaman, dan langkah pemanasan. Resep sudah diisi sebelumnya dengan default yang direkomendasikan.

Mengatur Blok Pencampuran Data

Tambahkan bagian data_mixing ke resep Anda dengan distribusi persentase yang sesuai di seluruh kategori kumpulan data.

Di bawah ini kami menjelaskan setiap kategori data Nova yang tersedia.

Konfigurasi Nova 1.0 dengan pencampuran Data

data_mixing: dataset_catalog: sft_text # Nova text dataset catalog sources: customer_data: percent: 50 # Percent of overall mix to draw from customer data nova_data: # The remainder will be drawn from Nova data. The categories below must add to 100 agents: 1 # autonomous decision-making, task completion, goal-oriented behavior in AI systems chat: 51 # Conversational exchanges demonstrating natural dialogue flow code: 8 # Programming examples and solutions spanning multiple languages rai: 1 # ethical AI principles, safety considerations, and responsible technology deployment instruction-following: 13 # precise task execution based on varying levels of user prompts and directives stem: 6 # Technical content covering science, technology, engineering, and mathematics planning: 2 # Sequences demonstrating strategic thinking and step-by-step task breakdown reasoning: 8 # Logical deduction, critical thinking, and analytical problem-solving scenarios rag: 1 # combining retrieved external knowledge with generated responses translation: 9 # Multi-language content pairs showing accurate translation

Apa arti kategori ini?

Nova 1.0 Kategori Data Teks
Nama Kategori Detail info
pelaku Data pelatihan berfokus pada pengambilan keputusan otonom, penyelesaian tugas, dan perilaku berorientasi pada tujuan dalam sistem AI
ngobrol Pertukaran percakapan yang menunjukkan aliran dialog alami, pemeliharaan konteks, dan interaksi sosial yang sesuai
code Contoh dan solusi pemrograman yang mencakup berbagai bahasa, skenario debugging, dan praktik terbaik pengembangan perangkat lunak
rai Kasus dan skenario yang menekankan prinsip AI etis, pertimbangan keselamatan, dan penerapan teknologi yang bertanggung jawab
instruksi-mengikuti Contoh pelaksanaan tugas yang tepat berdasarkan berbagai tingkat permintaan dan arahan pengguna
asal Konten teknis yang mencakup sains, teknologi, teknik, dan matematika, termasuk pemecahan masalah dan konsep teoritis
perencanaan Urutan yang menunjukkan pemikiran strategis, pemecahan step-by-step tugas, dan alokasi sumber daya yang efisien
pemikiran Deduksi logis, pemikiran kritis, dan skenario pemecahan masalah analitis dengan rantai penalaran yang jelas
lap Contoh menggabungkan pengetahuan eksternal yang diambil secara efektif dengan tanggapan yang dihasilkan untuk memberikan informasi kontekstual yang akurat
terjemahan Pasangan konten multi-bahasa menunjukkan terjemahan yang akurat sambil mempertahankan konteks, nada, dan nuansa budaya

Pencampuran Data Multimodal (Nova 1.0)

data_mixing: dataset_catalog: sft_mm # Nova multi-modal dataset catalog sources: customer_data: percent: 50 # Percent of overall mix to draw from customer data nova_data: # The remainder will be drawn from Nova data. The categories below must add to 100 agents: 11 # Combining visual and textual inputs docs: 17 # Document-centric data combining text, images, layouts, and formatting perception: 10 # Visual-linguistic pairs t rag: 4 # Combining retrieved external knowledge with generated responses rai: 3 # Ethical AI principles, safety considerations, and responsible technology deployment reasoning: 10 # Logical analysis, problem-solving, and drawing conclusions stem: 17 # Technical content pairing visual elements (diagrams, charts, equations) with text text: 10 # A balanced pool of contextual text data create from the text-only SFT datasets video: 18 # Video datasets

Apa arti kategori ini?

Nova 1.0 Multimodal Data Kategori
Nama Kategori Detail info
pelaku Pasangan pelatihan menggabungkan input visual dan tekstual yang menunjukkan bagaimana sistem AI harus menafsirkan, bertindak atas, dan berinteraksi dengan informasi lingkungan multi-sensorik
docs Data dokumen-sentris yang menggabungkan teks, gambar, tata letak, dan pemformatan untuk melatih model dalam memahami dan memproses berbagai jenis dan struktur dokumen untuk membantu konsep seperti pengenalan konten PDF
persepsi Model pengajaran pasangan visual-linguistik untuk secara akurat menggambarkan, menafsirkan, dan bernalar tentang gambar, video, dan input visual lainnya dalam bahasa alami
lap Contoh pengambilan multimodal yang menunjukkan cara menggabungkan dan mereferensikan pengetahuan eksternal visual dan tekstual secara efektif untuk menghasilkan respons kontekstual yang akurat
pemikiran Kasus menggabungkan elemen visual dan tekstual yang menunjukkan analisis logis, pemecahan masalah, dan menarik kesimpulan di berbagai modalitas
asal Konten teknis memasangkan elemen visual (diagram, bagan, persamaan) dengan teks untuk mengajarkan konsep ilmiah, matematika, dan teknis serta pemecahan masalah
text Kumpulan data teks kontekstual yang seimbang dibuat dari kategori dataset SFT Nova khusus teks untuk memberikan kemampuan generalis
video Konten visual berbasis gerakan berfokus pada pemahaman temporal dan pemahaman visual-naratif berurutan

Konfigurasi Nova 2.0 dengan pencampuran data

data_mixing: dataset_catalog: sft_1p5_text_chat # Nova text dataset catalog sources: customer_data: percent: 50 # Percent of overall mix to draw from customer data nova_data: # The remainder will be drawn from Nova data. The categories below must add to 100 agents: 1 # autonomous decision-making, task completion, goal-oriented behavior in AI systems baseline: 10 # [New in Nova 1.5] chat: 0.5 # Conversational exchanges demonstrating natural dialogue flow code: 10 # Programming examples and solutions spanning multiple languages factuality: 0.1 # [New in Nova 1.5] identity: 1 # [New in Nova 1.5] long-context: 1 # [New in Nova 1.5] math: 2 # [New in Nova 1.5] rai: 1 # ethical AI principles, safety considerations, and responsible technology deployment instruction-following: 13 # precise task execution based on varying levels of user prompts and directives stem: 0.5 # Technical content covering science, technology, engineering, and mathematics planning: 10 # Sequences demonstrating strategic thinking and step-by-step task breakdown reasoning-chat: 0.5 reasoning-code: 0.5 reasoning-factuality: 0.5 reasoning-instruction-following: 45 reasoning-math: 0.5 reasoning-planning: 0.5 reasoning-rag: 0.4 reasoning-rai: 0.5 reasoning-stem: 0.4 rag: 1 # combining retrieved external knowledge with generated responses translation: 0.1

Apa arti kategori ini?

Kategori Data Teks Nova 2.0
Nama Kategori Detail info
pelaku Data pelatihan berfokus pada pengambilan keputusan otonom, penyelesaian tugas, dan perilaku berorientasi pada tujuan dalam sistem AI
garis dasar Data bahasa fundamental berfokus pada pemahaman umum, komunikasi dasar, dan kemampuan linguistik inti
ngobrol Pertukaran percakapan yang menunjukkan aliran dialog alami, pemeliharaan konteks, dan interaksi sosial yang sesuai
code Pemrograman kode sumber, dokumentasi, dan diskusi teknis dari berbagai bahasa dan platform pemrograman.
faktualitas Bahan referensi dan informasi terverifikasi yang berfokus pada akurasi, validasi sumber, dan penilaian kebenaran
identitas Kerangka kepribadian dan pola perilaku berfokus pada sifat karakter, nilai, dan gaya interaksi yang konsisten
konteks panjang Teks yang diperluas dan narasi kompleks difokuskan pada pemeliharaan koherensi dan relevansi di seluruh pertukaran yang panjang
matematika Konten matematika termasuk buku teks, masalah, solusi, dan diskusi matematika.
rai Kasus dan skenario yang menekankan prinsip AI etis, pertimbangan keselamatan, dan penerapan teknologi yang bertanggung jawab
instruksi-mengikuti Contoh pelaksanaan tugas yang tepat berdasarkan berbagai tingkat permintaan dan arahan pengguna
asal Konten teknis yang mencakup sains, teknologi, teknik, dan matematika, termasuk pemecahan masalah dan konsep teoritis
perencanaan Urutan yang menunjukkan pemikiran strategis, pemecahan step-by-step tugas, dan alokasi sumber daya yang efisien
penalaran-obrolan Skenario dialog analitis berfokus pada diskusi logis dan alur percakapan terstruktur
kode penalaran Tantangan pemrograman dan masalah algoritmik difokuskan pada pengembangan solusi sistematis
penalaran-faktualitas Skenario evaluasi informasi berfokus pada penilaian kritis dan proses verifikasi
reasoning-instruction-following Analisis tugas kompleks berfokus pada interpretasi sistematis dan eksekusi metodis
penalaran-matematika Skenario pemecahan masalah matematika berfokus pada perkembangan logis dan strategi solusi
penaakalan-perencanaan Skenario pengambilan keputusan strategis berfokus pada pendekatan sistematis untuk pencapaian tujuan
penalaran-kain Skenario pengambilan informasi dan sintesis berfokus pada pemahaman kontekstual dan aplikasi yang relevan
penalaran-rai Skenario pengambilan keputusan etis berfokus pada evaluasi sistematis keamanan dan keadilan AI
penaakalan-batang Skenario pemecahan masalah ilmiah yang berfokus pada analisis metodis dan pengembangan solusi
lap Contoh menggabungkan pengetahuan eksternal yang diambil secara efektif dengan tanggapan yang dihasilkan untuk memberikan informasi kontekstual yang akurat
terjemahan Pasangan konten multi-bahasa menunjukkan terjemahan yang akurat sambil mempertahankan konteks, nada, dan nuansa budaya

Pencampuran Data Multimodal (Nova 2.0)

data_mixing: dataset_catalog: sft_1p5_mm_chat # Nova text dataset catalog sources: customer_data: percent: 50 # Percent of overall mix to draw from customer data nova_data: # The remainder will be drawn from Nova data. The categories below must add to 100 charts: 1 chat: 38 code: 20 docs: 3 general: 2 grounding: 1 rag: 4 screenshot: 4 text: 8 translation: 4 video: 15

Catatan: Nova 2.0 menyertakan dukungan kategori data video yang tidak tersedia di Nova 1.0.

Apa arti kategori ini?

Kategori Data Multimodal Nova 2.0
Nama Kategori Detail info
grafik Representasi visual dan deskripsi grafik, diagram lingkaran, diagram batang, plot garis, dan visualisasi statistik lainnya untuk membantu model memahami dan mengkomunikasikan informasi kuantitatif secara efektif
ngobrol Data percakapan dipasangkan dengan elemen visual yang berfokus pada pemahaman dialog kontekstual dan interaksi berbasis gambar
code Antarmuka pemrograman dan lingkungan pengembangan yang berfokus pada interpretasi kode visual, tangkapan layar IDE, dan diagram teknis
docs Data dokumen-sentris yang menggabungkan teks, gambar, tata letak, dan pemformatan untuk melatih model dalam memahami dan memproses berbagai jenis dan struktur dokumen untuk membantu konsep seperti pengenalan konten PDF
umum Beragam konten visual-tekstual berfokus pada pemahaman luas gambar, grafik, dan teks deskriptif yang menyertainya
mendasari Bahan referensi visual dan citra berlabel berfokus pada menghubungkan konsep bahasa dengan representasi visual dunia nyata
lap Contoh pengambilan multimodal yang menunjukkan cara menggabungkan dan mereferensikan pengetahuan eksternal visual dan tekstual secara efektif untuk menghasilkan respons kontekstual yang akurat
tangkapan layar Antarmuka aplikasi menangkap dan gambar tampilan digital yang berfokus pada pemahaman antarmuka perangkat lunak dan interaksi digital
text Kumpulan data teks kontekstual yang seimbang dibuat dari kategori dataset SFT Nova khusus teks untuk memberikan kemampuan generalis
terjemahan Konten visual lintas bahasa berfokus pada interpretasi multibahasa teks dalam gambar dan elemen visual budaya
video Konten visual berbasis gerakan berfokus pada pemahaman temporal dan pemahaman visual-naratif berurutan

Cara Meluncurkan Pekerjaan

Anda juga dapat merujuk ke README, jika Anda hanya perlu mendapatkan detail penting untuk memulai lari SFT pertama.

Informasi Kontainer:

Informasi Kontainer dan Perintah Peluncuran
Model Teknik Subkategori URI citra Perintah Peluncur Hyperpod
Nova 1.0 Penyetelan halus SFT/PEFT 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-SFT-Terbaru nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:SM-HP-SFT-terbaru”} 'tuning/nova/nova_1_0/nova_micro/SFT/nova_micro_1_0_p5_gpu_sft \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo
Nova 1.0 Penyetelan halus SFT dengan Pencampuran Data 708977205387.dkr. ecr.us-east-1.amazonaws.com /:HP-SFT-DATAMIX nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:HP-SFT-DATAMIX”} 'tuning/nova/forge/nova_1_0/nova_micro/SFT/nova_micro_1_0_p5_gpu_sft_text_with_datamix \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo
Nova 2.0 Penyetelan halus Teks SFT 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-SFT-V2-Terbaru nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:SM-HP-SFT-V2-terbaru”} 'tuning/nova/nova_2_0/nova_lite/SFT/nova_lite_2_0_p5_gpu_sft \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo
Nova 2.0 Penyetelan halus Teks SFT+Datamixing 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-SFT-V2-DataMixing-terbaru nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:SM-HP-SFT-V2-DataMixing-terbaru”} 'tuning/nova/forge/nova_2_0/nova_lite/SFT/nova_lite_2_0_p5_gpu_sft_text_with_datamix \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo
Nova 2.0 Penyetelan halus SFT MM 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-SFT-V2-Terbaru nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:SM-HP-SFT-V2-terbaru”} 'tuning/nova/nova_2_0/nova_lite/SFT/nova_lite_2_0_p5_gpu_sft \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo
Nova 2.0 Penyetelan halus Pemekatan Data SFT MM+ 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-SFT-V2-DataMixing-terbaru nova-fine-tune-repo hyperpod start-job\ -n kubeflow\ --resep baik-baik saja- -:SM-HP-SFT-V2-DataMixing-terbaru”} 'tuning/nova/forge/nova_2_0/nova_lite/SFT/nova_lite_2_0_p5_gpu_sft_mm_with_datamix \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/novafine-tune-repo

Setelah Anda semua setup, mulai dari root sagemaker-hyperpod-cli repositori, navigasikan ke folder resep nova sft default

  • cd/src/hyperpod_cli/sagemaker_hyperpod_recipes/recipes_collection/recipes/training/nova/

  • Di sini Anda dapat memilih apakah Anda ingin menjalankan resep nova 1 atau nova 2 berdasarkan pilihan model dasar.

Untuk Nova 1.0 sft:

  • Jika Anda ingin menggunakan pekerjaan sft biasa, Anda harus dapat melihat satu resep di bawah folder ini

    • cd/src/hyperpod_cli/sagemaker_hyperpod_recipes/recipes_collection/recipes/fine-tuning/nova_1_0/nova_lite/SFTdan kemudian Anda harus dapat melihat satu resep di bawah folder ini bernama nova_lite_1_0_p5x8_gpu_sft.yaml

  • Jika Anda ingin menggunakan datamixing sft Job, Anda dapat menavigasi ke folder resep sft Forge

    • cd/src/hyperpod_cli/sagemaker_hyperpod_recipes/recipes_collection/recipes/fine-tuning/nova/forge/nova_1_0/nova_lite/SFTdan Anda seharusnya dapat melihat satu resep di bawah folder ini bernama: nova_lite_1_0_p5x8_gpu_sft_with_datamix.yaml

  • Edit bagian dalam resep yang diperlukan oleh pekerjaan seperti name, data_s3_path, validation_s3_path, output_s3_path, dan max_steps.Karena kami melakukan sft, gagasan epoch tidak berlaku di sini.

Untuk Nova 2.0 sft:

  • Jika Anda ingin menggunakan pekerjaan sft biasa, Anda harus dapat melihat satu resep di bawah folder ini

    • cd/src/hyperpod_cli/sagemaker_hyperpod_recipes/recipes_collection/recipes/fine-tuning/nova_2_0/nova_lite/SFTdan kemudian Anda harus dapat melihat satu resep di bawah folder ini bernama nova_lite_2_0_p5x8_gpu_sft.yaml

  • Jika Anda ingin menggunakan datamixing sft Job, Anda dapat menavigasi ke folder resep sft Forge

    • cd/src/hyperpod_cli/sagemaker_hyperpod_recipes/recipes_collection/recipes/fine-tuning/nova/forge/nova_2_0/nova_lite/SFTdan Anda seharusnya dapat melihat satu resep di bawah folder ini bernama: nova_lite_2_0_p5x8_gpu_sft_with_datamix.yaml

  • Edit bagian dalam resep yang diperlukan oleh pekerjaan seperti name, data_s3_path, validation_s3_path, output_s3_path, dan max_steps. Karena kami melakukan sft, gagasan tentang zaman tidak berlaku di sini.

Konfigurasi pencampuran data akan terlihat sama, tetapi dengan bagian pencampuran data tambahan di bagian bawah yang mirip dengan ini

data_mixing: dataset_catalog: sft_text_lite sources: nova_data: # percent inputs for Nova data must sum to 100%; use 0% if you want to exclude a data grouping agents: 20 business-and-finance: 20 scientific: 20 code: 20 factual-and-news: 20 longform-text: 0 health-and-medicine: 0 humanities-and-education: 0 legal: 0 math: 0 additional-languages: 0 social-and-personal-interest: 0 entertainment: 0 reasoning: 0 other: 0 tables: 0 customer_data: # percent input of customer data. 100 = use only customer data, 0 = use only the nova_data mix above percent: 25

Ada dua kategori data tingkat atas di sini:

  • nova_data: Ini adalah pencampuran data aktual dan dibagi lagi menjadi lebih banyak kategori. Sangat penting bahwa mereka berjumlah hingga 100%

    • Rincian lengkap dari kategori ini termasuk jumlah token dapat ditemukan di bawah

  • customer_data: Ini adalah data pelatihan Anda yang dirujuk dalam kunci data_s3_path di bagian atas yaml Anda. Persentase yang diberikan di sini menentukan berapa persentase yang dihasilkan untuk nova_data. Misalnya, dalam pilihan persen di atas, selama pelatihan kami akan menggunakan 25% customer_data dan 75% nova_data yang 15% akan menjadi agen, 15% akan menjadi, 15% akan ilmiah business-and-finance, 15% akan menjadi kode, dan 15% akan menjadi factual-and-news

Tip: Jalankan pip install -e. sekali lagi dan Anda siap untuk mengirimkan pekerjaan Anda!

Kami akan mengesampingkan beberapa parameter di sini untuk menggunakan pencampuran data:

hyperpod start-job \ -n kubeflow \ --recipe fine-tuning/nova/forge/nova_2_0/nova_lite/SFT/nova_lite_2_0_p5x8_gpu_sft_with_datamix \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "recipes.run.name": "nova-sft-datamixing", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-fine-tune-repo:SM-HP-SFT-V2-Datamix", "recipes.run.data_s3_path": "s3://sft-data/sft_train_data.jsonl", "recipes.run.validation_data_s3_path": "s3://sft-data/sft_val_data.jsonl", "recipes.run.output_s3_path": "s3://sft-data/output/ }'

Output Anda harus berisi nama pekerjaan sebagai berikut:

⚡ MY Desktop ⚡ % hyperpod start-job \ -n kubeflow \ --recipe training/nova/forge/nova_2_0/nova_lite/sft/nova_lite_2_0_p5x8_gpu_pretrain_with_datamix \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "recipes.run.name": "nova-sft-datamixing", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-fine-tune-repo:SM-HP-SFT-V2-Datamix", "recipes.run.data_s3_path": "s3://sft-data/sft_train_data.jsonl", "recipes.run.validation_data_s3_path": "3://sft-data/sft_val_data.jsonl", "recipes.run.output_s3_path": "3://sft-data/output/ }'

Output akan seperti ini:

Final command: python3 /local/home/my/Downloads/sagemaker-hyperpod-cli/src/hyperpod_cli/sagemaker_hyperpod_recipes/main.py recipes=training/nova/nova_micro_p5x8_gpu_pretrain cluster_type=k8s cluster=k8s base_results_dir=/local/home/niphaded/Downloads/sagemaker-hyperpod-cli/results cluster.pullPolicy="IfNotPresent" cluster.restartPolicy="OnFailure" cluster.namespace="kubeflow" instance_type="p5d.48xlarge" container="900867814919.dkr.ecr.us-east-1.amazonaws.com/nova-fine-tune-repo:sft-datamix-rig-final" Prepared output directory at /local/home/my/Downloads/sagemaker-hyperpod-cli/results/my-sft-run-wzdyn/k8s_templates Found credentials in shared credentials file: ~/.aws/credentials Helm script created at /local/home/my/Downloads/sagemaker-hyperpod-cli/results/my-sft-run-wzdyn/niphaded-sft-run-wzdyn_launch.sh Running Helm script: /local/home/my/Downloads/sagemaker-hyperpod-cli/results/my-sft-run-wzdyn/niphaded-sft-run-wzdyn_launch.sh NAME: my-sft-run-wzdyn LAST DEPLOYED: Tue Aug 26 16:21:06 2025 NAMESPACE: kubeflow STATUS: deployed REVISION: 1 TEST SUITE: None Launcher successfully generated: /local/home/my/Downloads/sagemaker-hyperpod-cli/src/hyperpod_cli/sagemaker_hyperpod_recipes/launcher/nova/k8s_templates/SFT { "Console URL": "https://us-east-1.console.aws.amazon.com/sagemaker/home?region=us-east-1#/cluster-management/hyperpod-eks-ga-0703" }

Anda dapat melihat status pekerjaan Anda menggunakan hyperpod list-pods -n kubeflow --job-name my-sft-run-wzdyn

hyperpod list-pods -n kubeflow --job-name my-sft-run-wzdyn { "pods": [ { "PodName": "my-sft-run-wzdyn-master-0", "Namespace": "kubeflow", "Status": "Pending", "CreationTime": "2025-08-26 16:21:06+00:00" }, { "PodName": "my-sft-run-wzdyn-worker-0", "Namespace": "kubeflow", "Status": "Pending", "CreationTime": "2025-08-26 16:21:06+00:00" } ] }

atau langsung gunakan perintah kubectl untuk menemukannya.

Misalnya,

kubectl get pods -o wide -w -n kubeflow | (head -n1 ; grep my-sft-run) NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES my-sft-run-5suc8-master-0 0/1 Completed 0 3h23m 172.31.32.132 hyperpod-i-00b3d8a1bf25714e4 <none> <none> my-sft-run-5suc8-worker-0 0/1 Completed 0 3h23m 172.31.44.196 hyperpod-i-0aa7ccfc2bd26b2a0 <none> <none> my-sft-run-5suc8-worker-1 0/1 Completed 0 3h23m 172.31.46.84 hyperpod-i-026df6406a7b7e55c <none> <none> my-sft-run-5suc8-worker-2 0/1 Completed 0 3h23m 172.31.28.68 hyperpod-i-0802e850f903f28f1 <none> <none>

Kiat pro: Pastikan untuk selalu menggunakan flag -o wide karena simpul EKS tempat pekerjaan berjalan akan membantu Anda menemukan log Anda lebih cepat di AWS UI

Cara Memantau Job

Anda dapat melihat log Anda salah satu dari tiga cara:

a) Menggunakan CloudWatch

Log Anda tersedia di akun Amazon Web Services Anda yang berisi klaster hyperpod di bawahnya CloudWatch. Untuk melihatnya di browser Anda, navigasikan ke CloudWatch beranda di akun Anda dan cari nama cluster Anda. Misalnya, jika klaster Anda dipanggil my-hyperpod-rig, grup log akan memiliki awalan:

  • Grup log:/aws/sagemaker/Clusters/my-hyperpod-rig/ {UUID}

  • Setelah Anda berada di grup log, Anda dapat menemukan log spesifik Anda menggunakan ID instance node seperti - hyperpod-i-00b3d8a1bf25714e4.

    • i-00b3d8a1bf25714e4 di sini mewakili nama mesin ramah hyperpod tempat pekerjaan pelatihan Anda berjalan. Ingat bagaimana pada perintah sebelumnya kubectl get pods -o wide -w -n kubeflow | (head -n1; grep) output kita menangkap sebuah kolom bernama NODE. my-cpt-run

    • Run node “master” dalam hal ini berjalan pada hyperpod-i-00b3d8a1bf25714e4 dan dengan demikian kita akan menggunakan string itu untuk memilih grup log untuk dilihat. Pilih salah satu yang mengatakan SagemakerHyperPodTrainingJob /rig-group/ [NODE]

Log Anda akan terlihat seperti ini:

b) Menggunakan CloudWatch Wawasan

Jika Anda memiliki nama pekerjaan yang berguna dan tidak ingin melalui semua langkah di atas, Anda cukup menanyakan semua log di bawah/aws/sagemaker/Clusters/my-hyperpod-rig/ {UUID} untuk menemukan log individu.

CPT

fields @timestamp, @message, @logStream, @log | filter @message like /(?i)Starting CPT Job/ | sort @timestamp desc | limit 100

Untuk penyelesaian pekerjaan ganti Memulai SFT Job dengan SFT Job selesai

Kemudian Anda dapat mengklik hasil dan memilih salah satu yang mengatakan “Epoch 0" karena itu akan menjadi node master Anda.

C) Menggunakan aws cli

Anda dapat memilih untuk mengekor log Anda menggunakan. Sebelum melakukannya, periksa versi aws cli Anda menggunakan aws --version. Disarankan juga untuk menggunakan skrip utilitas ini yang membantu dalam pelacakan log langsung di terminal Anda

untuk V1:

aws logs get-log-events \ --log-group-name /aws/sagemaker/YourLogGroupName \ --log-stream-name YourLogStream \ --start-from-head | jq -r '.events[].message'

untuk V2:

aws logs tail /aws/sagemaker/YourLogGroupName \ --log-stream-name YourLogStream \ --since 10m \ --follow

D) Mengatur Aliran Ml:

Anda dapat melacak metrik melalui MLFlow.

Buat MLflow aplikasi

Menggunakan UI Studio: Jika Anda membuat pekerjaan pelatihan melalui UI Studio, MLflow aplikasi default dibuat secara otomatis dan dipilih secara default di bawah Opsi Lanjutan.

Menggunakan CLI: Jika Anda menggunakan CLI, Anda harus membuat MLflow aplikasi dan meneruskannya sebagai input ke permintaan API pekerjaan pelatihan.

mlflow_app_name="<enter your MLflow app name>" role_arn="<enter your role ARN>" bucket_name="<enter your bucket name>" region="<enter your region>" mlflow_app_arn=$(aws sagemaker create-mlflow-app \ --name $mlflow_app_name \ --artifact-store-uri "s3://$bucket_name" \ --role-arn $role_arn \ --region $region)

Akses MLflow aplikasi

Menggunakan CLI: Buat URL yang telah ditentukan sebelumnya untuk mengakses UI aplikasi: MLflow

aws sagemaker create-presigned-mlflow-app-url \ --arn $mlflow_app_arn \ --region $region \ --output text

Setelah ML Flow disiapkan, Anda dapat meneruskan URI dalam resep Anda atau menggunakan override saat memulai pekerjaan. Salah satu contoh cara melakukannya dapat ditemukan di README.

Bagaimana cara mengevaluasi model Anda setelah SFT?

Prasyarat

  • Checkpoint S3 URI dari file manifest.json pekerjaan pelatihan Anda (untuk model terlatih)

  • Dataset evaluasi diunggah ke S3 dalam format yang benar

  • Output jalur S3 untuk hasil evaluasi

Tolok ukur di luar kotak: Gunakan tolok ukur di luar kotak untuk memvalidasi kinerja pada tugas umum. Untuk lebih jelasnya, periksa di sini.

Bawa data Anda sendiri:

Anda juga dapat menyediakan data kustom Anda dengan memformatnya dalam format di bawah ini dan kemudian menggunakan wadah yang disebutkan di bawah ini untuk mendapatkan hasil inferensi bersama dengan probabilitas log untuk kalibrasi jika diperlukan.

Peti jsonl per tugas dengan struktur berikut:

{ "metadata": "{key:4, category:'apple'}", "system": "arithmetic-patterns, please answer the following with no other words: ", "query": "What is the next number in this series? 1, 2, 4, 8, 16, ?", "response": "32" }

Output yang dihasilkan selama fase inferensi pekerjaan evaluasi akan memiliki struktur sebagai berikut:

{ "prompt": "[{'role': 'system', 'content': 'arithmetic-patterns, please answer the following with no other words: '}, {'role': 'user', 'content': 'What is the next number in this series? 1, 2, 4, 8, 16, ?'}]", "inference": "['32']", "gold": "32", "metadata": "{key:4, category:'apple'}" }

Deskripsi bidang:

  • prompt: Masukan diformat dikirim ke model

  • inferensi: Respons yang dihasilkan model

  • gold: Diharapkan jawaban yang benar dari dataset input, bidang respons dari input

  • metadata: Metadata opsional dilewatkan dari input

Siapkan Evaluasi Config

Perintah untuk meluncurkan pekerjaan evaluasi. Gunakan “--override-parameters” untuk memodifikasi entri apa pun dari resep.

hyperpod start-job -n kubeflow \ --recipe evaluation/nova/nova_micro_p5_48xl_bring_your_own_dataset_eval \ --override-parameters '{ "instance_type": "p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova-evaluation-repo:SM-HP-Eval-latest", "recipes.run.name": "<your-eval-job-name>", "recipes.run.model_name_or_path": "<checkpoint-s3-uri>", "recipes.run.output_s3_path": "s3://<your-bucket>/eval-results/", "recipes.run.data_s3_path": "s3://<your-bucket>/eval-data.jsonl" }'

Luncurkan Job Evaluasi Anda

Perintah peluncuran Job untuk berbagai resep dengan gambar yang sesuai.

Evaluasi Perintah Peluncuran Job
Model Teknik Subkategori URI citra Perintah
Nova 1.0 Evaluasi Eval 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-Eval-terbaru nova-evaluation-repo hyperpod start-job\ -n kubeflow\ --recipe -evaluation-repo:SM-HP-eval-latest”} 'evaluation/nova/nova_1_0/nova_lite/nova_lite_2_0_p5_48xl_gpu_ft_eval \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova
Nova 2.0 Evaluasi Eval 708977205387.dkr. ecr.us-east-1.amazonaws.com /:SM-HP-Eval-terbaru nova-evaluation-repo hyperpod start-job -n kubeflow\ --recipe -evaluation-repo:SM-HP-eval-latest”} 'evaluation/nova/nova_2_0/nova_lite/nova_lite_2_0_p5_48xl_gpu_ft_eval \ --override-parameters '{ "instance_type": "ml.p5.48xlarge", "container": "708977205387.dkr.ecr.us-east-1.amazonaws.com/nova

Pelajaran dan Tips

  • Kualitas dataset SFT sangat penting. Anda harus melakukan segala upaya untuk menyaring data berkualitas rendah. Jika Anda memiliki subset kecil dari data berkualitas sangat tinggi—dalam hal kompleksitas dan akurasi—Anda dapat mempertimbangkan untuk menempatkannya menjelang akhir pelatihan untuk membantu model bertemu dengan lebih baik.

  • Kami memanfaatkan kumpulan data teks dan multimodal (MM) untuk pencampuran data. Eksperimen kami dengan kumpulan data teks menunjukkan bahwa menambahkan kategori “reasoning-instruction-following” milik Nova secara signifikan meningkatkan kinerja di seluruh tolok ukur umum. Sebaiknya sertakan kategori ini dalam strategi pencampuran data Anda jika Anda peduli dengan tolok ukur generik yang mengalami regresi setelah Anda melakukan SFT dengan kumpulan data Anda.

  • Untuk kumpulan data MM, eksperimen kami menunjukkan bahwa memasukkan lebih dari 20% kategori video ke dalam campuran bermanfaat untuk mempertahankan kinerja tolok ukur generik.

  • Selanjutnya, SFT dengan pencampuran data cukup sensitif terhadap tingkat pembelajaran sehingga temuan kami menyarankan untuk menyesuaikan dengan tingkat pembelajaran default yaitu 1e-5 untuk LoRa dan 5e-6 untuk FR.

  • Akhirnya, ada pertukaran antara latensi dan kinerja jika Anda mencampur kumpulan data milik Nova sehingga temuan kami menyarankan untuk mencampur 50% secara maksimal sebagai keseimbangan yang baik.