Интеграция генеративных моделей в Visual Studio Code
Вы можете облегчить процесс разработки в Visual Studio CodeQwen3-235B-A22B, GPT-OSS-120b и других. Модели способны генерировать код, конвертировать его в другие языки программирования, помогать с отладкой и поиском ошибок в коде, анализировать данные, писать документацию и другое.
В этом руководстве вы настроите интеграцию моделей в Visual Studio Code с помощью сервиса Yandex AI Studio и расширения SourceCraft Code Assistant
Примечание
Расширение Roo Code доступно только в Visual Studio Code.
Чтобы использовать модели в качестве ассистента в редакторе кода:
- Подготовьте инфраструктуру.
- Создайте API-ключ для сервисного аккаунта.
- Подключитесь к модели.
- Протестируйте модель.
В стоимость поддержки инфраструктуры для подключения к модели из редактора кода входит плата за генерацию текста (см. тарифы Yandex AI Studio).
Подготовьте инфраструктуру
Создайте каталог
- В консоли управления
выберите облако и нажмите кнопку Создать каталог. - Введите имя каталога, например
aistudio. - Нажмите кнопку Создать.
Создайте сервисный аккаунт
Сервисный аккаунт понадобится, чтобы получить API-ключ.
- Перейдите в каталог
aistudio. - В списке сервисов выберите Identity and Access Management.
- Нажмите кнопку Создать сервисный аккаунт.
- Введите имя сервисного аккаунта, например
ai-model-user. - Нажмите Добавить роль и назначьте сервисному аккаунту роль
ai.languageModels.user. - Нажмите кнопку Создать.
Создайте API-ключ для сервисного аккаунта
Чтобы редактор кода мог получить доступ к модели, создайте API-ключ.
- В консоли управления
перейдите в каталогaistudio. - В списке сервисов выберите Identity and Access Management.
- На панели слева выберите
Сервисные аккаунты. - В открывшемся списке выберите сервисный аккаунт
ai-model-user. - На панели сверху нажмите кнопку
Создать новый ключ и выберите Создать API-ключ. - В поле Область действия выберите
yc.ai.languageModels.execute. - Нажмите кнопку Создать.
- Сохраните идентификатор и секретный ключ.
Подключитесь к модели
-
Установите расширение SourceCraft Code Assistant
или Roo Code . -
Настройте расширение:
SourceCraft Code Assistant
-
В окне программы на панели слева нажмите SourceCraft Code Assistant.
-
В нижней части окна чата нажмите
Выберите конфигурацию API и нажмите Yandex Cloud AI Studio. -
Убедитесь, что в открывшемся окне настроек в поле Провайдер API выбрана опция
OpenAI Compatible, а в поле Базовый URL указано значениеhttps://llm.api.cloud.yandex.net/v1, затем закройте окно настроек. -
В нижней части окна чата нажмите
Выберите конфигурацию API и нажмите кнопку Добавить модель. -
В открывшемся окне введите имя профиля и нажмите Создать профиль.
-
В открывшемся окне настроек в поле Провайдер API выберите
OpenAI Compatible. -
В поле Базовый URL укажите
https://llm.api.cloud.yandex.net/v1. -
В поле OpenAI API-ключ вставьте секретное значение ключа, полученное на предыдущем шаге.
-
В поле Модель укажите URI модели в формате
gpt://<идентификатор_каталога>/<идентификатор_модели>/latest, где:<идентификатор_каталога>— идентификатор каталогаaistudio;<идентификатор_модели>— идентификатор модели. Например:qwen3-235b-a22b-fp8илиgpt-oss-120b.
Примечание
Выбранная модель будет использоваться только для работы ассистента. Функциональность автодополнения SourceCraft Code Assistant продолжит использовать модель по умолчанию.
Roo Code
-
В окне программы на панели слева нажмите Roo Code.
-
В открывшемся окне в поле API Provider выберите OpenAI Compatible.
-
В поле Base URL укажите
https://llm.api.cloud.yandex.net/v1. -
В поле API-key вставьте секретное значение ключа, полученное на предыдущем шаге.
-
В поле Model укажите URI модели в формате
gpt://<идентификатор_каталога>/<идентификатор_модели>/latest, где:<идентификатор_каталога>— идентификатор каталогаaistudio;<идентификатор_модели>— идентификатор модели. Например:qwen3-235b-a22b-fp8илиgpt-oss-120b.
-
Нажмите Go!.
-
Протестируйте модель
В качестве примера попросим модель сгенерировать скрипт обращения к модели через OpenAI SDK.
SourceCraft Code Assistant
-
На панели слева нажмите SourceCraft Code Assistant.
-
В окне чата с ассистентом в нижней части экрана напишите промт и нажмите
Отправить сообщение:Напиши скрипт test.py, который через Python OpenAI SDK делает потоковый вызов генерации стихотворения про Yandex Cloud. В качестве параметров принимается токен и идентификатор модели. В качестве эндпоинта — https://llm.api.cloud.yandex.net/v1Результат:
import sys from openai import OpenAI def main(): if len(sys.argv) != 3: print("Usage: python test.py <token> <model_id>") return token = sys.argv[1] model_id = sys.argv[2] client = OpenAI( base_url="https://llm.api.cloud.yandex.net/v1", api_key=token ) stream = client.chat.completions.create( model=model_id, messages=[ {"role": "user", "content": "Напиши стихотворение про Yandex Cloud"} ], stream=True ) for chunk in stream: content = chunk.choices[0].delta.content if content: print(content, end="") if __name__ == "__main__": main()
Roo Code
-
На панели слева нажмите Roo Code.
-
В открывшемся окне в поле ввода снизу напишите промт и нажмите Send message:
Напиши скрипт test.py, который через Python OpenAI SDK делает потоковый вызов генерации стихотворения про Yandex Cloud. В качестве параметров принимается токен и идентификатор модели. В качестве эндпоинта — https://llm.api.cloud.yandex.net/v1Результат:
import sys from openai import OpenAI def main(): if len(sys.argv) != 3: print("Usage: python test.py <token> <model_id>") return token = sys.argv[1] model_id = sys.argv[2] client = OpenAI( base_url="https://llm.api.cloud.yandex.net/v1", api_key=token ) stream = client.chat.completions.create( model=model_id, messages=[ {"role": "user", "content": "Напиши стихотворение про Yandex Cloud"} ], stream=True ) for chunk in stream: content = chunk.choices[0].delta.content if content: print(content, end="") if __name__ == "__main__": main()