Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft. Extensions.AI.Evaluation kitaplıkları, .NET akıllı uygulamalarda 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ı üzerinde oluşturulan değerlendirme kitaplıkları aşağıdaki NuGet paketlerinden oluşur:
- 📦 Microsoft. Extensions.AI.Evaluation – Değerlendirmeyi desteklemek için temel soyutlamaları ve türleri tanımlar.
- 📦 Microsoft.Extensions.AI.Evaluation.NLP - LLM yanıt metninin doğal dil işleme (NLP) ölçütlerini kullanarak bir veya daha fazla referans yanıtına benzerliğini değerlendiren değerlendiriciler içerir. Bu değerlendiriciler LLM veya yapay zeka tabanlı değildir; metin benzerliğini değerlendirmek için metin belirteci ve n-gram analizi gibi geleneksel NLP tekniklerini kullanır.
- 📦 Microsoft. Extensions.AI.Evaluation.Quality – Bir uygulamadaki LLM yanıtlarının kalitesini ilgi ve eksiksizlik gibi ölçümlere göre değerlendiren evaluators içerir. Bu değerlendiriciler değerlendirmeleri gerçekleştirmek için doğrudan LLM'yi kullanır.
-
📦 Microsoft.Extensions.AI.Evaluation.Safety – Değerlendirmeleri gerçekleştirmek üzere Microsoft Foundry Değerlendirme hizmetini kullanan
ProtectedMaterialEvaluatorveContentHarmEvaluatorgibi değerlendiriciler içerir. - 📦 Microsoft. Extensions.AI.Evaluation.Reporting – LLM yanıtlarını önbelleğe alma, değerlendirme sonuçlarını depolama ve bu verilerden rapor oluşturma desteği içerir.
- 📦 Microsoft. Extensions.AI.Evaluation.Reporting. Azure - LLM yanıtlarını önbelleğe almak ve değerlendirme sonuçlarını bir Azure Depolama kapsayıcısında depolamak için bir uygulama ile raporlama kitaplığını destekler.
- 📦 Microsoft. Extensions.AI.Evaluation.Console – Rapor oluşturmaya ve değerlendirme verilerini yönetmeye yönelik bir komut satırı aracı.
Test entegrasyonu
Kitaplıklar mevcut .NET uygulamalarıyla sorunsuz bir şekilde tümleştirerek akıllı uygulamaları değerlendirmek için mevcut test altyapısını ve tanıdık söz dizimini kullanmanızı sağlar. 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 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.
Kendi değerlendirmelerinizi eklemek için arabirimini IEvaluator uygulayın.
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 ayarlı 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, yapay zeka modelinden gelen yanıtları önbellekte kalıcı hale getirmek için yanıt önbelleğe alma işlevini kullanır. Sonraki çalıştırmalarda, istek parametreleri (istem ve model) değişmemişse, daha hızlı yürütme ve daha düşük maliyet için önbellekten yanıtlar sunar.
Raporlama
Kitaplık değerlendirme sonuçlarının depolanmasını ve rapor oluşturulmasını destekler. Aşağıdaki görüntüde Azure DevOps işlem hattındaki örnek bir rapor gösterilmektedir:
dotnet aieval paketinin bir parçası olarak gelen Microsoft.Extensions.AI.Evaluation.Console aracı, 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 esnektir ve ihtiyacınız olan bileşenleri seçebilirsiniz. Örneğin, yanıt önbelleğe almayı devre dışı bırakın veya raporlamayı ortamınızda en iyi şekilde çalışacak şekilde uyarlayın. 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ındaki işlevsellik ve API'lere daha kapsamlı bir tur için, API kullanım örnekleri (dotnet/ai-samples deposu)'na bakın. Bu örnekler, birim testlerinden oluşan bir koleksiyonlardır. Her birim testi belirli bir kavramı veya API'yi gösterir ve önceki birim testlerinde sergilenen kavramlar ve API'ler üzerinde derlemeler yapar.