Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Právě zobrazeno:Verze portálu Foundry (klasická) - Přepnout na verzi nového portálu Foundry
Důležité
Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti. Další informace najdete v tématu Supplementální podmínky použití pro Microsoft Azure Preview.
V tomto článku se dozvíte, jak spustit vyhodnocení v cloudu (Preview) pro testování před nasazením testovací datové sady. Sada AZURE AI Evaluation SDK umožňuje spouštět hodnocení místně na vašem počítači a v cloudu. Například spusťte místní vyhodnocení malých testovacích dat, abyste posoudili prototypy generující aplikace AI, a pak se přesuňte do předem připraveného testování, abyste mohli spustit vyhodnocení u velké datové sady.
Používejte hodnocení cloudu pro většinu scénářů, zejména při testování ve velkém měřítku, integraci hodnocení do pipelines kontinuální integrace a průběžného doručování (CI/CD) nebo provádění předběžného testování. Spouštění vyhodnocení v cloudu eliminuje nutnost spravovat místní výpočetní infrastrukturu a podporuje rozsáhlé automatizované testovací pracovní postupy. Po nasazení se můžete rozhodnout, že budete agenty průběžně vyhodnocovat pro monitorování po nasazení.
Při použití sady Foundry SDK zaznamená výsledky vyhodnocení do projektu Foundry pro lepší sledovatelnost. Tato funkce podporuje všechny integrované vyhodnocovače od Microsoftu. a vlastní vlastní vyhodnocovací nástroje. Vaše vyhodnocovače se dají najít v knihovně vyhodnocovačů a mají stejné řízení přístupu k projektu na základě rolí.
Předpoklady
- Projekt Foundry.
- Nasazení OpenAI Azure s modelem GPT, který podporuje dokončování chatu (například
gpt-5-mini). - Role Azure AI User na projektu Foundry.
- Volitelně můžete ke spuštění vyhodnocení použít vlastní účet storage.
Poznámka:
Některé funkce vyhodnocení mají regionální omezení. Podrobnosti najdete v tématu podporované oblasti.
Začínáme
Nainstalujte klienta sady Microsoft Foundry SDK project pro spuštění vyhodnocení v cloudu:
pip install azure-ai-projects azure-identityNastavte proměnné prostředí pro vaše prostředky Foundry:
import os # Required environment variables: endpoint = os.environ["PROJECT_ENDPOINT"] # https://<account>.services.ai.azure.com/api/projects/<project> model_endpoint = os.environ["MODEL_ENDPOINT"] # https://<account>.services.ai.azure.com model_api_key = os.environ["MODEL_API_KEY"] model_deployment_name = os.environ["MODEL_DEPLOYMENT_NAME"] # E.g. gpt-5-mini # Optional: Reuse an existing dataset. dataset_name = os.environ.get("DATASET_NAME", "dataset-test") dataset_version = os.environ.get("DATASET_VERSION", "1.0")Definujte klienta pro spouštění vyhodnocení v cloudu:
import os from azure.identity import DefaultAzureCredential from azure.ai.projects import AIProjectClient # Create the project client (Foundry project and credentials): project_client = AIProjectClient( endpoint=endpoint, credential=DefaultAzureCredential(), )
Příprava vstupních dat
# Upload a local JSONL file. Skip this step if you already have a dataset registered.
data_id = project_client.datasets.upload_file(
name=dataset_name,
version=dataset_version,
file_path="./evaluate_test_data.jsonl",
).id
Další informace o formátech vstupních dat pro vyhodnocení aplikací generující umělé inteligence najdete v tématech:
Další informace o formátech vstupních dat pro vyhodnocování agentů jsou k dispozici v tématech Vyhodnoťte služby Azure AI a Vyhodnoťte další agenty.
Určení vyhodnocovačů
from azure.ai.projects.models import (
EvaluatorConfiguration,
EvaluatorIds,
)
# Built-in evaluator configurations:
evaluators = {
"relevance": EvaluatorConfiguration(
id=EvaluatorIds.RELEVANCE.value,
init_params={"deployment_name": model_deployment_name},
data_mapping={
"query": "${data.query}",
"response": "${data.response}",
},
),
"violence": EvaluatorConfiguration(
id=EvaluatorIds.VIOLENCE.value,
init_params={"azure_ai_project": endpoint},
),
"bleu_score": EvaluatorConfiguration(
id=EvaluatorIds.BLEU_SCORE.value,
),
}
Vytvoření vyhodnocení
Nakonec odešlete běh vzdáleného vyhodnocení:
from azure.ai.projects.models import (
Evaluation,
InputDataset
)
# Create an evaluation with the dataset and evaluators specified.
evaluation = Evaluation(
display_name="Cloud evaluation",
description="Evaluation of dataset",
data=InputDataset(id=data_id),
evaluators=evaluators,
)
# Run the evaluation.
evaluation_response = project_client.evaluations.create(
evaluation,
headers={
"model-endpoint": model_endpoint,
"api-key": model_api_key,
},
)
print("Created evaluation:", evaluation_response.name)
print("Status:", evaluation_response.status)
Určení vlastních vyhodnocovačů
Poznámka:
Projekty Foundry nejsou pro tuto funkci podporované. Místo toho použijte projekt Foundry hub.
Vlastní vyhodnocovače založené na kódu
Zaregistrujte vlastní vyhodnocovače do project centra Azure AI Hub a načtěte ID vyhodnocovače:
from azure.ai.ml import MLClient
from azure.ai.ml.entities import Model
from promptflow.client import PFClient
# Define ml_client to register the custom evaluator.
ml_client = MLClient(
subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"],
resource_group_name=os.environ["AZURE_RESOURCE_GROUP"],
workspace_name=os.environ["AZURE_PROJECT_NAME"],
credential=DefaultAzureCredential()
)
# Load the evaluator from the module.
from answer_len.answer_length import AnswerLengthEvaluator
# Convert it to an evaluation flow, and save it locally.
pf_client = PFClient()
local_path = "answer_len_local"
pf_client.flows.save(entry=AnswerLengthEvaluator, path=local_path)
# Specify the evaluator name that appears in the evaluator catalog.
evaluator_name = "AnswerLenEvaluator"
# Register the evaluator to the evaluator catalog.
custom_evaluator = Model(
path=local_path,
name=evaluator_name,
description="Evaluator calculating answer length.",
)
registered_evaluator = ml_client.evaluators.create_or_update(custom_evaluator)
print("Registered evaluator id:", registered_evaluator.id)
# Registered evaluators have versioning. You can always reference any version available.
versioned_evaluator = ml_client.evaluators.get(evaluator_name, version=1)
print("Versioned evaluator id:", registered_evaluator.id)
Po registraci vlastního vyhodnocovače si ho prohlédněte v katalogu vyhodnocovače. Ve vašem projektu Foundry vyberte Hodnocení a pak vyberte katalog hodnotitelů.
Vlastní hodnotící nástroje založené na výzvách
Tento příklad použijte k registraci vlastního FriendlinessEvaluator sestavení, jak je popsáno v vyhodnocovacích metodách založených na výzev:
# Import your prompt-based custom evaluator.
from friendliness.friend import FriendlinessEvaluator
# Define your deployment.
model_config = dict(
azure_endpoint=os.environ.get("AZURE_ENDPOINT"),
azure_deployment=os.environ.get("AZURE_DEPLOYMENT_NAME"),
api_version=os.environ.get("AZURE_API_VERSION"),
api_key=os.environ.get("AZURE_API_KEY"),
type="azure_openai"
)
# Define ml_client to register the custom evaluator.
ml_client = MLClient(
subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"],
resource_group_name=os.environ["AZURE_RESOURCE_GROUP"],
workspace_name=os.environ["AZURE_PROJECT_NAME"],
credential=DefaultAzureCredential()
)
# # Convert the evaluator to evaluation flow and save it locally.
local_path = "friendliness_local"
pf_client = PFClient()
pf_client.flows.save(entry=FriendlinessEvaluator, path=local_path)
# Specify the evaluator name that appears in the evaluator catalog.
evaluator_name = "FriendlinessEvaluator"
# Register the evaluator to the evaluator catalog.
custom_evaluator = Model(
path=local_path,
name=evaluator_name,
description="prompt-based evaluator measuring response friendliness.",
)
registered_evaluator = ml_client.evaluators.create_or_update(custom_evaluator)
print("Registered evaluator id:", registered_evaluator.id)
# Registered evaluators have versioning. You can always reference any version available.
versioned_evaluator = ml_client.evaluators.get(evaluator_name, version=1)
print("Versioned evaluator id:", registered_evaluator.id)
Po registraci vlastního vyhodnocovače ho můžete zobrazit v katalogu vyhodnocovače. Ve vašem projektu Foundry vyberte Hodnocení a pak vyberte katalog hodnotitelů.
Získání výsledků
Řešení problémů
Související obsah
- Místní vyhodnocení aplikací generující umělé inteligence
- Sledujte své aplikace s generativní umělou inteligencí
- Informace o simulaci testovacích datových sad pro vyhodnocení
- Zobrazit výsledky vyhodnocení na portálu Foundry
- Začněte s Foundry
- Začít s hodnotícími vzorky
- Referenční dokumentace k rozhraní REST API