Untuk layanan evaluasi AI Generatif, set data evaluasi biasanya terdiri dari respons model yang ingin Anda evaluasi, data input yang digunakan untuk membuat respons, dan mungkin respons kebenaran dasar.
Skema set data evaluasi
Untuk kasus penggunaan metrik berbasis model yang umum, set data Anda harus memberikan informasi berikut:
Jenis input | Konten kolom input |
---|---|
perintah | Input pengguna untuk model atau aplikasi AI Generatif. Dalam beberapa kasus, ini bersifat opsional. |
respons | Respons inferensi LLM Anda akan dievaluasi. |
baseline_model_response (diperlukan oleh metrik berpasangan) | Respons inferensi LLM dasar pengukuran yang digunakan untuk membandingkan respons LLM Anda dalam evaluasi berpasangan |
Jika Anda menggunakan modul Evaluasi AI Generatif dari Vertex AI SDK untuk Python, layanan evaluasi AI Generatif dapat otomatis membuat response
dan baseline_model_response
dengan model yang Anda tentukan.
Untuk kasus penggunaan evaluasi lainnya, Anda mungkin perlu memberikan informasi selengkapnya:
Multi-giliran atau chat
Jenis input | Konten kolom input |
---|---|
sejarah | Histori percakapan antara pengguna dan model sebelum giliran saat ini. |
perintah | Input pengguna untuk model atau aplikasi AI Generatif pada giliran saat ini. |
respons | Respons inferensi LLM Anda yang akan dievaluasi, yang didasarkan pada histori dan perintah belok saat ini. |
baseline_model_response (diperlukan oleh metrik berpasangan) | Respons inferensi LLM dasar pengukuran yang digunakan untuk membandingkan respons LLM Anda dalam evaluasi berpasangan, yang didasarkan pada histori dan perintah giliran saat ini. |
Metrik berbasis komputasi
Set data Anda harus memberikan respons dari model bahasa besar dan referensi untuk dibandingkan.
Jenis input | Konten kolom input |
---|---|
respons | Respons inferensi LLM Anda akan dievaluasi. |
referensi | Kebenaran dasar untuk membandingkan respons LLM Anda. |
Metrik terjemahan
Set data Anda harus memberikan respons dari model. Bergantung pada kasus penggunaan, Anda juga perlu memberikan referensi untuk dibandingkan, input dalam bahasa sumber, atau kombinasi keduanya.
Jenis input | Konten kolom input |
---|---|
sumber | Teks sumber yang dalam bahasa asli yang digunakan untuk menerjemahkan prediksi. |
respons | Respons inferensi LLM Anda akan dievaluasi. |
referensi | Kebenaran dasar untuk membandingkan respons LLM Anda. Ini dalam bahasa yang sama dengan respons. |
Bergantung pada kasus penggunaan, Anda juga dapat membagi perintah pengguna input menjadi bagian-bagian terperinci, seperti instruction
dan context
, dan menyusunnya untuk inferensi dengan menyediakan template perintah. Anda juga dapat memberikan informasi referensi atau ground truth jika diperlukan:
Jenis input | Konten kolom input |
---|---|
petunjuk | Bagian dari perintah input pengguna. Ini mengacu pada petunjuk inferensi yang dikirim ke LLM Anda. Misalnya: "Rangkum teks berikut" adalah petunjuk. |
konteks | Input pengguna untuk model atau aplikasi AI Generatif pada giliran saat ini. |
referensi | Kebenaran dasar untuk membandingkan respons LLM Anda. |
Input yang diperlukan untuk set data evaluasi harus konsisten dengan metrik Anda. Untuk mengetahui detail selengkapnya tentang cara menyesuaikan metrik, lihat Menentukan metrik evaluasi dan Menjalankan evaluasi. Untuk mengetahui detail selengkapnya tentang cara menyertakan data referensi dalam metrik berbasis model, lihat Menyesuaikan template perintah metrik dengan data input Anda.
Mengimpor set data evaluasi
Anda dapat mengimpor set data dalam format berikut:
File JSONL atau CSV yang disimpan di Cloud Storage
Tabel BigQuery
Pandas DataFrame
Contoh set data evaluasi
Bagian ini menunjukkan contoh set data menggunakan format Pandas Dataframe. Perhatikan bahwa hanya beberapa kumpulan data yang ditampilkan di sini sebagai contoh, dan set data evaluasi biasanya memiliki 100 titik data atau lebih. Untuk praktik terbaik saat menyiapkan set data, lihat bagian Praktik terbaik.
Metrik berbasis model pointwise
Berikut adalah kasus ringkasan untuk menunjukkan contoh set data untuk metrik berbasis model pointwise:
prompts = [
# Example 1
(
"Summarize the text in one sentence: As part of a comprehensive"
" initiative to tackle urban congestion and foster sustainable urban"
" living, a major city has revealed ambitious plans for an extensive"
" overhaul of its public transportation system. The project aims not"
" only to improve the efficiency and reliability of public transit but"
" also to reduce the city's carbon footprint and promote eco-friendly"
" commuting options. City officials anticipate that this strategic"
" investment will enhance accessibility for residents and visitors"
" alike, ushering in a new era of efficient, environmentally conscious"
" urban transportation."
),
# Example 2
(
"Summarize the text such that a five-year-old can understand: A team of"
" archaeologists has unearthed ancient artifacts shedding light on a"
" previously unknown civilization. The findings challenge existing"
" historical narratives and provide valuable insights into human"
" history."
),
]
responses = [
# Example 1
(
"A major city is revamping its public transportation system to fight"
" congestion, reduce emissions, and make getting around greener and"
" easier."
),
# Example 2
(
"Some people who dig for old things found some very special tools and"
" objects that tell us about people who lived a long, long time ago!"
" What they found is like a new puzzle piece that helps us understand"
" how people used to live."
),
]
eval_dataset = pd.DataFrame({
"prompt": prompts,
"response": responses,
})
Metrik berbasis model berpasangan
Contoh berikut menunjukkan kasus menjawab pertanyaan buku terbuka untuk menunjukkan contoh set data untuk metrik berbasis model berpasangan.
prompts = [
# Example 1
(
"Based on the context provided, what is the hardest material? Context:"
" Some might think that steel is the hardest material, or even"
" titanium. However, diamond is actually the hardest material."
),
# Example 2
(
"Based on the context provided, who directed The Godfather? Context:"
" Mario Puzo and Francis Ford Coppola co-wrote the screenplay for The"
" Godfather, and the latter directed it as well."
),
]
responses = [
# Example 1
"Diamond is the hardest material. It is harder than steel or titanium.",
# Example 2
"Francis Ford Coppola directed The Godfather.",
]
baseline_model_responses = [
# Example 1
"Steel is the hardest material.",
# Example 2
"John Smith.",
]
eval_dataset = pd.DataFrame(
{
"prompt": prompts,
"response": responses,
"baseline_model_response": baseline_model_responses,
}
)
Metrik berbasis komputasi
Untuk metrik berbasis komputasi, reference
sering kali diperlukan.
eval_dataset = pd.DataFrame({
"response": ["The Roman Senate was filled with exuberance due to Pompey's defeat in Asia."],
"reference": ["The Roman Senate was filled with exuberance due to successes against Catiline."],
})
Metrik penggunaan alat (panggilan fungsi)
Contoh berikut menunjukkan data input untuk metrik penggunaan alat berbasis komputasi:
json_responses = ["""{
"content": "",
"tool_calls":[{
"name":"get_movie_info",
"arguments": {"movie":"Mission Impossible", "time": "today 7:30PM"}
}]
}"""]
json_references = ["""{
"content": "",
"tool_calls":[{
"name":"book_tickets",
"arguments":{"movie":"Mission Impossible", "time": "today 7:30PM"}
}]
}"""]
eval_dataset = pd.DataFrame({
"response": json_responses,
"reference": json_references,
})
Kasus penggunaan terjemahan
Contoh berikut menunjukkan data input untuk metrik terjemahan:
source = [
"Dem Feuer konnte Einhalt geboten werden",
"Schulen und Kindergärten wurden eröffnet.",
]
response = [
"The fire could be stopped",
"Schools and kindergartens were open",
]
reference = [
"They were able to control the fire.",
"Schools and kindergartens opened",
]
eval_dataset = pd.DataFrame({
"source": source,
"response": response,
"reference": reference,
})
Praktik terbaik
Ikuti praktik terbaik berikut saat menentukan set data evaluasi:
- Berikan contoh yang mewakili jenis input, yang diproses oleh model Anda dalam produksi.
- Set data Anda harus menyertakan minimal satu contoh evaluasi. Sebaiknya gunakan sekitar 100 contoh untuk memastikan metrik gabungan berkualitas tinggi dan hasil yang signifikan secara statistik. Ukuran ini membantu menetapkan tingkat keyakinan yang lebih tinggi dalam hasil evaluasi gabungan, meminimalkan pengaruh outlier, dan memastikan bahwa metrik performa mencerminkan kemampuan sebenarnya dari model di berbagai skenario. Tingkat peningkatan kualitas metrik gabungan cenderung menurun jika lebih dari 400 contoh diberikan.