После развертывания модели в Azure AI Foundry вы можете использовать свои возможности с помощью API-интерфейсов Azure AI Foundry. Существуют две разные конечные точки и API для использования моделей в модели Azure AI Foundry.
Конечная точка вывода моделей
Конечная точка вывода моделей (обычно с формой https://<resource-name>.services.ai.azure.com/models
) позволяет клиентам использовать одну конечную точку с той же проверкой подлинности и схемой для создания вывода для развернутых моделей в ресурсе. Эта конечная точка использует API для вывода модели Azure AI, который поддерживает все модели в Foundry Models. Он поддерживает следующие модальности:
- Внедрение текста
- Внедрение изображений
- Завершение чата
Маршрутизация
Конечная точка вывода направляет запросы к заданному развертыванию, сопоставляя параметр name
внутри запроса с именем развертывания. Это означает, что развертывания работают как псевдоним данной модели при определенных конфигурациях. Эта гибкость позволяет развертывать определенную модель несколько раз в службе, но в разных конфигурациях при необходимости.
Например, если создать развертывание с именем Mistral-large
, такое развертывание можно вызвать следующим образом:
Установите пакет azure-ai-inference
с помощью диспетчера пакетов, например pip:
pip install azure-ai-inference
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
import os
from azure.ai.inference import ChatCompletionsClient
from azure.core.credentials import AzureKeyCredential
client = ChatCompletionsClient(
endpoint="https://<resource>.services.ai.azure.com/models",
credential=AzureKeyCredential(os.environ["AZURE_INFERENCE_CREDENTIAL"]),
)
Ознакомьтесь с нашими примерами и ознакомьтесь со справочной документацией по API, чтобы приступить к работе.
Установите пакет @azure-rest/ai-inference
с помощью npm:
npm install @azure-rest/ai-inference
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
import ModelClient from "@azure-rest/ai-inference";
import { isUnexpected } from "@azure-rest/ai-inference";
import { AzureKeyCredential } from "@azure/core-auth";
const client = new ModelClient(
"https://<resource>.services.ai.azure.com/models",
new AzureKeyCredential(process.env.AZURE_INFERENCE_CREDENTIAL)
);
Ознакомьтесь с нашими примерами и ознакомьтесь со справочной документацией по API, чтобы приступить к работе.
Установите библиотеку вывода искусственного интеллекта Azure с помощью следующей команды:
dotnet add package Azure.AI.Inference --prerelease
Импортируйте такие пространства имен:
using Azure;
using Azure.Identity;
using Azure.AI.Inference;
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
ChatCompletionsClient client = new ChatCompletionsClient(
new Uri("https://<resource>.services.ai.azure.com/models"),
new AzureKeyCredential(Environment.GetEnvironmentVariable("AZURE_INFERENCE_CREDENTIAL"))
);
Ознакомьтесь с нашими примерами и ознакомьтесь со справочной документацией по API, чтобы приступить к работе.
Добавьте пакет в проект:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-inference</artifactId>
<version>1.0.0-beta.1</version>
</dependency>
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
ChatCompletionsClient client = new ChatCompletionsClientBuilder()
.credential(new AzureKeyCredential("{key}"))
.endpoint("https://<resource>.services.ai.azure.com/models")
.buildClient();
Ознакомьтесь с нашими примерами и ознакомьтесь со справочной документацией по API, чтобы приступить к работе.
Используйте раздел справки для изучения структуры API и доступных параметров. Например, в разделе справки по на основе инструкций, отформатированных в чате. Обратите внимание, что путь /models
включен в корневой каталог URL-адреса:
Запросить
POST https://<resource>.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview
api-key: <api-key>
Content-Type: application/json
from azure.ai.inference.models import SystemMessage, UserMessage
response = client.complete(
messages=[
SystemMessage(content="You are a helpful assistant."),
UserMessage(content="Explain Riemann's conjecture in 1 paragraph"),
],
model="mistral-large"
)
print(response.choices[0].message.content)
var messages = [
{ role: "system", content: "You are a helpful assistant" },
{ role: "user", content: "Explain Riemann's conjecture in 1 paragraph" },
];
var response = await client.path("/chat/completions").post({
body: {
messages: messages,
model: "mistral-large"
}
});
console.log(response.body.choices[0].message.content)
requestOptions = new ChatCompletionsOptions()
{
Messages = {
new ChatRequestSystemMessage("You are a helpful assistant."),
new ChatRequestUserMessage("Explain Riemann's conjecture in 1 paragraph")
},
Model = "mistral-large"
};
response = client.Complete(requestOptions);
Console.WriteLine($"Response: {response.Value.Content}");
List<ChatRequestMessage> chatMessages = new ArrayList<>();
chatMessages.add(new ChatRequestSystemMessage("You are a helpful assistant"));
chatMessages.add(new ChatRequestUserMessage("Explain Riemann's conjecture in 1 paragraph"));
ChatCompletions chatCompletions = client.complete(new ChatCompletionsOptions(chatMessages));
for (ChatChoice choice : chatCompletions.getChoices()) {
ChatResponseMessage message = choice.getMessage();
System.out.println("Response:" + message.getContent());
}
Запросить
POST https://<resource>.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview
api-key: <api-key>
Content-Type: application/json
{
"messages": [
{
"role": "system",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Explain Riemann's conjecture in 1 paragraph"
}
],
"model": "mistral-large"
}
Подсказка
Маршрутизация развертывания не учитывает регистр.
Конечная точка вывода Azure OpenAI
Azure AI Foundry также поддерживает API Azure OpenAI. Этот API предоставляет полные возможности моделей OpenAI и поддерживает дополнительные функции, такие как помощники, потоки, файлы и пакетное вывод. Модели, отличные от OpenAI, также можно использовать для совместимых функций.
Конечные точки Azure OpenAI (обычно с формой https://<resource-name>.openai.azure.com
) работают на уровне развертывания и имеют собственный URL-адрес, связанный с каждым из них. Однако для их использования можно использовать тот же механизм проверки подлинности. Дополнительные сведения см. на справочной странице по Azure OpenAI API
У каждого развертывания есть URL-адрес, который является объединением базового URL-адреса Azure OpenAI и маршрута /deployments/<model-deployment-name>
.
Установите пакет openai
с помощью диспетчера пакетов, например pip:
pip install openai --upgrade
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
import os
from openai import AzureOpenAI
client = AzureOpenAI(
azure_endpoint = "https://<resource>.services.ai.azure.com"
api_key=os.getenv("AZURE_INFERENCE_CREDENTIAL"),
api_version="2024-10-21",
)
Установите пакет openai
с помощью npm:
npm install openai
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
import { AzureKeyCredential } from "@azure/openai";
const endpoint = "https://<resource>.services.ai.azure.com";
const apiKey = new AzureKeyCredential(process.env.AZURE_INFERENCE_CREDENTIAL);
const apiVersion = "2024-10-21"
const client = new AzureOpenAI({
endpoint,
apiKey,
apiVersion,
"deepseek-v3-0324"
});
deepseek-v3-0324
Ниже приведено имя развертывания модели в ресурсе Azure AI Foundry.
Установите библиотеку OpenAI со следующей командой:
dotnet add package Azure.AI.OpenAI --prerelease
Пакет можно использовать для использования модели. В следующем примере показано, как создать клиент для обработки завершения чата.
AzureOpenAIClient client = new(
new Uri("https://<resource>.services.ai.azure.com"),
new ApiKeyCredential(Environment.GetEnvironmentVariable("AZURE_INFERENCE_CREDENTIAL"))
);
Добавьте пакет в проект:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-openai</artifactId>
<version>1.0.0-beta.16</version>
</dependency>
Затем можно использовать пакет для работы с моделью. В следующем примере показано, как создать клиент для обработки завершения чата.
OpenAIClient client = new OpenAIClientBuilder()
.credential(new AzureKeyCredential("{key}"))
.endpoint("https://<resource>.services.ai.azure.com")
.buildClient();
Используйте раздел справки для изучения структуры API и доступных параметров. Например, в разделе справки по завершению чата подробно описано, как использовать маршрут /chat/completions
для создания прогнозов на основе инструкций, отформатированных в чате:
Запросить
POST https://<resource>.services.ai.azure.com/openai/deployments/deepseek-v3-0324/chat/completions?api-version=2024-10-21
api-key: <api-key>
Content-Type: application/json
deepseek-v3-0324
Ниже приведено имя развертывания модели в ресурсе Azure AI Foundry.
response = client.chat.completions.create(
model="deepseek-v3-0324", # Replace with your model dpeloyment name.
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Explain Riemann's conjecture in 1 paragraph"}
]
)
print(response.model_dump_json(indent=2)
var messages = [
{ role: "system", content: "You are a helpful assistant" },
{ role: "user", content: "Explain Riemann's conjecture in 1 paragraph" },
];
const response = await client.chat.completions.create({ messages, model: "deepseek-v3-0324" });
console.log(response.choices[0].message.content)
ChatCompletion response = chatClient.CompleteChat(
[
new SystemChatMessage("You are a helpful assistant."),
new UserChatMessage("Explain Riemann's conjecture in 1 paragraph"),
]);
Console.WriteLine($"{response.Role}: {response.Content[0].Text}");
List<ChatRequestMessage> chatMessages = new ArrayList<>();
chatMessages.add(new ChatRequestSystemMessage("You are a helpful assistant"));
chatMessages.add(new ChatRequestUserMessage("Explain Riemann's conjecture in 1 paragraph"));
ChatCompletions chatCompletions = client.getChatCompletions("deepseek-v3-0324",
new ChatCompletionsOptions(chatMessages));
System.out.printf("Model ID=%s is created at %s.%n", chatCompletions.getId(), chatCompletions.getCreatedAt());
for (ChatChoice choice : chatCompletions.getChoices()) {
ChatResponseMessage message = choice.getMessage();
System.out.printf("Index: %d, Chat Role: %s.%n", choice.getIndex(), message.getRole());
System.out.println("Message:");
System.out.println(message.getContent());
}
deepseek-v3-0324
Ниже приведено имя развертывания модели в ресурсе Azure AI Foundry.
Запросить
POST https://<resource>.services.ai.azure.com/openai/deployments/deepseek-v3-0324/chat/completions?api-version=2024-10-21
api-key: <api-key>
Content-Type: application/json
{
"messages": [
{
"role": "system",
"content": "You are a helpful assistant"
},
{
"role": "user",
"content": "Explain Riemann's conjecture in 1 paragraph"
}
]
}
deepseek-v3-0324
Ниже приведено имя развертывания модели в ресурсе Azure AI Foundry.
Следующие шаги