返回顶部
a

azure-ai-evaluation-pyAzure AI评估

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
1,942
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

azure-ai-evaluation-py

Azure AI 评估 SDK for Python

使用内置和自定义评估器评估生成式 AI 应用程序性能。

安装

bash
pip install azure-ai-evaluation

支持远程评估

pip install azure-ai-evaluation[remote]

环境变量

bash

用于 AI 辅助评估器


AZUREOPENAIENDPOINT=https://.openai.azure.com
AZUREOPENAIAPI_KEY=
AZUREOPENAIDEPLOYMENT=gpt-4o-mini

用于 Foundry 项目集成

AIPROJECTCONNECTIONSTRING=

内置评估器

质量评估器(AI 辅助)

python
from azure.ai.evaluation import (
GroundednessEvaluator,
RelevanceEvaluator,
CoherenceEvaluator,
FluencyEvaluator,
SimilarityEvaluator,
RetrievalEvaluator
)

使用 Azure OpenAI 模型配置初始化

model_config = { azureendpoint: os.environ[AZUREOPENAI_ENDPOINT], apikey: os.environ[AZUREOPENAIAPIKEY], azuredeployment: os.environ[AZUREOPENAI_DEPLOYMENT] }

groundedness = GroundednessEvaluator(model_config)
relevance = RelevanceEvaluator(model_config)
coherence = CoherenceEvaluator(model_config)

质量评估器(基于 NLP)

python
from azure.ai.evaluation import (
F1ScoreEvaluator,
RougeScoreEvaluator,
BleuScoreEvaluator,
GleuScoreEvaluator,
MeteorScoreEvaluator
)

f1 = F1ScoreEvaluator()
rouge = RougeScoreEvaluator()
bleu = BleuScoreEvaluator()

安全评估器

python
from azure.ai.evaluation import (
ViolenceEvaluator,
SexualEvaluator,
SelfHarmEvaluator,
HateUnfairnessEvaluator,
IndirectAttackEvaluator,
ProtectedMaterialEvaluator
)

violence = ViolenceEvaluator(azureaiproject=project_scope)
sexual = SexualEvaluator(azureaiproject=project_scope)

单行评估

python
from azure.ai.evaluation import GroundednessEvaluator

groundedness = GroundednessEvaluator(model_config)

result = groundedness(
query=什么是 Azure AI?,
context=Azure AI 是微软的 AI 平台...,
response=Azure AI 提供 AI 服务和工具。
)

print(f基础性得分:{result[groundedness]})
print(f原因:{result[groundedness_reason]})

使用 evaluate() 进行批量评估

python
from azure.ai.evaluation import evaluate

result = evaluate(
data=test_data.jsonl,
evaluators={
groundedness: groundedness,
relevance: relevance,
coherence: coherence
},
evaluator_config={
default: {
column_mapping: {
query: ${data.query},
context: ${data.context},
response: ${data.response}
}
}
}
)

print(result[metrics])

复合评估器

python
from azure.ai.evaluation import QAEvaluator, ContentSafetyEvaluator

所有质量指标合一

qaevaluator = QAEvaluator(modelconfig)

所有安全指标合一

safetyevaluator = ContentSafetyEvaluator(azureaiproject=projectscope)

result = evaluate(
data=data.jsonl,
evaluators={
qa: qa_evaluator,
contentsafety: safetyevaluator
}
)

评估应用程序目标

python
from azure.ai.evaluation import evaluate
from myapp import chatapp # 您的应用程序

result = evaluate(
data=queries.jsonl,
target=chat_app, # 可调用对象,接收查询,返回响应
evaluators={
groundedness: groundedness
},
evaluator_config={
default: {
column_mapping: {
query: ${data.query},
context: ${outputs.context},
response: ${outputs.response}
}
}
}
)

自定义评估器

基于代码

python
from azure.ai.evaluation import evaluator

@evaluator
def wordcountevaluator(response: str) -> dict:
return {word_count: len(response.split())}

在 evaluate() 中使用

result = evaluate( data=data.jsonl, evaluators={wordcount: wordcount_evaluator} )

基于提示

python
from azure.ai.evaluation import PromptChatTarget

class CustomEvaluator:
def init(self, model_config):
self.model = PromptChatTarget(model_config)

def call(self, query: str, response: str) -> dict:
prompt = f评分此响应 1-5:查询:{query},响应:{response}
result = self.model.send_prompt(prompt)
return {custom_score: int(result)}

记录到 Foundry 项目

python
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential

project = AIProjectClient.fromconnectionstring(
connstr=os.environ[AIPROJECTCONNECTION_STRING],
credential=DefaultAzureCredential()
)

result = evaluate(
data=data.jsonl,
evaluators={groundedness: groundedness},
azureaiproject=project.scope # 将结果记录到 Foundry
)

print(f查看结果:{result[studio_url]})

评估器参考

评估器类型指标
GroundednessEvaluatorAIgroundedness(1-5)
RelevanceEvaluator
AI | relevance(1-5) | | CoherenceEvaluator | AI | coherence(1-5) | | FluencyEvaluator | AI | fluency(1-5) | | SimilarityEvaluator | AI | similarity(1-5) | | RetrievalEvaluator | AI | retrieval(1-5) | | F1ScoreEvaluator | NLP | f1_score(0-1) | | RougeScoreEvaluator | NLP | rouge 分数 | | ViolenceEvaluator | 安全 | violence(0-7) | | SexualEvaluator | 安全 | sexual(0-7) | | SelfHarmEvaluator | 安全 | self_harm(0-7) | | HateUnfairnessEvaluator | 安全 | hate_unfairness(0-7) | | QAEvaluator | 复合 | 所有质量指标 | | ContentSafetyEvaluator | 复合 | 所有安全指标 |

最佳实践

  1. 1. 使用复合评估器进行综合评估
  2. 正确映射列——列不匹配会导致静默失败
  3. 记录到 Foundry以跟踪和比较各次运行
  4. 创建自定义评估器用于特定领域的指标
  5. 使用 NLP 评估器当您有真实答案时
  6. 安全评估器需要Azure AI 项目范围
  7. 批量评估比单行循环更高效

参考文件

文件内容
references/built-in-evaluators.mdAI 辅助、基于 NLP 和安全评估器的详细模式及配置表
references/custom-evaluators.md
创建基于代码和基于提示的自定义评估器、测试模式 | | scripts/runbatch_evaluation.py | 用于运行质量、安全和自定义评估器批量评估的 CLI 工具 |

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 azure-ai-evaluation-py-1776376221 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 azure-ai-evaluation-py-1776376221 技能

通过命令行安装

skillhub install azure-ai-evaluation-py-1776376221

下载

⬇ 下载 azure-ai-evaluation-py v0.1.0(免费)

文件大小: 12.82 KB | 发布时间: 2026-4-17 13:55

v0.1.0 最新 2026-4-17 13:55
Azure AI Evaluation SDK for Python - Initial Release

- Introduces built-in quality, safety, and composite evaluators for generative AI assessment.
- Supports both AI-assisted (OpenAI model) and NLP-based evaluators.
- Adds batch and single-row evaluation APIs with flexible data-column mapping.
- Enables custom evaluators via code or prompts.
- Integrates with Azure AI Foundry for evaluation result logging.
- Provides best practices, reference guides, and CLI tool for batch evaluation.

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部