ConversationAuthoringClient.ImportProjectAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
[Méthode de protocole] Déclenche un travail pour importer un projet. Si un projet portant le même nom existe déjà, les données de ce projet sont remplacées.
- Cette méthode de protocole permet la création explicite de la demande et le traitement de la réponse pour les scénarios avancés.
public virtual System.Threading.Tasks.Task<Azure.Operation<BinaryData>> ImportProjectAsync (Azure.WaitUntil waitUntil, string projectName, Azure.Core.RequestContent content, string exportedProjectFormat = default, Azure.RequestContext context = default);
abstract member ImportProjectAsync : Azure.WaitUntil * string * Azure.Core.RequestContent * string * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
override this.ImportProjectAsync : Azure.WaitUntil * string * Azure.Core.RequestContent * string * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Operation<BinaryData>>
Public Overridable Function ImportProjectAsync (waitUntil As WaitUntil, projectName As String, content As RequestContent, Optional exportedProjectFormat As String = Nothing, Optional context As RequestContext = Nothing) As Task(Of Operation(Of BinaryData))
Paramètres
- waitUntil
- WaitUntil
Completed si la méthode doit attendre pour retourner jusqu’à ce que l’opération de longue durée soit terminée sur le service ; Started si elle doit être retournée après le démarrage de l’opération. Pour plus d’informations sur les opérations de longue durée, consultez Exemples d’opérations de Long-Running Azure.Core.
- projectName
- String
Nom du projet à utiliser.
- content
- RequestContent
Contenu à envoyer en tant que corps de la demande.
- exportedProjectFormat
- String
Format du fichier projet exporté à utiliser. Valeurs autorisées : « Conversation » | « Luis ».
- context
- RequestContext
Contexte de la demande, qui peut remplacer les comportements par défaut du pipeline client par appel.
Retours
Operation représentant une opération asynchrone sur le service.
Exceptions
projectName
ou content
est null.
projectName
est une chaîne vide et devait être non vide.
Le service a retourné un code de status non réussi.
Exemples
Cet exemple montre comment appeler ImportProjectAsync avec les paramètres requis et demander le contenu, et comment analyser le résultat.
var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new ConversationAuthoringClient(endpoint, credential);
var data = new {
projectFileVersion = "<projectFileVersion>",
stringIndexType = "Utf16CodeUnit",
metadata = new {
projectKind = "Conversation",
projectName = "<projectName>",
language = "<language>",
},
};
var operation = await client.ImportProjectAsync(WaitUntil.Completed, "<projectName>", RequestContent.Create(data));
BinaryData responseData = operation.Value;
JsonElement result = JsonDocument.Parse(responseData.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("jobId").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdatedDateTime").ToString());
Console.WriteLine(result.GetProperty("status").ToString());
Cet exemple montre comment appeler ImportProjectAsync avec tous les paramètres et demander le contenu, et comment analyser le résultat.
var credential = new AzureKeyCredential("<key>");
var endpoint = new Uri("<https://my-service.azure.com>");
var client = new ConversationAuthoringClient(endpoint, credential);
var data = new {
projectFileVersion = "<projectFileVersion>",
stringIndexType = "Utf16CodeUnit",
metadata = new {
projectKind = "Conversation",
settings = new {
confidenceThreshold = 123.45f,
},
projectName = "<projectName>",
multilingual = true,
description = "<description>",
language = "<language>",
},
assets = new {
intents = new[] {
new {
category = "<category>",
}
},
entities = new[] {
new {
category = "<category>",
compositionSetting = "returnLongestOverlap",
list = new {
sublists = new[] {
new {
listKey = "<listKey>",
synonyms = new[] {
new {
language = "<language>",
values = new[] {
"<String>"
},
}
},
}
},
},
prebuilts = new[] {
new {
category = "<category>",
}
},
regex = new {
expressions = new[] {
new {
regexKey = "<regexKey>",
language = "<language>",
regexPattern = "<regexPattern>",
}
},
},
requiredComponents = new[] {
"<String>"
},
}
},
utterances = new[] {
new {
entities = new[] {
new {
category = "<category>",
offset = 1234,
length = 1234,
}
},
text = "<text>",
language = "<language>",
intent = "<intent>",
dataset = "<dataset>",
}
},
projectKind = "Conversation",
},
};
var operation = await client.ImportProjectAsync(WaitUntil.Completed, "<projectName>", RequestContent.Create(data), "<exportedProjectFormat>");
BinaryData responseData = operation.Value;
JsonElement result = JsonDocument.Parse(responseData.ToStream()).RootElement;
Console.WriteLine(result.GetProperty("jobId").ToString());
Console.WriteLine(result.GetProperty("createdDateTime").ToString());
Console.WriteLine(result.GetProperty("lastUpdatedDateTime").ToString());
Console.WriteLine(result.GetProperty("expirationDateTime").ToString());
Console.WriteLine(result.GetProperty("status").ToString());
Console.WriteLine(result.GetProperty("warnings")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("warnings")[0].GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("target").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("target").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("innererror").GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("innererror").GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("innererror").GetProperty("details").GetProperty("<test>").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("details")[0].GetProperty("innererror").GetProperty("target").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("innererror").GetProperty("code").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("innererror").GetProperty("message").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("innererror").GetProperty("details").GetProperty("<test>").ToString());
Console.WriteLine(result.GetProperty("errors")[0].GetProperty("innererror").GetProperty("target").ToString());
Remarques
Vous trouverez des informations supplémentaires dans la documentation de l’API REST de service : https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/import
S’applique à
Azure SDK for .NET