# Переход на dbt v2

Локальная разработка

После [установки расширения dbt для VS Code](https://docs.getdbt.tech/docs/install-dbt-extension.md) используйте панель **Get started**, чтобы перевести свой проект на dbt v2, если вы еще этого не сделали.

примечание

Если вы уже используете dbt v2, для работы с инструментом перехода требуется версия `2.0.0-beta.66` или выше.

Расширение dbt предлагает два способа перевести проект на dbt v2 через панель **Get started**:

* [**Миграция с помощью агентов**:](#agentic-migration) Выполняет миграцию с dbt v1 на dbt v2 с помощью или ИИ-агентов. Выберите этот вариант на шаге **Check dbt v2 compatibility**. Требуется или ИИ-агенты.
* [**Ручной переход через CLI**:](#manual-cli-onboarding) Пошагово проводит вас через процесс перехода в терминале. Используйте этот вариант, если предпочитаете CLI или не используете или ИИ-агентов.

## Миграция с помощью агентов

1. Выберите **Start with an agent** на шаге **Check dbt v2 compatibility**.
2. Расширение устанавливает навык агента **Migrate dbt v1 to dbt v2** в папку навыков вашего редактора, а затем открывает ИИ-чат с запросом на миграцию.
3. Нажмите **Install & open chat**, чтобы продолжить. Чат откроется с уже загруженным запросом на миграцию, поэтому вы сможете запустить его прямо из редактора. Выполнять команды CLI не требуется.

## Ручной переход через CLI

На панели **Get started** есть помощник, который пошагово проводит вас через процесс перехода в терминале.

[![Панель Get started и помощник перехода в расширении dbt.](/img/docs/extension/vsce-manual-upgrade.png?v=2 "Панель Get started и помощник перехода в расширении dbt.")](#)Панель Get started и помощник перехода в расширении dbt.

Вы можете начать ручной переход любым из следующих способов:

### Через панель Get started

* На панели **Get started** выберите **Start manually in CLI** на шаге **Check dbt v2 compatibility**.
* Следуйте указаниям помощника, чтобы завершить переход.
* Выполните `dbtf compile`, чтобы убедиться, что ваш проект готов к работе с dbt v2.

[![Сообщение, которое появляется после завершения перехода проекта на v2.](/img/docs/extension/v2-onboarding-complete.png?v=2 "Сообщение, которое появляется после завершения перехода проекта на v2.")](#)Сообщение, которое появляется после завершения перехода проекта на v2.

После завершения перехода вы можете приступить к изучению всех возможностей dbt v2!

Затем [войдите](https://docs.getdbt.tech/docs/sign-in-dbt-extension.md) в учетную запись dbt platform, если хотите использовать возможности dbt platform в расширении.

### Через терминал

* Выполните в терминале:

  ```shell
  dbt init --v2-upgrade
  ```

Инструмент перехода проведет вас через последовательность запросов:

 У вас уже есть учетная запись dbt platform?

Если вы ответите `Y`, инструмент предоставит инструкции по скачиванию профиля dbt platform или аутентификации. Если вы ответите `N`, процесс продолжится настройкой локального проекта.

 Готовы запустить dbt init?

Если файл `profiles.yml` отсутствует, инструмент поможет вам создать его и подключиться к хранилищу данных.

 Готовы запустить dbt debug?

Если файл `profiles.yml` существует, инструмент проверит, что ваш проект настроен правильно и может подключиться к хранилищу данных.

 Готовы запустить dbt parse?

Инструмент выполняет разбор вашего проекта dbt, чтобы проверить совместимость с dbt v2.

* Если разбор завершится с ошибкой, инструмент может запустить [dbt-autofix](https://github.com/dbt-labs/dbt-autofix?tab=readme-ov-file#installation), чтобы помочь устранить ошибки.
* Если вы пропустите запуск dbt-autofix, его можно будет запустить позже или исправить ошибки вручную. Инструмент перехода не сможет продолжить работу, пока ошибки разбора не будут устранены.

 Готовы запустить dbt compile с отключенным статическим анализом?

После успешного разбора инструмент компилирует ваш проект без статического анализа. Это воспроизводит поведение dbt v1: Jinja преобразуется в SQL, а расширенные возможности dbt v2 по анализу SQL временно отключаются.

ИИ-агенты

В некоторых случаях dbt-autofix не может устранить все ошибки и требуется ручное вмешательство. Для таких случаев инструмент dbt-autofix предоставляет файл [AI Agents.md](https://github.com/dbt-labs/dbt-autofix/blob/main/AGENTS.md), который помогает ИИ-агентам продолжить миграцию после того, как dbt-autofix выполнит свою часть работы.

 Готовы запустить dbt compile?

Инструмент компилирует ваш проект с полным статическим анализом dbt v2. Это позволяет проверить корректность вашего SQL-кода с учетом таблиц и столбцов в хранилище данных.

[![Сообщение, которое появляется после завершения перехода проекта на v2.](/img/docs/extension/v2-onboarding-complete.png?v=2 "Сообщение, которое появляется после завершения перехода проекта на v2.")](#)Сообщение, которое появляется после завершения перехода проекта на v2.

После завершения перехода вы можете приступить к изучению всех возможностей dbt v2!

Затем [войдите](https://docs.getdbt.tech/docs/sign-in-dbt-extension.md) в учетную запись dbt platform, если хотите использовать возможности dbt platform в расширении.

## Дальнейшие шаги

После перевода проекта на dbt v2 вы можете:

* [Войти](https://docs.getdbt.tech/docs/sign-in-dbt-extension.md) в учетную запись dbt platform, если хотите использовать возможности dbt platform в расширении, например вкладку **Catalog**.
* [Настроить локальное окружение](https://docs.getdbt.tech/docs/configure-dbt-extension.md) в соответствии с вашим окружением dbt platform и [задать переменные окружения](https://docs.getdbt.tech/docs/configure-dbt-extension.md#set-environment-variables-locally), необходимые для проекта.
* [Сравнить изменения локально](https://docs.getdbt.tech/docs/dbt/vs-compare-changes.md), чтобы предварительно оценить изменения данных, вызванные вашими локальными правками.
* [Оптимизировать статический анализ для разработки и развертывания](https://docs.getdbt.tech/best-practices/optimize-static-analysis-for-development-and-deployment.md), чтобы выполнять более тщательную локальную проверку, не замедляя задания развертывания.
* Ознакомиться с [ограничениями и неподдерживаемыми возможностями](https://docs.getdbt.tech/docs/dbt/supported-features.md#limitations).
