Skip to content
Open
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

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ model ApiErrorResponse {
}

#suppress "@azure-tools/typespec-azure-core/experimental-feature" "Using experimental feature"
@@copyProperties(OpenAI.Error,
@@copyProperties(
OpenAI.Error,
{
details?: OpenAI.Error[],
additionalInfo?: Record<unknown>,
Expand Down Expand Up @@ -43,7 +44,7 @@ op OpenAIOperation<
Params extends Reflection.Model,
Response,
ErrorResponse = ApiErrorResponse
>(...Params): Response | ErrorResponse;
>(...Params): Response | AzureRangeErrorResponse<ErrorResponse>;

#suppress "@azure-tools/typespec-azure-core/operation-missing-api-version" "OpenAI-based operations are not conventionally versioned"
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "OpenAI-based operations are definitionally non-standard"
Expand All @@ -52,10 +53,9 @@ op OpenAIOperationWithPreview<
Params extends Reflection.Model,
Response,
ErrorResponse = ApiErrorResponse
>(
...WithConditionalFoundryPreviewHeader<AreaPreviewLabel>,
...Params,
): Response | ErrorResponse;
>(...WithConditionalFoundryPreviewHeader<AreaPreviewLabel>, ...Params):
| Response
| AzureRangeErrorResponse<ErrorResponse>;

alias AssetBase = {
@doc("Asset ID, a unique identifier for the asset")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ interface Datasets
> {
@doc("Start a new or get an existing pending upload of a dataset for a specific version.")
@Rest.action("startPendingUpload")
startPendingUploadVersion is Azure.Core.Foundations.ResourceOperation<
startPendingUploadVersion is FoundryResourceOperation<
DatasetVersion,
{
@doc("The pending upload request parameters")
Expand All @@ -42,7 +42,7 @@ interface Datasets
@post
@Rest.action("credentials")
@Rest.actionSeparator("/")
getCredentials is Azure.Core.Foundations.ResourceOperation<
getCredentials is FoundryResourceOperation<
DatasetVersion,
{
@doc("The specific version id of the DatasetVersion to operate on.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,7 @@ using Azure.Core.Traits;

namespace Azure.AI.Projects;

alias DeploymentServiceTraits = SupportsClientRequestId &
NoRepeatableRequests &
NoConditionalRequests;

alias DeploymentOperations = Azure.Core.ResourceOperations<DeploymentServiceTraits>;
alias DeploymentOperations = FoundryAzureOperations<{}>;

@tag("Deployments")
interface Deployments {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ alias EvaluationRulesFilterQueryParams = {
interface EvaluationRules {
// GET /evaluationrules/{id}
@doc("Get an evaluation rule.")
get is Azure.Core.Foundations.ResourceOperation<
get is FoundryResourceOperation<
EvaluationRule,
{},
Azure.Core.Foundations.ResourceOkResponse<EvaluationRule>
Expand All @@ -36,7 +36,7 @@ interface EvaluationRules {
// DELETE /evaluationrules/{id}
@doc("Delete an evaluation rule.")
@Http.delete
delete is Azure.Core.Foundations.ResourceOperation<
delete is FoundryResourceOperation<
EvaluationRule,
{},
Http.NoContentResponse
Expand All @@ -45,7 +45,7 @@ interface EvaluationRules {
// PUT /evaluationrules/{id}
@doc("Create or update an evaluation rule.")
@Http.put
createOrUpdate is Azure.Core.Foundations.ResourceOperation<
createOrUpdate is FoundryResourceOperation<
EvaluationRule,
{
...EvaluationRulesPreviewHeader;
Expand All @@ -60,7 +60,7 @@ interface EvaluationRules {
// GET /evaluationrules
@doc("List all evaluation rules.")
@Rest.listsResource(EvaluationRule)
list is Azure.Core.Foundations.ResourceList<
list is FoundryResourceList<
EvaluationRule,
EvaluationRulesFilterQueryParams,
Azure.Core.Page<EvaluationRule>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ alias EvaluationTaxonomiesFilterQueryParamsTraits = {
@tag("Evaluation Taxonomies")
interface EvaluationTaxonomies {
@doc("Get an evaluation run by name.")
get is Azure.Core.Foundations.ResourceOperation<
get is FoundryResourceOperation<
EvaluationTaxonomy,
{
...EvaluationTaxonomiesPreviewHeader;
Expand All @@ -31,7 +31,7 @@ interface EvaluationTaxonomies {

@doc("List evaluation taxonomies")
@Rest.listsResource(EvaluationTaxonomy)
list is Azure.Core.Foundations.ResourceList<
list is FoundryResourceList<
EvaluationTaxonomy,
EvaluationTaxonomiesFilterQueryParamsTraits &
EvaluationTaxonomiesPreviewHeader,
Expand All @@ -40,7 +40,7 @@ interface EvaluationTaxonomies {

@doc("Delete an evaluation taxonomy by name.")
@Http.delete
delete is Azure.Core.Foundations.ResourceOperation<
delete is FoundryResourceOperation<
EvaluationTaxonomy,
{
...EvaluationTaxonomiesPreviewHeader;
Expand All @@ -51,7 +51,7 @@ interface EvaluationTaxonomies {
@doc("Create an evaluation taxonomy.")
@put
@route("/evaluationtaxonomies/{name}")
create is Azure.Core.Foundations.Operation<
create is FoundryOperation<
{
...EvaluationTaxonomiesPreviewHeader;

Expand All @@ -69,7 +69,7 @@ interface EvaluationTaxonomies {
@doc("Update an evaluation taxonomy.")
@patch(#{ implicitOptionality: true })
@route("/evaluationtaxonomies/{name}")
update is Azure.Core.Foundations.Operation<
update is FoundryOperation<
{
...EvaluationTaxonomiesPreviewHeader;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,11 @@
import "./models.tsp";

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

namespace Azure.AI.Projects;

alias ServiceTraits = SupportsClientRequestId &
NoRepeatableRequests &
NoConditionalRequests;

alias EvaluationsOperations = Azure.Core.ResourceOperations<ServiceTraits>;
alias EvaluationsOperations = FoundryAzureOperations<{}>;

@route("evaluations")
@removed(Versions.v1)
Expand All @@ -25,7 +20,7 @@ interface Evaluations {
@doc("Creates an evaluation run.")
@route("runs:run")
@post
create is Azure.Core.Foundations.Operation<
create is FoundryOperation<
{
@doc("Evaluation to be run")
@body
Expand All @@ -38,7 +33,7 @@ interface Evaluations {
@doc("Creates an agent evaluation run.")
@route("runs:runAgent")
@post
createAgentEvaluation is Azure.Core.Foundations.Operation<
createAgentEvaluation is FoundryOperation<
{
@doc("Agent evaluation to be run")
@body
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ interface Evaluators {
@Rest.actionSeparator("/")
@Http.get
@list
listVersions is Azure.Core.StandardResourceOperations.ResourceAction<
listVersions is FoundryStandardResourceOperations.ResourceAction<
EvaluatorVersion,
ListEvaluatorVersionsParameters & EvaluatorsPreviewHeader,
Azure.Core.Page<EvaluatorVersion>
Expand All @@ -38,7 +38,7 @@ interface Evaluators {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations"
@doc("List the latest version of each evaluator")
@Rest.listsResource(EvaluatorVersion)
listLatestVersions is Azure.Core.Foundations.ResourceList<
listLatestVersions is FoundryResourceList<
EvaluatorVersion,
ListEvaluatorVersionsParameters & EvaluatorsPreviewHeader,
Azure.Core.Page<EvaluatorVersion>
Expand All @@ -50,7 +50,7 @@ interface Evaluators {
"Get the specific version of the {name}. The service returns 404 Not Found error if the {name} does not exist.",
EvaluatorVersion
)
getVersion is Azure.Core.Foundations.ResourceOperation<
getVersion is FoundryResourceOperation<
EvaluatorVersion,
{
...EvaluatorsPreviewHeader;
Expand All @@ -73,7 +73,7 @@ interface Evaluators {
EvaluatorVersion
)
@Http.delete
deleteVersion is Azure.Core.Foundations.ResourceOperation<
deleteVersion is FoundryResourceOperation<
EvaluatorVersion,
{
...EvaluatorsPreviewHeader;
Expand All @@ -91,7 +91,7 @@ interface Evaluators {
@doc("Create a new {name} with auto incremented version id", EvaluatorVersion)
@Rest.segment("versions")
@Http.post
createVersion is Azure.Core.Foundations.ResourceOperation<
createVersion is FoundryResourceOperation<
EvaluatorVersion,
{
...EvaluatorsPreviewHeader;
Expand All @@ -107,7 +107,7 @@ interface Evaluators {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations"
@doc("Update an existing {name} with the given version id", EvaluatorVersion)
@Http.patch(#{ implicitOptionality: true })
updateVersion is Azure.Core.Foundations.ResourceOperation<
updateVersion is FoundryResourceOperation<
EvaluatorVersion,
{
...EvaluatorsPreviewHeader;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ interface Models
ModelVersion
)
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
getVersion is Azure.Core.Foundations.ResourceOperation<
getVersion is FoundryResourceOperation<
ModelVersion,
{
...ModelsPreviewHeader;
Expand All @@ -53,7 +53,7 @@ interface Models
)
@delete
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
deleteVersion is Azure.Core.Foundations.ResourceOperation<
deleteVersion is FoundryResourceOperation<
ModelVersion,
{
...ModelsPreviewHeader;
Expand All @@ -75,7 +75,7 @@ interface Models
@operationId("Models_updateVersion")
@patch
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
createOrUpdateVersion is Azure.Core.Foundations.ResourceOperation<
createOrUpdateVersion is FoundryResourceOperation<
ModelVersion,
InputParameters<UpdateModelVersionRequest> & ModelsPreviewHeader,
Azure.Core.Foundations.ResourceCreatedOrOkResponse<ModelVersion>
Expand All @@ -86,7 +86,7 @@ interface Models
@route("/models/{name}/versions/{version}/createAsync")
@post
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
createAsync is Azure.Core.Foundations.Operation<
createAsync is FoundryOperation<
{
...ModelsPreviewHeader;

Expand All @@ -110,7 +110,7 @@ interface Models
@route("/models/{name}/versions/{version}/startPendingUpload")
@post
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
startPendingUpload is Azure.Core.Foundations.Operation<
startPendingUpload is FoundryOperation<
{
...ModelsPreviewHeader;

Expand All @@ -133,7 +133,7 @@ interface Models
@route("/models/{name}/versions/{version}/credentials")
@post
@extension("x-ms-foundry-meta", ModelsRequiredPreviews)
getCredentials is Azure.Core.Foundations.Operation<
getCredentials is FoundryOperation<
{
...ModelsPreviewHeader;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ alias RedTeamsPreviewHeader = WithRequiredFoundryPreviewHeader<FoundryFeaturesOp
interface RedTeams {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("Get a redteam by name.")
get is Azure.Core.Foundations.ResourceOperation<
get is FoundryResourceOperation<
RedTeam,
{
...RedTeamsPreviewHeader;
Expand All @@ -22,7 +22,7 @@ interface RedTeams {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("List a redteam by name.")
@Rest.listsResource(RedTeam)
list is Azure.Core.Foundations.ResourceList<
list is FoundryResourceList<
RedTeam,
RedTeamsPreviewHeader,
Azure.Core.Page<RedTeam>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ interface Schedules {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("Delete a schedule.")
@Http.delete
delete is Azure.Core.Foundations.ResourceOperation<
delete is FoundryResourceOperation<
Schedule,
{
...SchedulesPreviewHeader;
Expand All @@ -40,7 +40,7 @@ interface Schedules {

#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("Get a schedule by id.")
get is Azure.Core.Foundations.ResourceOperation<
get is FoundryResourceOperation<
Schedule,
{
...SchedulesPreviewHeader;
Expand All @@ -51,7 +51,7 @@ interface Schedules {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("List all schedules.")
@Rest.listsResource(Schedule)
list is Azure.Core.Foundations.ResourceList<
list is FoundryResourceList<
Schedule,
SchedulesFilterQueryParams & SchedulesPreviewHeader,
Azure.Core.Page<Schedule>
Expand All @@ -60,7 +60,7 @@ interface Schedules {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("Create or update operation template.")
@Http.put
createOrUpdate is Azure.Core.Foundations.ResourceOperation<
createOrUpdate is FoundryResourceOperation<
Schedule,
SchedulesCreateOrUpdateParams,
Azure.Core.Foundations.ResourceCreatedOrOkResponse<Schedule>
Expand Down Expand Up @@ -88,7 +88,7 @@ interface Schedules {
#suppress "@azure-tools/typespec-azure-core/use-standard-operations" "We need explicit definition for header support"
@doc("List all schedule runs.")
@Rest.listsResource(ScheduleRun)
listRuns is Azure.Core.Foundations.ResourceList<
listRuns is FoundryResourceList<
ScheduleRun,
SchedulesFilterQueryParams & SchedulesPreviewHeader,
Azure.Core.Page<ScheduleRun>
Expand Down
Loading
Loading