Aracılığıyla paylaş


Microsoft.Extensions.AI.Evaluation kitaplıkları

Microsoft.Extensions.AI.Evaluation kitaplıkları, .NET akıllı uygulamalarında yapay zeka modelleri tarafından oluşturulan yanıtların kalitesini ve güvenliğini değerlendirme sürecini basitleştirir. Çeşitli kalite ölçümleri, yanıtların ilgi, doğruluk, tutarlılık ve eksiksizlik gibi yönlerini ölçer. Güvenlik ölçümleri nefret ve adaletsizlik, şiddet ve cinsel içerik gibi özellikleri ölçer. Değerlendirmeler, yapay zeka modelinin beklendiği gibi çalıştığından ve güvenilir ve doğru sonuçlar sağladığından testlerde çok önemlidir.

Microsoft.Extensions.AI soyutlamalarının üzerinde oluşturulan değerlendirme kitaplıkları aşağıdaki NuGet paketlerinden oluşur:

Test entegrasyonu

Kitaplıklar, mevcut .NET uygulamalarıyla sorunsuz bir şekilde tümleştirilip akıllı uygulamaları değerlendirmek için mevcut test altyapılarından ve tanıdık söz dizimlerinden yararlanmanızı sağlayacak şekilde tasarlanmıştır. Herhangi bir test çerçevesini (örneğin, MSTest, xUnit veya NUnit) ve test iş akışını (örneğin, Test Gezgini, dotnet testi veya CI/CD işlem hattı) kullanabilirsiniz. Kitaplık ayrıca değerlendirme puanlarını telemetri ve izleme panolarına yayımlayarak uygulamanızın çevrimiçi değerlendirmelerini yapmanın kolay yollarını sağlar.

Kapsamlı değerlendirme ölçümleri

Değerlendirme kitaplıkları, Microsoft ve GitHub'daki veri bilimi araştırmacılarıyla işbirliği içinde oluşturulmuş ve popüler Microsoft Copilot deneyimleri üzerinde test edilmiştir. Aşağıdaki bölümlerde yerleşik kalite, NLP ve güvenlik değerlendiricileri ile ölçtükleri ölçümler gösterilmektedir.

Ayrıca, IEvaluator arabirimini uygulayarak kendi değerlendirmelerinizi eklemek için özelleştirebilirsiniz.

Kalite değerlendiricileri

Kalite değerlendiricileri yanıt kalitesini ölçer. Değerlendirmeyi gerçekleştirmek için LLM kullanır.

Değerlendirici türü Ölçü birimi Description
RelevanceEvaluator Relevance Yanıtın sorguyla ne kadar ilgili olduğunu değerlendirir
CompletenessEvaluator Completeness Yanıtın ne kadar kapsamlı ve doğru olduğunu değerlendirir
RetrievalEvaluator Retrieval Ek bağlam için bilgi alma performansını değerlendirir
FluencyEvaluator Fluency Dil bilgisi doğruluğunu, sözlük aralığını, cümle karmaşıklığını ve genel okunabilirliği değerlendirir
CoherenceEvaluator Coherence Fikirlerin mantıksal ve düzenli sunumunu değerlendirir
EquivalenceEvaluator Equivalence Oluşturulan metin ile temel gerçeği arasındaki benzerliği sorguya göre değerlendirir
GroundednessEvaluator Groundedness Oluşturulan yanıtın verilen bağlamla ne kadar uyumlu olduğunu değerlendirir
RelevanceTruthAndCompletenessEvaluator Relevance (RTC), Truth (RTC) ve Completeness (RTC) Yanıtın ne kadar ilgili, doğru ve eksiksiz olduğunu değerlendirir
IntentResolutionEvaluator Intent Resolution Yapay zeka sisteminin kullanıcı amacını belirleme ve çözmedeki etkinliğini değerlendirir (aracı odaklı)
TaskAdherenceEvaluator Task Adherence Yapay zeka sisteminin kendisine atanan göreve bağlı olma (aracı odaklı) ile ilgili etkinliğini değerlendirir
ToolCallAccuracyEvaluator Tool Call Accuracy Yapay zeka sisteminin sağlanan araçları kullanmadaki etkinliğini değerlendirir (aracı odaklı)

† Bu değerlendirici deneysel olarak işaretlenir.

NLP değerlendiricileri

NLP değerlendiricileri, doğal dil işleme (NLP) tekniklerini kullanarak bir LLM yanıtının kalitesini bir başvuru yanıtıyla karşılaştırarak değerlendirir. Bu değerlendiriciler LLM veya yapay zeka tabanlı değildir; bunun yerine, metin karşılaştırmaları gerçekleştirmek için eski NLP tekniklerini kullanırlar.

Değerlendirici türü Ölçü birimi Description
BLEUEvaluator BLEU Yanıtı, Bilingual Evaluation Understudy (BLEU) algoritmasını kullanarak bir veya daha fazla referans yanıtla karşılaştırarak değerlendirir. Bu algoritma genellikle makine çevirisi veya metin oluşturma görevlerinin kalitesini değerlendirmek için kullanılır.
GLEUEvaluator GLEU Tümce düzeyinde değerlendirme için iyileştirilmiş BLEU algoritmasının bir çeşidi olan Google BLEU (GLEU) algoritmasını kullanarak oluşturulan yanıt ile bir veya daha fazla başvuru yanıtı arasındaki benzerliği ölçer.
F1Evaluator F1 F1 puanlama algoritmasını (oluşturulan yanıt ile başvuru yanıtı arasındaki paylaşılan sözcük sayısının oranı) kullanarak yanıtı bir başvuru yanıtıyla karşılaştırarak değerlendirir.

Güvenlik değerlendiricileri

Güvenlik değerlendiricileri, bir yanıtta zararlı, uygunsuz veya güvenli olmayan içerik olup olmadığını denetler. Değerlendirmeleri gerçekleştirmek için ince ayarlanmış bir model kullanan Foundry Değerlendirme hizmetini kullanır.

Değerlendirici türü Ölçü birimi Description
GroundednessProEvaluator Groundedness Pro Oluşturulan yanıtın verilen bağlamla ne kadar uyumlu olduğunu değerlendirmek için Foundry Değerlendirme hizmetinin arkasında barındırılan ince ayarlı bir model kullanır
ProtectedMaterialEvaluator Protected Material Korumalı malzemenin varlığıyla ilgili yanıtı değerlendirir
UngroundedAttributesEvaluator Ungrounded Attributes İnsan özniteliklerinin temelsiz çıkarımını gösteren içeriğin varlığı için bir yanıt değerlendirir
HateAndUnfairnessEvaluator Hate And Unfairness Bir yanıtı, nefret eden veya haksız içerik olup olmadığını değerlendirir
SelfHarmEvaluator Self Harm Bir yanıtın, kendine zarar verme içeriğini içerip içermediğini değerlendirir.
ViolenceEvaluator Violence Şiddet içeriklerinin varlığı için bir yanıtı değerlendirir
SexualEvaluator Sexual Cinsel içeriğin varlığı için bir yanıtı değerlendirir
CodeVulnerabilityEvaluator Code Vulnerability Güvenlik açığı bulunan kodun varlığı için bir yanıtı değerlendirir
IndirectAttackEvaluator Indirect Attack Manipüle edilmiş içerik, yetkisiz erişim ve bilgi toplama gibi dolaylı saldırıların varlığı için bir yanıt değerlendirir

† Ayrıca , ContentHarmEvaluator , HateAndUnfairnessEvaluatorve SelfHarmEvaluatortarafından ViolenceEvaluatorSexualEvaluatordesteklenen dört ölçüm için tek seferlik değerlendirme sağlar.

Önbelleğe alınan yanıtlar

Kitaplık , yanıt önbelleğe alma işlevini kullanır ve bu da yapay zeka modelinden gelen yanıtların önbellekte kalıcı olduğu anlamına gelir. Sonraki çalıştırmalarda istek parametreleri (istem ve model) değişmezse, daha hızlı yürütme ve daha düşük maliyet sağlamak için önbellekten yanıtlar sunulur.

Raporlama

Kitaplık, değerlendirme sonuçlarını depolama ve rapor oluşturma desteği içerir. Aşağıdaki görüntüde Azure DevOps işlem hattındaki örnek bir rapor gösterilmektedir:

Azure DevOps işlem hattındaki yapay zeka değerlendirme raporunun ekran görüntüsü.

Paketin dotnet aievalMicrosoft.Extensions.AI.Evaluation.Console bir parçası olarak gelen araç, rapor oluşturma ve depolanan değerlendirme verilerini ve önbelleğe alınan yanıtları yönetme işlevselliğini içerir. Daha fazla bilgi için bkz. Rapor oluşturma.

Konfigürasyon

Kitaplıklar esnek olacak şekilde tasarlanmıştır. İhtiyacınız olan bileşenleri seçebilirsiniz. Örneğin, yanıt önbelleğe almayı devre dışı bırakabilir veya raporlamayı ortamınızda en iyi şekilde çalışacak şekilde uyarlayabilirsiniz. Ayrıca, örneğin özelleştirilmiş ölçümler ve raporlama seçenekleri ekleyerek değerlendirmelerinizi özelleştirebilir ve yapılandırabilirsiniz.

Samples

Microsoft.Extensions.AI.Evaluation kitaplıklarında bulunan işlevler ve API'ler hakkında daha kapsamlı bir tur için API kullanım örneklerine (dotnet/ai-samples deposu) bakın. Bu örnekler birim testlerinden oluşan bir koleksiyon olarak yapılandırılmıştır. Her birim testi belirli bir kavramı veya API'yi gösterir ve önceki birim testlerinde sergilenen kavramlar ve API'ler üzerinde derlemeler yapar.

Ayrıca bakınız