AI Toolkit for VS Code спрощує розробку додатків із генеративним ШІ, об'єднуючи найсучасніші інструменти та моделі AI від Microsoft Foundry Catalog та інших каталогів, таких як Hugging Face. Ви зможете переглядати каталог моделей ШІ, який працює на базі GitHub Models та Microsoft Foundry Model Catalogs, завантажувати їх локально або віддалено, донавчати, тестувати та використовувати у вашому додатку.
Попередній перегляд AI Toolkit працюватиме локально. Локальне виведення або донавчання залежить від вибраної моделі, можливо, вам знадобиться GPU, наприклад NVIDIA CUDA GPU. Ви також можете запускати GitHub Models безпосередньо через AITK.
Дізнайтеся більше про встановлення підсистеми Windows для Linux
та змінення розподілу за замовчуванням.
Репозиторій AI Toolkit на GitHub
-
Windows, Linux, macOS
-
Для донавчання на Windows і Linux потрібен графічний процесор Nvidia. Крім того, Windows вимагає підсистему для Linux з дистрибутивом Ubuntu 18.4 або новішим. Дізнайтеся більше про встановлення підсистеми Windows для Linux і зміна розподілу за замовчуванням.
AI Toolkit постачається як розширення для Visual Studio Code, тому спочатку потрібно встановити VS Code та завантажити AI Toolkit із VS Marketplace.
AI Toolkit доступний у Visual Studio Marketplace і може бути встановлений як будь-яке інше розширення VS Code.
Якщо ви не знайомі з встановленням розширень VS Code, виконайте наступні кроки:
- У панелі активності VS Code виберіть Extensions
- У рядку пошуку розширень введіть "AI Toolkit"
- Виберіть "AI Toolkit for Visual Studio code"
- Натисніть Install
Тепер ви готові користуватися розширенням!
Вам буде запропоновано увійти в GitHub, тож натисніть "Allow" для продовження. Вас буде перенаправлено на сторінку входу GitHub.
Будь ласка, увійдіть і дотримуйтесь кроків процесу. Після успішного завершення вас повернуть до VS Code.
Після встановлення розширення ви побачите іконку AI Toolkit у панелі активності.
Давайте дослідимо доступні дії!
Головна бічна панель AI Toolkit організована в секції
- Моделі
- Ресурси
- Пісочниця
- Донавчання
- Оцінювання
Доступні у розділі Resources. Щоб почати, виберіть Model Catalog.
При запуску AI Toolkit із бічної панелі VS Code ви можете обрати такі опції:
- Знайти підтримувану модель у Model Catalog і завантажити локально
- Протестувати виведення моделі у Model Playground
- Донавчати модель локально або віддалено у Model Fine-tuning
- Розгорнути донавчені моделі у хмарі через командну палітру AI Toolkit
- Оцінити моделі
Note
GPU та CPU
Ви помітите, що на картках моделей показані розмір моделі, платформа та тип акселератора (CPU, GPU). Для оптимальної продуктивності на пристроях Windows з принаймні одним GPU обирайте версії моделей, які підтримують лише Windows.
Це гарантує, що модель оптимізована для акселератора DirectML.
Імена моделей мають формат
{model_name}-{accelerator}-{quantization}-{format}.
Щоб перевірити наявність GPU на вашому пристрої Windows, відкрийте Диспетчер завдань і виберіть вкладку Performance. Якщо GPU(и) є, вони будуть перелічені під назвами, як-от "GPU 0" або "GPU 1".
Після встановлення всіх параметрів натисніть Generate Project.
Після завантаження моделі виберіть Load in Playground на картці моделі у каталозі:
- Ініціювати завантаження моделі
- Встановити всі необхідні залежності
- Створити робочий простір VS Code
AI Toolkit постачається з локальним веб-сервером REST API на порті 5272, який використовує формат чат-комплітів OpenAI.
Це дозволяє тестувати ваш додаток локально без необхідності покладатися на хмарний сервіс моделей ШІ. Наприклад, наведений нижче JSON-файл показує, як налаштувати тіло запиту:
{
"model": "Phi-4",
"messages": [
{
"role": "user",
"content": "what is the golden ratio?"
}
],
"temperature": 0.7,
"top_p": 1,
"top_k": 10,
"max_tokens": 100,
"stream": true
}Ви можете тестувати REST API за допомогою (наприклад) Postman або утиліти CURL (Client URL):
curl -vX POST http://127.0.0.1:5272/v1/chat/completions -H 'Content-Type: application/json' -d @body.jsonfrom openai import OpenAI
client = OpenAI(
base_url="http://127.0.0.1:5272/v1/",
api_key="x" # необхідно для API, але не використовується
)
chat_completion = client.chat.completions.create(
messages=[
{
"role": "user",
"content": "what is the golden ratio?",
}
],
model="Phi-4",
)
print(chat_completion.choices[0].message.content)Додайте Azure OpenAI клієнтську бібліотеку для .NET до вашого проекту через NuGet:
dotnet add {project_name} package Azure.AI.OpenAI --version 1.0.0-beta.17Додайте файл C# під назвою OverridePolicy.cs у ваш проект і вставте наступний код:
// OverridePolicy.cs
using Azure.Core.Pipeline;
using Azure.Core;
internal partial class OverrideRequestUriPolicy(Uri overrideUri)
: HttpPipelineSynchronousPolicy
{
private readonly Uri _overrideUri = overrideUri;
public override void OnSendingRequest(HttpMessage message)
{
message.Request.Uri.Reset(_overrideUri);
}
}Далі вставте наступний код у файл Program.cs:
// Program.cs
using Azure.AI.OpenAI;
Uri localhostUri = new("http://localhost:5272/v1/chat/completions");
OpenAIClientOptions clientOptions = new();
clientOptions.AddPolicy(
new OverrideRequestUriPolicy(localhostUri),
Azure.Core.HttpPipelinePosition.BeforeTransport);
OpenAIClient client = new(openAIApiKey: "unused", clientOptions);
ChatCompletionsOptions options = new()
{
DeploymentName = "Phi-4",
Messages =
{
new ChatRequestSystemMessage("You are a helpful assistant. Be brief and succinct."),
new ChatRequestUserMessage("What is the golden ratio?"),
}
};
StreamingResponse<StreamingChatCompletionsUpdate> streamingChatResponse
= await client.GetChatCompletionsStreamingAsync(options);
await foreach (StreamingChatCompletionsUpdate chatChunk in streamingChatResponse)
{
Console.Write(chatChunk.ContentUpdate);
}- Почніть з пошуку моделей та пісочниці.
- Донавчання та виведення моделі за допомогою локальних обчислювальних ресурсів.
- Віддалене донавчання та виведення з використанням ресурсів Azure
Будь ласка, зверніться до нашої сторінки з Q&A для найпоширеніших питань і рішень
Відмова від відповідальності: Цей документ було перекладено за допомогою сервісу автоматичного перекладу Co-op Translator. Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою повинен вважатися авторитетним джерелом. Для критично важливої інформації рекомендується професійний переклад людиною. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникли внаслідок використання цього перекладу.

