Примечание.
Второй пилот SDK в настоящее время находится в Technical Preview. Функциональность и доступность могут меняться.
Обзор архитектуры
Каждая GitHub Copilot SDK интеграция следует одному и тому же основному шаблону: ваше приложение взаимодействует с SDK, который общается через Второй пилот CLI JSON-RPC. Что меняется в зависимости от конфигурации — это то, где работает CLI, как пользователи аутентифицируются и как управляются сессиями.
Кто вы?
Любитель
Вы создаёте личного ассистента, побочный проект или экспериментальное приложение. Вам нужен самый простой путь к внедрению Copilot в ваш код.
Начните с:
- АВТОЗАГОЛОВКИ — используйте CLI, уже вошёл в систему на вашем компьютере.
- Использование комплектного CLI с Copilot SDK—упаковать всё в отдельное приложение.
Внутренний разработчик приложений
Вы создаёте инструменты для своей команды или компании. Пользователи — это сотрудники, которым необходимо пройти аутентификацию через корпоративные GitHub аккаунты или членство в организации.
Начните с:
- Использование GitHub OAuth с Copilot SDK — позволите сотрудникам войти через свои GitHub аккаунты.
- Настройка Copilot SDK для бэкенд-сервисов — запускайте SDK во внутренних сервисах.
Если масштабироваться выше одного сервера:
- Масштабирование развертываний Copilot SDK — работа с несколькими пользователями и сервисами.
Разработчик приложений (ISV)
Вы создаёте продукт для клиентов. Вам нужно заниматься аутентификацией для ваших пользователей — либо через GitHub самостоятельное управление идентификацией.
Начните с:
- Использование GitHub OAuth с Copilot SDK — позвольте клиентам войти с помощью GitHub.
- BYOK в
github/copilot-sdkрепозитории — управляйте идентичностью с помощью собственных ключей модели. - Настройка Copilot SDK для бэкенд-сервисов — питание вашего продукта на серверном коде.
Для производства:
- Масштабирование развертываний Copilot SDK — надежно обслуживать многих клиентов.
Разработчик платформы
Вы встраиваете Copilot в платформу — API, инструменты для разработчиков или инфраструктуру, на которой строят другие разработчики. Вам нужен тонкий контроль над сессиями, масштабированием и мультиарендой.
Начните с:
- Настройка Copilot SDK для бэкенд-сервисов—основная интеграция на сервере.
- Масштабирование развертываний Copilot SDK — изоляция сессии, горизонтальное масштабирование, сохранение.
В зависимости от вашей модели аутентификации:
- Использование GitHub OAuth с Copilot SDK — для GitHub-аутентифицированных пользователей.
- BYOK в
github/copilot-sdkрепозитории — для самоуправляемой идентичности и доступа к модели.
Матрица принятия решений
Используйте эту таблицу, чтобы найти правильное руководство исходя из того, что вам нужно сделать.
| Что вам нужно | Guide |
|---|---|
| Самая простая возможная настройка | |
| Использование локального CLI с Copilot SDK | |
| Поставьте отдельное приложение с Copilot | |
| Использование комплектного CLI с Copilot SDK | |
| Пользователи входят в систему с GitHub | |
| Использование GitHub OAuth с Copilot SDK | |
| Используйте свои собственные ключи модели (OpenAI, Azure и др.) | |
BYOK в github/copilot-sdk репозитории | |
| Azure BYOK с управляемой идентификацией (без API-ключей) | |
| Использование Azure Managed Identity с Copilot SDK | |
| Запустите SDK на сервере | |
| Настройка Copilot SDK для бэкенд-сервисов | |
| Обслуживать нескольких пользователей или масштабироваться горизонтально | |
| Масштабирование развертываний Copilot SDK |
Необходимые условия
Все гайды предполагают, что у вас есть:
- Второй пилот CLI установлен. Дополнительные сведения см. в разделе Установка GitHub Copilot CLI.
- Один из SDK, установленных:
- Node.js:
npm install @github/copilot-sdk - Питон (язык программирования):
pip install github-copilot-sdk - Вперёд:
go get github.com/github/copilot-sdk/go - .NET:
dotnet add package GitHub.Copilot.SDK - Java: см.
github/copilot-sdk-javaрепозиторий для настройки Maven/Gradle
- Node.js:
Если вы новичок, GitHub Copilot SDKначните с Начало работы с Copilot SDK , а затем возвращайтесь сюда для производственной настройки.
Дальнейшие действия
Выберите гайд, который соответствует вашей ситуации, из матрицы решений выше, или начните с описания персонажа, наиболее близкого к вашей роли.