View a markdown version of this page

Evaluasi dengan Inspect AI SDK - Amazon Nova

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

Evaluasi dengan Inspect AI SDK

Panduan ini menjelaskan cara mengevaluasi model Amazon Nova yang disesuaikan yang digunakan pada titik akhir SageMaker inferensi menggunakan Insp ect AI, kerangka evaluasi sumber terbuka.

catatan

Untuk panduan langsung, lihat buku catatan sampel SageMaker Inspect AI.

Gambaran umum

Anda dapat mengevaluasi model Amazon Nova yang disesuaikan yang digunakan pada SageMaker titik akhir menggunakan tolok ukur standar dari komunitas riset AI. Pendekatan ini memungkinkan Anda untuk:

  • Evaluasi model Amazon Nova yang disesuaikan (disesuaikan, disuling, atau disesuaikan) dalam skala besar

  • Jalankan evaluasi dengan inferensi paralel di beberapa instance titik akhir

  • Bandingkan kinerja model menggunakan tolok ukur seperti MMLU, TruthfulQA, dan HumanEval

  • Integrasikan dengan SageMaker infrastruktur Anda yang ada

Model yang didukung

Penye SageMaker dia inferensi bekerja dengan:

  • Model Amazon Nova (Nova Mikro, Nova Lite, Nova Lite 2)

  • Model yang digunakan melalui vLLM atau server inferensi OpenAI-compatible

  • Setiap titik akhir yang mendukung format API Penyelesaian Obrolan OpenAI

Prasyarat

Sebelum memulai, pastikan Anda memiliki:

  • An Akun AWS dengan izin untuk membuat dan memanggil titik akhir SageMaker

  • AWS kredenSIAL dikonfigurasi melalui AWS CLI, variabel lingkungan, atau peran IAM

  • Python 3.9 atau lebih tinggi

Izin IAM yang diperlukan

Pengguna atau peran IAM Anda memerlukan izin berikut:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker:InvokeEndpoint", "sagemaker:DescribeEndpoint" ], "Resource": "arn:aws:sagemaker:*:*:endpoint/*" } ] }

Langkah 1: Menyebarkan titik SageMaker akhir

Sebelum menjalankan evaluasi, Anda memerlukan titik akhir SageMaker inferensi yang menjalankan model Anda.

Untuk petunjuk tentang membuat titik akhir SageMaker inferensi dengan model Amazon Nova, lihatMemulai.

Setelah titik akhir Anda dalam InService status, catat nama titik akhir untuk digunakan dalam perintah evaluasi.

Langkah 2: Instal dependensi evaluasi

Buat lingkungan virtual Python dan instal paket yang diperlukan.

# Create virtual environment python3.12 -m venv venv source venv/bin/activate # Install uv for faster package installation pip install uv # Install Inspect AI and evaluation benchmarks uv pip install inspect-ai inspect-evals # Install AWS dependencies uv pip install aioboto3 boto3 botocore openai

Langkah 3: Konfigurasikan AWS credentials

Pilih salah satu metode otentikasi berikut:

Opsi 1: AWS CLI (Direkomendasikan)

aws configure

Masukkan ID K AWS unci Akses, Kunci Akses Rahasia, dan wilayah default Anda saat diminta.

Opsi 2: Variabel lingkungan

export AWS_ACCESS_KEY_ID=your_access_key export AWS_SECRET_ACCESS_KEY=your_secret_key export AWS_DEFAULT_REGION=us-west-2

Opsi 3: Peran IAM

Jika berjalan di Amazon EC2 atau SageMaker notebook, peran IAM instans digunakan secara otomatis.

Verifikasi kredensi

import boto3 sts = boto3.client('sts') identity = sts.get_caller_identity() print(f"Account: {identity['Account']}") print(f"User/Role: {identity['Arn']}")

Langkah 4: Unduh tolok ukur evaluasi

Kloning repositori Inspect Evals untuk mengakses tolok ukur standar:

git clone https://github.com/UKGovernmentBEIS/inspect_evals.git

Repositori ini mencakup tolok ukur seperti:

  • MMLU dan MMLU-Pro (pengetahuan dan penalaran)

  • TruthfulQA (kejujuran)

  • HumanEval (pembuatan kode)

  • GSM8K (penalaran matematika)

Langkah 5: Jalankan evaluasi

Jalankan evaluasi menggunakan SageMaker titik akhir Anda:

cd inspect_evals/src/inspect_evals/ inspect eval mmlu_pro/mmlu_pro.py \ --model sagemaker/my-nova-endpoint \ -M region_name=us-west-2 \ --max-connections 256 \ --max-retries 100 \ --display plain

Parameter kunci

Parameter Default Deskripsi
--max-connections 10 Jumlah permintaan paralel ke titik akhir. Skala dengan jumlah instance (misalnya, 10 instance × 25 = 250).
--max-retries 3 Coba lagi untuk permintaan yang gagal. Gunakan 50-100 untuk evaluasi besar.
-M region_name us-east-1 AWS wilayah tempat titik akhir Anda digunakan.
-M read_timeout 600 Minta batas waktu dalam hitungan detik.
-M connect_timeout 60 Waktu tunggu koneksi dalam hitungan detik.

Rekomendasi penyetelan

Untuk titik akhir multi-instance:

# 10-instance endpoint example --max-connections 250 # ~25 connections per instance --max-retries 100 # Handle transient errors

Pengaturan --max-connections terlalu tinggi dapat membanjiri titik akhir dan menyebabkan pelambatan. Mengaturnya terlalu rendah kurang memanfaatkan kapasitas.

Langkah 6: Lihat hasil

Luncurkan penampil Inspect AI untuk menganalisis hasil evaluasi:

inspect view

Penampil menampilkan:

  • Skor dan metrik keseluruhan

  • Per-sample hasil dengan respons model

  • Analisis kesalahan dan pola kegagalan

Mengelola titik akhir

Memperbarui titik akhir

Untuk memperbarui titik akhir yang ada dengan model atau konfigurasi baru:

import boto3 sagemaker = boto3.client('sagemaker', region_name=REGION) # Create new model and endpoint configuration # Then update the endpoint sagemaker.update_endpoint( EndpointName=EXISTING_ENDPOINT_NAME, EndpointConfigName=NEW_ENDPOINT_CONFIG_NAME )

Menghapus titik akhir

sagemaker.delete_endpoint(EndpointName=ENDPOINT_NAME)

Tolok ukur khusus orientasi

Anda dapat menambahkan tolok ukur baru ke Inspect AI menggunakan alur kerja berikut:

  1. Pelajari format dataset benchmark dan metrik evaluasi

  2. Tinjau implementasi serupa di inspect_evals/

  3. Buat file tugas yang mengonversi catatan dataset menjadi Inspect AI sample

  4. Menerapkan pemecah dan pencetak skor yang tepat

  5. Validasi dengan uji coba kecil

Contoh struktur tugas:

from inspect_ai import Task, task from inspect_ai.dataset import hf_dataset from inspect_ai.scorer import choice from inspect_ai.solver import multiple_choice @task def my_benchmark(): return Task( dataset=hf_dataset("dataset_name", split="test"), solver=multiple_choice(), scorer=choice() )

Pemecahan masalah

Masalah umum

Pelambatan titik akhir atau batas waktu

  • Mengurangi --max-connections

  • Meningkatkan --max-retries

  • Periksa met CloudWatch rik titik akhir untuk masalah kapasitas

Kesalahan otentikasi

  • Verifikasi AWS kredenSIAL dikonfigurasi dengan benar

  • Periksa izin IAM termasuk sagemaker:InvokeEndpoint

Kesalahan model

  • Verifikasi titik akhir dalam InService status

  • Periksa apakah model mendukung format API Penyelesaian Obrolan OpenAI