Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Visar för närvarande:Foundry-portalversion - (klassisk)Växla till version för den nya Foundry-portalen
Note
Microsoft Foundry SDK för utvärdering och Foundry-portalen är i offentlig förhandsversion, men API:erna är allmänt tillgängliga för utvärdering av modell och datauppsättning (agentutvärderingen finns kvar i offentlig förhandsversion). Azure AI Evaluation SDK och utvärderare markerade (förhandsversion) i den här artikeln finns för närvarande i offentlig förhandsversion överallt.
AI-system kan generera textsvar som är osammanhängande eller sakna den allmänna skrivkvaliteten utöver minimal grammatisk korrekthet. För att hantera dessa problem stödjer Microsoft Foundry utvärdering av sammanhållning och flyt.
Om du har ett fråge-svar-scenario (QA) med både context och ground truth data utöver query och response, kan du också använda vår QAEvalueraator, som är en sammansatt utvärderare som använder relevanta utvärderare för bedömning.
Modellkonfiguration för AI-assisterade utvärderare
Som referens i följande kodutdrag använder AI-assisterade utvärderare en modellkonfiguration enligt följande:
import os
from azure.ai.evaluation import AzureOpenAIModelConfiguration
from dotenv import load_dotenv
load_dotenv()
model_config = AzureOpenAIModelConfiguration(
azure_endpoint=os.environ["AZURE_ENDPOINT"],
api_key=os.environ.get("AZURE_API_KEY"),
azure_deployment=os.environ.get("AZURE_DEPLOYMENT_NAME"),
api_version=os.environ.get("AZURE_API_VERSION"),
)
Stöd för utvärderarmodellen
Foundry stöder AzureOpenAI eller OpenAI resonemangsmodeller och icke-resonerande modeller för den stora språkmodell-domaren (LLM-judge) beroende på utvärderarna:
| Evaluators | Resonemangsmodeller som domare (exempel: o-seriemodeller från Azure OpenAI/OpenAI) | Icke-resonemangsmodeller som Domare (exempel: gpt-4.1, gpt-4o osv.) | To enable |
|---|---|---|---|
IntentResolution, TaskAdherence, ToolCallAccuracy, ResponseCompleteness, Coherence, Fluency, , Similarity, Groundedness, , RetrievalRelevance |
Supported | Supported | Ange ytterligare parameter is_reasoning_model=True för att initiera utvärderare |
| Other evaluators | Not Supported | Supported | -- |
För komplex utvärdering som kräver förfinat resonemang rekommenderar vi en stark resonemangsmodell med 4.1-mini en balans mellan resonemangsprestation och kostnadseffektivitet.
Coherence
Konsekvensutvärderingen mäter den logiska och ordnade presentationen av idéer i ett svar, vilket gör det möjligt för läsaren att enkelt följa och förstå författarens tanketåg. Ett sammanhängande svar tar direkt upp frågan med tydliga kopplingar mellan meningar och stycken, med lämpliga övergångar och en logisk sekvens av idéer. Högre poäng innebär bättre sammanhållning.
Coherence example
from azure.ai.evaluation import CoherenceEvaluator
coherence = CoherenceEvaluator(model_config=model_config, threshold=3)
coherence(
query="Is Marie Curie is born in Paris?",
response="No, Marie Curie is born in Warsaw."
)
Coherence output
Det numeriska poängresultatet på en Likert-skala (heltal 1 till 5). Ett högre resultat är bättre. Givet en numerisk tröskel (standard 3) ger den också godkänt om poängen >= tröskel, eller underkänt annars. Använd anledningsfältet för att förstå varför poängen är hög eller låg.
{
"coherence": 4.0,
"gpt_coherence": 4.0,
"coherence_reason": "The RESPONSE is coherent and directly answers the QUERY with relevant information, making it easy to follow and understand.",
"coherence_result": "pass",
"coherence_threshold": 3
}
Fluency
Fluency-utvärderaren mäter effektiviteten och tydligheten i skriftlig kommunikation. Det här måttet fokuserar på grammatisk noggrannhet, vokabulärintervall, meningskomplexitet, enhetlighet och övergripande läsbarhet. Den utvärderar hur smidigt idéer förmedlas och hur enkelt läsaren kan förstå texten.
Fluency example
from azure.ai.evaluation import FluencyEvaluator
fluency = FluencyEvaluator(model_config=model_config, threshold=3)
fluency(
response="No, Marie Curie is born in Warsaw."
)
Fluency output
Det numeriska poängresultatet på en Likert-skala (heltal 1 till 5). Ett högre resultat är bättre. Givet en numerisk tröskel (standard 3) ger den också godkänt om poängen >= tröskel, eller underkänt annars. Använd anledningsfältet för att förstå varför poängen är hög eller låg.
{
"fluency": 3.0,
"gpt_fluency": 3.0,
"fluency_reason": "The response is clear and grammatically correct, but it lacks complexity and variety in sentence structure, which is why it fits the \"Competent Fluency\" level.",
"fluency_result": "pass",
"fluency_threshold": 3
}
Fråga som svarar på sammansatt utvärderare
QAEvaluator Mäter omfattande olika aspekter i ett fråge-svar-scenario:
- Relevance
- Groundedness
- Fluency
- Coherence
- Similarity
- F1 score
QA example
from azure.ai.evaluation import QAEvaluator
qa_eval = QAEvaluator(model_config=model_config, threshold=3)
qa_eval(
query="Where was Marie Curie born?",
context="Background: 1. Marie Curie was a chemist. 2. Marie Curie was born on November 7, 1867. 3. Marie Curie is a French scientist.",
response="According to wikipedia, Marie Curie was not born in Paris but in Warsaw.",
ground_truth="Marie Curie was born in Warsaw."
)
QA output
Medan F1-poängen ger ett numeriskt resultat på 0-1 flyttalskalan, ger de andra utvärderarna numeriska poäng på en Likert-skala (heltal 1 till 5). Ett högre resultat är bättre. Givet en numerisk tröskel (standard 3) ger den också godkänt om poängen >= tröskel, eller underkänt annars. Använd anledningsfältet för att förstå varför poängen är hög eller låg.
{
"f1_score": 0.631578947368421,
"f1_result": "pass",
"f1_threshold": 3,
"similarity": 4.0,
"gpt_similarity": 4.0,
"similarity_result": "pass",
"similarity_threshold": 3,
"fluency": 3.0,
"gpt_fluency": 3.0,
"fluency_reason": "The input Data should get a Score of 3 because it clearly conveys an idea with correct grammar and adequate vocabulary, but it lacks complexity and variety in sentence structure.",
"fluency_result": "pass",
"fluency_threshold": 3,
"relevance": 3.0,
"gpt_relevance": 3.0,
"relevance_reason": "The RESPONSE does not fully answer the QUERY because it fails to explicitly state that Marie Curie was born in Warsaw, which is the key detail needed for a complete understanding. Instead, it only negates Paris, which does not fully address the question.",
"relevance_result": "pass",
"relevance_threshold": 3,
"coherence": 2.0,
"gpt_coherence": 2.0,
"coherence_reason": "The RESPONSE provides some relevant information but lacks a clear and logical structure, making it difficult to follow. It does not directly answer the question in a coherent manner, which is why it falls into the \"Poorly Coherent Response\" category.",
"coherence_result": "fail",
"coherence_threshold": 3,
"groundedness": 3.0,
"gpt_groundedness": 3.0,
"groundedness_reason": "The response attempts to answer the query about Marie Curie's birthplace but includes incorrect information by stating she was not born in Paris, which is irrelevant. It does provide the correct birthplace (Warsaw), but the misleading nature of the response affects its overall groundedness. Therefore, it deserves a score of 3.",
"groundedness_result": "pass",
"groundedness_threshold": 3
}