Оқиға
Интеллектуалды бағдарламаларды құру
Mar 17, 9 PM - Mar 21, 10 AM
Нақты пайдалану жағдайлары негізінде масштабты ИСК шешімдерін құру үшін стипендиаттармен және сарапшылармен кездесу сериясына қосылыңыз.
Қазір тіркелуБұл браузерге бұдан былай қолдау көрсетілмейді.
Соңғы мүмкіндіктерді, қауіпсіздік жаңартуларын және техникалық қолдауды пайдалану үшін Microsoft Edge браузеріне жаңартыңыз.
Клиентские библиотеки Пакета SDK Azure предоставляют интерфейс для служб Azure, превратив вызовы методов в сообщения, отправленные через соответствующий протокол службы. Для служб REST API это означает отправку HTTP-запросов и преобразование ответов в типы среды выполнения. В этой статье вы узнаете о различных типах методов, предоставляемых клиентскими библиотеками, и изучите их шаблоны реализации.
Клиентская библиотека Пакета SDK Azure для .NET может предоставлять две различные категории методов для выполнения запросов к службе Azure:
Методы протокола и удобства реализуют несколько разные шаблоны в зависимости от цепочки зависимостей пакета соответствующей библиотеки. Клиентская библиотека пакета SDK Azure для .NET зависит от одной из двух разных базовых библиотек:
Azure.Storage.Blobs
.System.ClientModel
— это набор инструментов общего назначения, предназначенный для создания библиотек для различных платформ и служб, в то время как Azure.Core
библиотека специально предназначена для создания клиентских библиотек Azure.Ескерім
Сама Azure.Core
библиотека также зависит от System.ClientModel
различных стандартных блоков клиента. В контексте этой статьи ключевой разными способами шаблонов методов является ли клиентская библиотека зависит Azure.Core
от или System.ClientModel
напрямую, а не через транзитивную зависимость.
В следующей таблице сравниваются некоторые типы запросов и ответов, используемые протоколом и удобными методами, в зависимости от того, зависит Azure.Core
ли библиотека от него.System.ClientModel
Озабоченность по запросу или ответу | Azure.Core | System.ClientModel |
---|---|---|
Текст запроса | RequestContent | BinaryContent |
Дополнительные параметры запроса | RequestContext | RequestOptions |
Необработанный HTTP-ответ | Response | PipelineResponse |
Тип возврата с выходной моделью | Response<T> | ClientResult<T> |
В следующих разделах приведены примеры реализации этих понятий.
Шаблоны и типы кода, используемые протоколом клиентской библиотеки и удобные методы, немного зависят от того, зависит Azure.Core
ли библиотека от него.System.ClientModel
Различия в основном влияют на типы .NET, используемые для обработки данных запросов и ответов.
Клиентские библиотеки Azure SDK, зависимые от последних рекомендаций по проектированию, зависят от библиотеки Azure.Core
. Например, Azure.AI.ContentSafety
библиотека зависит от Azure.Core
библиотеки и предоставляет ContentSafetyClient
класс, предоставляющий как протокол, так и удобные методы.
В следующем коде ContentSafetyClient
используется для вызова удобного AnalyzeText
метода:
using Azure.AI.ContentSafety;
using Azure.Identity;
// Create the client
ContentSafetyClient client = new(
new Uri("https://contentsafetyai.cognitiveservices.azure.com/"),
new DefaultAzureCredential());
// Call the convenience method
AnalyzeTextResult result = client.AnalyzeText("What is Microsoft Azure?");
// Display the results
foreach (TextCategoriesAnalysis item in result.CategoriesAnalysis)
{
Console.WriteLine($"{item.Category}: {item.Severity}");
}
Приведенный выше код демонстрирует следующие Azure.Core
шаблоны удобных методов:
Некоторые клиентские библиотеки, подключающиеся к службам, не относящихся к Azure, используют шаблоны, аналогичные библиотекам, зависящим от Azure.Core
. Например, OpenAI
библиотека предоставляет клиент, который подключается к службам OpenAI. Эти библиотеки основаны на библиотеке, которая System.ClientModel
называется шаблонами, похожими Azure.Core
на .
Рассмотрим следующий код, который используется ChatClient
для вызова удобного CompleteChat
метода:
using OpenAI.Chat;
// Create the client
ChatClient client = new(
model: "gpt-4o-mini",
credential: Environment.GetEnvironmentVariable("OPENAI_API_KEY")!);
// Call the convenience method
ChatCompletion completion = client.CompleteChat("What is Microsoft Azure?");
// Display the results
Console.WriteLine($"[{completion.Role}]: {completion}");
Приведенный выше код демонстрирует следующие System.ClientModel
шаблоны удобных методов:
ClientResult
Возвращает тип, представляющий результат операции.При сбое вызова службы клиент службы создает исключение, которое предоставляет код состояния HTTP и сведения о ответе службы, если оно доступно. Зависимый System.ClientModel
от библиотеки создает ClientResultExceptionисключение, в то время как Azure.Core
зависимый от библиотеки создает исключение RequestFailedException.
using Azure.AI.ContentSafety;
using Azure.Identity;
using Azure;
// Create the client
ContentSafetyClient client = new(
new Uri("https://contentsafetyai.cognitiveservices.azure.com/"),
new DefaultAzureCredential());
try
{
// Call the convenience method
AnalyzeTextResult result = client.AnalyzeText("What is Microsoft Azure?");
// Display the results
foreach (TextCategoriesAnalysis item in result.CategoriesAnalysis)
{
Console.WriteLine($"{item.Category}: {item.Severity}");
}
}
catch (RequestFailedException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
Хотя клиентские библиотеки пакета SDK Azure для .NET предоставляют возможность использовать методы протокола или удобства, приоритеты используют удобные методы в большинстве сценариев. Удобные методы предназначены для улучшения возможностей разработки и обеспечения гибкости для разработки запросов и обработки ответов. Однако оба типа методов можно использовать в приложении по мере необходимости. При выборе типа используемого метода следует учитывать следующие критерии.
Удобные методы:
Методы протокола:
RequestContext
и RequestOptions
, которые недоступны с помощью удобных методов..NET кері байланысы
.NET — бастапқы коды ашық жоба. Пікір қалдыру үшін сілтемені таңдаңыз:
Оқиға
Интеллектуалды бағдарламаларды құру
Mar 17, 9 PM - Mar 21, 10 AM
Нақты пайдалану жағдайлары негізінде масштабты ИСК шешімдерін құру үшін стипендиаттармен және сарапшылармен кездесу сериясына қосылыңыз.
Қазір тіркелуОқыту
Модуль
Zugreifen auf Daten in Azure Blob Storage mit verschiedenen Protokollen - Training
Sie können auf Ihre Daten in Azure Blob Storage mit verschiedenen Protokollen zugreifen, z. B. Representational State Transfer (REST), Hadoop Distributed File System (HDFS), Network File System (NFS) und Secure File Transfer Protocol (SFTP).
Құжаттама