Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions specification/ai/Azure.AI.Projects/evaluation-results/models.tsp
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
import "@typespec/rest";
import "@azure-tools/typespec-autorest";
import "@typespec/versioning";
import "@azure-tools/typespec-azure-core";
import "../common/models.tsp";
import "../main.tsp";

using TypeSpec.OpenAPI;
using TypeSpec.Http;
using TypeSpec.Rest;
using TypeSpec.Versioning;
using Azure.Core;
using Azure.Core.Traits;

namespace Azure.AI.Projects;

@doc("Evaluation Result resource Definition")
@Rest.resource("evaluationResult")
model EvaluationResult {
@doc("Type of Evaluation result")
ResultType?: ResultType;

@doc("Model Name")
ModelName?: string;

@doc("Model Version")
ModelVersion?: string;

@doc("Model Asset ID")
ModelAssetId?: string;

@doc("Dataset Family")
DatasetFamily?: string;

@doc("Dataset Name")
DatasetName?: string;

@doc("Metrics")
Metrics?: Record<float64>;

@doc("Blob URI")
BlobUri?: string;

...AssetBase;
}

@doc("Type of Evaluation result")
union ResultType {
string,

@doc("Benchmark result")
Benchmark: "Benchmark";

@doc("Evaluations Result")
Evaluation: "Evaluation";

@doc("Red Team Result")
Redteam: "Redteam";

@doc("Simulation Result")
Simulation: "Simulation";
}
45 changes: 45 additions & 0 deletions specification/ai/Azure.AI.Projects/evaluation-results/routes.tsp
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import "@typespec/http";
import "@typespec/rest";
import "@azure-tools/typespec-autorest";
import "@typespec/versioning";
import "@azure-tools/typespec-azure-core";
import "../common/models.tsp";
import "./models.tsp";
import "../servicepatterns.tsp";

using TypeSpec.Http;

namespace Azure.AI.Projects;

alias ListEvaluationResultsParameters = {
@doc("Top count of results, top count cannot be greater than the page size. If topCount > page size, results with be default page size count will be returned")
@query
top?: int32;

@doc("Continuation token for pagination.")
@query
skip?: string;

@doc("Comma-separated list of tag names (and optionally values). Example: tag1,tag2=value2")
@query
tags?: string;

@doc("[ListViewType.ActiveOnly, ListViewType.ArchivedOnly, ListViewType.All] View type for including/excluding (for example) archived entities.")
@query
listViewType?: ListViewType;
};

#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We are using service specific operation templates"
interface EvaluationResults
extends ServicePatterns.VersionedOperations<
EvaluationResult,
ListEvaluationResultsParameters,
ListEvaluationResultsParameters
> {
@doc("Create or start a pending upload of a evaluation results for a specific version.")
startPendingUpload is ServicePatterns.VersionedResourceAction<
EvaluationResult,
PendingUploadRequest,
PendingUploadResponse
>;
}
4 changes: 4 additions & 0 deletions specification/ai/Azure.AI.Projects/evaluations/models.tsp
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,8 @@ model Evaluation {

@doc("Evaluators to be used for the evaluation.")
evaluators: Record<EvaluatorConfiguration>;

@doc("Read-only result outputs. Example: { 'evaluationResultId': 'azureai://accounts/{AccountName}/projects/{myproject}/evaluationresults/{name}/{version}', 'logId': 'azureai://accounts/{AccountName}/projects/{myproject}/datasets/{dataset-name}/{dataset-version}' }")
@visibility(Lifecycle.Read)
outputs: Record<string>;
}
1 change: 1 addition & 0 deletions specification/ai/Azure.AI.Projects/main.tsp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import "./evaluations/routes.tsp";
import "./datasets/routes.tsp";
import "./indexes/routes.tsp";
import "./deployments/routes.tsp";
import "./evaluation-results/routes.tsp";

using TypeSpec.Http;
using TypeSpec.Versioning;
Expand Down
Loading