Compartilhar via


ModelInference.CreateSoilMoistureModelJobAsync Método

Definição

Crie um trabalho de Modelo SoilMoisture.

public virtual System.Threading.Tasks.Task<Azure.Operation<BinaryData>> CreateSoilMoistureModelJobAsync (Azure.WaitUntil waitUntil, string jobId, Azure.Core.RequestContent content, Azure.RequestContext context = default);
abstract member CreateSoilMoistureModelJobAsync : Azure.WaitUntil * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
override this.CreateSoilMoistureModelJobAsync : Azure.WaitUntil * string * Azure.Core.RequestContent * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
Public Overridable Function CreateSoilMoistureModelJobAsync (waitUntil As WaitUntil, jobId As String, content As RequestContent, Optional context As RequestContext = Nothing) As Task(Of Operation(Of BinaryData))

Parâmetros

waitUntil
WaitUntil

Completed se o método deve aguardar para retornar até que a operação de execução prolongada seja concluída no serviço; Started se ele deve retornar depois de iniciar a operação. Para obter mais informações sobre operações de execução prolongada, consulte Exemplos de operação de Long-Running do Azure.Core.

jobId
String

JobId fornecido pelo usuário.

content
RequestContent

O conteúdo a ser enviado como o corpo da solicitação. Os detalhes do esquema do corpo da solicitação estão na seção Comentários abaixo.

context
RequestContext

O contexto de solicitação, que pode substituir os comportamentos padrão do pipeline do cliente por chamada.

Retornos

O Operation<T> do serviço que conterá um BinaryData objeto depois que a operação assíncrona no serviço for concluída. Os detalhes do esquema do corpo do valor final da operação estão na seção Comentários abaixo.

Exceções

jobId ou content é nulo.

jobId é uma cadeia de caracteres vazia e esperava-se que não estivesse vazia.

O serviço retornou um código de status sem êxito.

Exemplos

Este exemplo mostra como chamar CreateSoilMoistureModelJobAsync com os parâmetros necessários e o conteúdo da solicitação e como analisar o resultado.

var credential = new DefaultAzureCredential();
var client = new FarmBeatsClient(credential).GetModelInferenceClient(<2022-11-01-preview>);

var data = new {
    partyId = "<partyId>",
    boundaryId = "<boundaryId>",
    sensorDataModelId = "<sensorDataModelId>",
    sensorPartnerId = "<sensorPartnerId>",
    inferenceStartDateTime = "2022-05-10T18:57:31.2311892Z",
    inferenceEndDateTime = "2022-05-10T18:57:31.2311892Z",
    satelliteProvider = "Microsoft",
    satelliteSource = "Sentinel_2_L2A",
    imageResolution = 123.45d,
    imageFormat = "TIF",
    modelVersion = "<modelVersion>",
    sensorDefinition = new {
        sensorMeasurement = "<sensorMeasurement>",
        minProperty = "<minProperty>",
        maxProperty = "<maxProperty>",
    },
};

var operation = await client.CreateSoilMoistureModelJobAsync(WaitUntil.Completed, "<jobId>", RequestContent.Create(data));

BinaryData data = operation.Value;
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("partyId").ToString());
Console.WriteLine(result.GetProperty("boundaryId").ToString());
Console.WriteLine(result.GetProperty("sensorDataModelId").ToString());
Console.WriteLine(result.GetProperty("sensorPartnerId").ToString());
Console.WriteLine(result.GetProperty("inferenceStartDateTime").ToString());
Console.WriteLine(result.GetProperty("inferenceEndDateTime").ToString());
Console.WriteLine(result.GetProperty("satelliteProvider").ToString());
Console.WriteLine(result.GetProperty("satelliteSource").ToString());
Console.WriteLine(result.GetProperty("imageResolution").ToString());
Console.WriteLine(result.GetProperty("imageFormat").ToString());
Console.WriteLine(result.GetProperty("modelVersion").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("sensorMeasurement").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("minProperty").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("maxProperty").ToString());

Este exemplo mostra como chamar CreateSoilMoistureModelJobAsync com todos os parâmetros e conteúdo da solicitação e como analisar o resultado.

var credential = new DefaultAzureCredential();
var client = new FarmBeatsClient(credential).GetModelInferenceClient(<2022-11-01-preview>);

var data = new {
    partyId = "<partyId>",
    boundaryId = "<boundaryId>",
    sensorDataModelId = "<sensorDataModelId>",
    sensorPartnerId = "<sensorPartnerId>",
    inferenceStartDateTime = "2022-05-10T18:57:31.2311892Z",
    inferenceEndDateTime = "2022-05-10T18:57:31.2311892Z",
    satelliteProvider = "Microsoft",
    satelliteSource = "Sentinel_2_L2A",
    imageResolution = 123.45d,
    imageFormat = "TIF",
    modelVersion = "<modelVersion>",
    sensorDefinition = new {
        sensorMeasurement = "<sensorMeasurement>",
        minProperty = "<minProperty>",
        maxProperty = "<maxProperty>",
    },
    name = "<name>",
    description = "<description>",
    properties = new {
        key = new {},
    },
};

var operation = await client.CreateSoilMoistureModelJobAsync(WaitUntil.Completed, "<jobId>", RequestContent.Create(data));

BinaryData data = operation.Value;
JsonElement result = JsonDocument.Parse(data.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("partyId").ToString());
Console.WriteLine(result.GetProperty("boundaryId").ToString());
Console.WriteLine(result.GetProperty("sensorDataModelId").ToString());
Console.WriteLine(result.GetProperty("sensorPartnerId").ToString());
Console.WriteLine(result.GetProperty("inferenceStartDateTime").ToString());
Console.WriteLine(result.GetProperty("inferenceEndDateTime").ToString());
Console.WriteLine(result.GetProperty("satelliteProvider").ToString());
Console.WriteLine(result.GetProperty("satelliteSource").ToString());
Console.WriteLine(result.GetProperty("imageResolution").ToString());
Console.WriteLine(result.GetProperty("imageFormat").ToString());
Console.WriteLine(result.GetProperty("modelVersion").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("sensorMeasurement").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("minProperty").ToString());
Console.WriteLine(result.GetProperty("sensorDefinition").GetProperty("maxProperty").ToString());
Console.WriteLine(result.GetProperty("id").ToString());
Console.WriteLine(result.GetProperty("status").ToString());
Console.WriteLine(result.GetProperty("durationInSeconds").ToString());
Console.WriteLine(result.GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errorCode").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("lastActionDateTime").ToString());
Console.WriteLine(result.GetProperty("startTime").ToString());
Console.WriteLine(result.GetProperty("endTime").ToString());
Console.WriteLine(result.GetProperty("name").ToString());
Console.WriteLine(result.GetProperty("description").ToString());
Console.WriteLine(result.GetProperty("createdBy").ToString());
Console.WriteLine(result.GetProperty("modifiedBy").ToString());
Console.WriteLine(result.GetProperty("properties").GetProperty("<test>").ToString());

Comentários

Abaixo está o esquema JSON para as cargas de solicitação e resposta.

Corpo da solicitação:

Esquema para SoilMoistureModelJob:

{
  partyId: string, # Required. Party Id.
  boundaryId: string, # Required. The id of the boundary object for which soil moisture is being calculated.
  sensorDataModelId: string, # Required. Sensor data model Id.
  sensorPartnerId: string, # Required. Sensor partner Id.
  inferenceStartDateTime: string (ISO 8601 Format), # Required. Inference start date time for soil moisture calculations.
  inferenceEndDateTime: string (ISO 8601 Format), # Required. Inference end date time for soil moisture calculations.
  satelliteProvider: "Microsoft", # Required. Provider of satellite data. Available Value: Microsoft.
  satelliteSource: "Sentinel_2_L2A" | "Sentinel_2_L1C", # Required. Source of satellite data. Available Value: Sentinel_2_L2A.
  imageResolution: number, # Required. ImageResolution in meters. Available values: 10, 20, 60.
  imageFormat: "TIF", # Required. ImageFormat. Available value: TIF.
  modelVersion: string, # Required. The version of the soil moisture model to be run.
  sensorDefinition: {
    sensorMeasurement: string, # Required. The measurement name for sensor measure in sensorDataModel.
    minProperty: string, # Required. The measurement name for minimum measurement value.
    maxProperty: string, # Required. The measurement name for maximum measurement value.
  }, # Required. Schema for storing sensor definition keywords.
  id: string, # Optional. Unique job id.
  status: string, # Optional. Status of the job.
Possible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.
  durationInSeconds: number, # Optional. Duration of the job in seconds.
  message: string, # Optional. Status message to capture more details of the job.
  errorCode: string, # Optional. Error Code when job failed.
  createdDateTime: string (ISO 8601 Format), # Optional. Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  lastActionDateTime: string (ISO 8601 Format), # Optional. Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  startTime: string (ISO 8601 Format), # Optional. Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  endTime: string (ISO 8601 Format), # Optional. Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  name: string, # Optional. Name to identify resource.
  description: string, # Optional. Textual description of the resource.
  createdBy: string, # Optional. Created by user/tenant id.
  modifiedBy: string, # Optional. Modified by user/tenant id.
  properties: Dictionary<string, any>, # Optional. A collection of key value pairs that belongs to the resource.
Each pair must not have a key greater than 50 characters
and must not have a value greater than 150 characters.
Note: A maximum of 25 key value pairs can be provided for a resource and only string,
numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.
}

Corpo da resposta:

Esquema para SoilMoistureModelJob:

{
  partyId: string, # Required. Party Id.
  boundaryId: string, # Required. The id of the boundary object for which soil moisture is being calculated.
  sensorDataModelId: string, # Required. Sensor data model Id.
  sensorPartnerId: string, # Required. Sensor partner Id.
  inferenceStartDateTime: string (ISO 8601 Format), # Required. Inference start date time for soil moisture calculations.
  inferenceEndDateTime: string (ISO 8601 Format), # Required. Inference end date time for soil moisture calculations.
  satelliteProvider: "Microsoft", # Required. Provider of satellite data. Available Value: Microsoft.
  satelliteSource: "Sentinel_2_L2A" | "Sentinel_2_L1C", # Required. Source of satellite data. Available Value: Sentinel_2_L2A.
  imageResolution: number, # Required. ImageResolution in meters. Available values: 10, 20, 60.
  imageFormat: "TIF", # Required. ImageFormat. Available value: TIF.
  modelVersion: string, # Required. The version of the soil moisture model to be run.
  sensorDefinition: {
    sensorMeasurement: string, # Required. The measurement name for sensor measure in sensorDataModel.
    minProperty: string, # Required. The measurement name for minimum measurement value.
    maxProperty: string, # Required. The measurement name for maximum measurement value.
  }, # Required. Schema for storing sensor definition keywords.
  id: string, # Optional. Unique job id.
  status: string, # Optional. Status of the job.
Possible values: 'Waiting', 'Running', 'Succeeded', 'Failed', 'Cancelled'.
  durationInSeconds: number, # Optional. Duration of the job in seconds.
  message: string, # Optional. Status message to capture more details of the job.
  errorCode: string, # Optional. Error Code when job failed.
  createdDateTime: string (ISO 8601 Format), # Optional. Job created at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  lastActionDateTime: string (ISO 8601 Format), # Optional. Job was last acted upon at dateTime. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  startTime: string (ISO 8601 Format), # Optional. Job start time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  endTime: string (ISO 8601 Format), # Optional. Job end time when available. Sample format: yyyy-MM-ddTHH:mm:ssZ.
  name: string, # Optional. Name to identify resource.
  description: string, # Optional. Textual description of the resource.
  createdBy: string, # Optional. Created by user/tenant id.
  modifiedBy: string, # Optional. Modified by user/tenant id.
  properties: Dictionary<string, any>, # Optional. A collection of key value pairs that belongs to the resource.
Each pair must not have a key greater than 50 characters
and must not have a value greater than 150 characters.
Note: A maximum of 25 key value pairs can be provided for a resource and only string,
numeral and datetime (yyyy-MM-ddTHH:mm:ssZ) values are supported.
}

Aplica-se a