Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Библиотеки Майкрософт.Extensions.AI.Evaluation упрощают процесс оценки качества и безопасности ответов, созданных моделями ИИ в интеллектуальных приложениях .NET. Различные метрики качества измеряют такие аспекты, как релевантность, правдивость, согласованность и полнота ответов. Метрики безопасности измеряют такие аспекты, как ненависть и несправедливость, насилие и сексуальное содержимое. Оценки важны в тестировании, так как они помогают гарантировать, что модель искусственного интеллекта выполняется должным образом и обеспечивает надежные и точные результаты.
Библиотеки оценки, которые создаются на основе Майкрософт.Extensions.AI абстракции, состоят из следующих пакетов NuGet:
- 📦 Майкрософт. Extensions.AI.Evaluation — определяет основные абстракции и типы для поддержки оценки.
- 📦 Майкрософт. Extensions.AI.Evaluation.NLP — содержит оценщики, которые оценивают сходство текста ответа LLM с одним или несколькими ссылочными ответами с использованием метрик обработки естественного языка (NLP). Эти оценщики не являются моделями машинного обучения или ИИ; они используют традиционные методы обработки естественного языка, такие как токенизация и анализ n-грамм для оценки текстового сходства.
- 📦 Майкрософт. Extensions.AI.Evaluation.Quality — содержит оценщики, которые оценивают качество ответов LLM в приложении в соответствии с метриками, такими как релевантность и полнота. Эти оценщики используют LLM непосредственно для проведения оценок.
-
📦 Майкрософт.Extensions.AI.Evaluation.Safety — содержит оценщики, такие как
ProtectedMaterialEvaluatorиContentHarmEvaluator, которые используют Майкрософт Foundry для проведения оценок. - 📦 Майкрософт. Extensions.AI.Evaluation.Reporting — содержит поддержку кэширования ответов LLM, хранения результатов оценки и создания отчетов из этих данных.
- 📦 Майкрософт. Extensions.AI.Evaluation.Reporting. Azure — поддерживает библиотеку отчетов с реализацией для кэширования ответов LLM и хранения результатов оценки в контейнере служба хранилища Azure.
- 📦 Майкрософт. Extensions.AI.Evaluation.Console — средство командной строки для создания отчетов и управления данными оценки.
Тестовая интеграция
Библиотеки интегрируются плавно с существующими приложениями .NET, позволяя использовать существующую инфраструктуру тестирования и знакомый синтаксис для оценки интеллектуальных приложений. Вы можете использовать любую платформу тестирования (например, MSTest, xUnit или NUnit) и рабочий процесс тестирования (например, обозреватель тестов, dotnet test или конвейер CI/CD). Библиотека также предоставляет простые способы для оценки приложения в режиме онлайн, публикуя результаты оценивания на платформах телеметрии и мониторинга.
Комплексные метрики оценки
Библиотеки для оценки были созданы в сотрудничестве с исследователями в области науки о данных из Майкрософт и GitHub и были протестированы на популярных возможностях Microsoft Copilot. В следующих разделах показаны встроенные средства оценки качества, NLP и оценки безопасности и метрики, которые они измеряют.
Чтобы добавить собственные оценки, реализуйте IEvaluator интерфейс.
Оценщики качества
Оценщики качества измеряют качество ответа. Они используют LLM для выполнения оценки.
| Тип вычислителя | Единица измерения | Description |
|---|---|---|
| RelevanceEvaluator | Relevance |
Оценивает, насколько релевантн ответ в запросе |
| CompletenessEvaluator | Completeness |
Оценивает, насколько исчерпывающим и точным является ответ |
| RetrievalEvaluator | Retrieval |
Оценивает выполнение задач по извлечению информации для дополнительного контекста |
| FluencyEvaluator | Fluency |
Оценивает грамматическую точность, диапазон словарей, сложность предложения и общую удобочитаемость |
| CoherenceEvaluator | Coherence |
Оценивает логическую и упорядоченную презентацию идей |
| EquivalenceEvaluator | Equivalence |
Оценивает сходство между созданным текстом и его основной правдой в отношении запроса |
| GroundednessEvaluator | Groundedness |
Определяет, насколько хорошо сформированный ответ соответствует заданному контексту. |
| RelevanceTruthAndCompletenessEvaluator† |
Relevance (RTC), Truth (RTC) и Completeness (RTC) |
Оценивает, насколько релевантный, правдивый и полный ответ |
| IntentResolutionEvaluator | Intent Resolution |
Оценивает эффективность системы ИИ в выявлении и разрешении намерений пользователя с упором на агенте |
| TaskAdherenceEvaluator | Task Adherence |
Оценивает эффективность системы ИИ при подключении к задаче, назначенной ей (агентом). |
| ToolCallAccuracyEvaluator | Tool Call Accuracy |
Оценивает эффективность системы искусственного интеллекта при использовании средств, предоставленных ему (ориентированных на агентов) |
† Этот оценщик отмечен экспериментальным.
Оценщики NLP
Вычислители NLP оценивают качество ответа LLM, сравнивая его с эталонным ответом с помощью методов обработки естественного языка (NLP). Эти оценщики не основаны на LLM или ИИ; вместо того они используют старые методы обработки естественного языка (NLP) для сравнения текста.
| Тип вычислителя | Единица измерения | Description |
|---|---|---|
| BLEUEvaluator | BLEU |
Вычисляет ответ, сравнивая его с одним или несколькими ссылочными ответами с помощью алгоритма двуязычной оценки (BLEU). Этот алгоритм обычно используется для оценки качества задач машинного перевода или создания текста. |
| GLEUEvaluator | GLEU |
Измеряет сходство между созданным ответом и одним или несколькими ссылочными ответами с помощью алгоритма Google BLEU (GLEU), варианта алгоритма BLEU, оптимизированного для оценки уровня предложения. |
| F1Evaluator | F1 |
Вычисляет ответ, сравнивая его с эталонным ответом с помощью алгоритма оценки F1 (соотношение количества общих слов между созданным ответом и ответом на ссылку). |
Оценщики безопасности
Оценщики безопасности проверяют наличие вредного, неуместного или небезопасного содержимого в ответе. Они полагаются на службу оценки Foundry, которая использует настроенную модель для проведения оценок.
| Тип вычислителя | Единица измерения | Description |
|---|---|---|
| GroundednessProEvaluator | Groundedness Pro |
Использует точно настроенную модель, размещенную в сервисе оценки Foundry, чтобы оценить, насколько хорошо сформированный ответ соответствует заданному контексту. |
| ProtectedMaterialEvaluator | Protected Material |
Оценивает ответ на наличие защищенного материала |
| UngroundedAttributesEvaluator | Ungrounded Attributes |
Оценивает ответ на наличие контента, который указывает на необоснованные выводы об атрибутах человека. |
| HateAndUnfairnessEvaluator† | Hate And Unfairness |
Оценивает ответ на наличие ненавистного или несправедливого содержимого. |
| SelfHarmEvaluator† | Self Harm |
Оценивает ответ на наличие содержимого, указывающего на самоповреждение. |
| ViolenceEvaluator† | Violence |
Оценивает ответ на наличие насильственного содержимого |
| SexualEvaluator† | Sexual |
Оценивает ответ на наличие сексуального содержимого |
| CodeVulnerabilityEvaluator | Code Vulnerability |
Оценивает ответ на наличие уязвимого кода |
| IndirectAttackEvaluator | Indirect Attack |
Оценивает ответ на наличие непрямых атак, таких как манипулирование содержимым, вторжением и сбором информации |
† Кроме того, ContentHarmEvaluator предоставляет одноразовую оценку для четырех метрик, поддерживаемых HateAndUnfairnessEvaluator, SelfHarmEvaluator, ViolenceEvaluator и SexualEvaluator.
Кэшированные ответы
Библиотека использует функции кэширования ответов для сохранения ответов из модели искусственного интеллекта в кэше. В последующих запусках, если параметры запроса (запрос и модель) не изменяются, он обслуживает ответы из кэша для ускорения выполнения и снижения затрат.
Отчетность
Библиотека поддерживает хранение результатов оценки и создание отчетов. На следующем рисунке показан пример отчета в конвейере Azure DevOps:
Средство dotnet aieval, которое поставляется в составе пакета Майкрософт.Extensions.AI.Evaluation.Console, включает функции для создания отчетов и управления сохраненными данными оценки и кэшированных ответов. Дополнительные сведения см. в разделе "Создание отчета".
Конфигурация
Библиотеки являются гибкими, и вы можете выбрать необходимые компоненты. Например, отключите кэширование ответов или настройте отчеты для оптимальной работы в вашей среде. Вы также можете адаптировать и настроить процесс оценки, например, добавив пользовательские показатели и параметры отчетности.
Samples
Для более подробного ознакомления с функциональными возможностями и API библиотек Майкрософт.Extensions.AI.Evaluation, см. примеры использования API (репозиторий dotnet/ai-samples). Эти примеры представляют собой коллекцию модульных тестов. Каждый модульный тест демонстрирует определенную концепцию или API и основывается на концепциях и API, показанных в предыдущих модульных тестах.