OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Налаштування шаблону застосунку GitHub Enterprise у ChatGPT

Дізнайтеся, як адміністратори робочого простору можуть налаштувати шаблон застосунку GitHub Enterprise у ChatGPT за допомогою власного GitHub App організації.

Оновлено: 9 days ago

Огляд

Скористайтеся цим посібником, якщо ви адміністратор робочого простору ChatGPT і налаштовуєте шаблон застосунку GitHub Enterprise для своєї організації. Шаблон — це не фінальний застосунок, яким користуються учасники. Це процес налаштування, який створює чернетку застосунку для конкретного робочого простору після надання потрібної конфігурації GitHub Enterprise.

Для GitHub Enterprise налаштування підключає ChatGPT до хоста GitHub Enterprise вашої організації. Ви створюєте GitHub App, реєструєте URL зворотного виклику ChatGPT, генеруєте облікові дані, а потім вставляєте ці значення в процес налаштування шаблону ChatGPT. Після створення чернетки застосунку ChatGPT ви можете опублікувати її та керувати нею як іншими застосунками робочого простору.

Що ви налаштовуєте

Ви створюєте в ChatGPT застосунок GitHub Enterprise для конкретного робочого простору. Застосунок використовує:

  • GitHub App, зареєстрований на вашому хості GitHub Enterprise.

  • Client ID і client secret GitHub App для авторизації користувачів через OAuth.

  • Приватний ключ GitHub App, щоб ChatGPT міг випускати токени встановлення для операцій із репозиторіями.

  • Секрет вебхука й URL вебхука, щоб GitHub Enterprise міг надсилати події встановлення та репозиторіїв назад до ChatGPT.

  • Ім’я хоста GitHub Enterprise, наприклад github.example.com.

Створіть GitHub App, а не окремий GitHub OAuth App. Для налаштування шаблону ChatGPT потрібні облікові дані GitHub App, приватний ключ і налаштування вебхука.

Перш ніж почати

Вам потрібно:

  • Доступ адміністратора або власника робочого простору ChatGPT.

  • Доступ адміністратора GitHub Enterprise або власника організації, який дає змогу створювати й установлювати GitHub Apps.

  • Лише ім’я хоста GitHub Enterprise, без https:// або шляху.

  • Рішення про те, які дії з репозиторіями має підтримувати ChatGPT, як-от пошук репозиторіїв лише для читання, робочі процеси запитів на злиття, робочі процеси issues, редагування файлів, GitHub Actions або ширші робочі процеси Codex.

  • Безпечне місце для роботи з приватним ключем і client secret GitHub App.

Тримайте ChatGPT і GitHub Enterprise відкритими в окремих вкладках. Не вигадуйте URL зворотного виклику. Скопіюйте точний URL зворотного виклику, показаний у ChatGPT.

Значення для підготовки

  • Ім’я хоста GitHub Enterprise: наприклад, github.example.com.

  • URL зворотного виклику: скопіюйте його з процесу налаштування шаблону ChatGPT.

  • Client ID GitHub App.

  • Client secret GitHub App.

  • Приватний ключ PEM GitHub App.

  • Секрет вебхука, згенерований ChatGPT.

  • URL вебхука, згенерований після створення чернетки застосунку в ChatGPT.

Почніть налаштування шаблону в ChatGPT

  1. У ChatGPT перейдіть до робочого простору, де має бути доступний застосунок.

  2. Відкрийте Налаштування робочого простору > Застосунки.

  3. Виберіть Каталог.

  4. Знайдіть GitHub Enterprise.

  5. Виберіть шаблон застосунку GitHub Enterprise і почніть налаштування.

  6. Введіть зрозумілі назву й опис застосунку, наприклад GitHub Enterprise або GitHub Enterprise - Engineering.

  7. Введіть ім’я хоста GitHub Enterprise, наприклад github.example.com.

  8. Скопіюйте URL зворотного виклику, показаний у ChatGPT. Залиште цю вкладку відкритою.

  9. Скопіюйте згенерований секрет вебхука, якщо він відображається під час налаштування.

Приклад URL зворотного виклику: https://chatgpt.com/connector/oauth/<callback_id>

Не видаляйте ID зворотного виклику, не додавайте кінцеву скісну риску й не замінюйте його загальною URL-адресою ChatGPT.

Створіть GitHub App у GitHub Enterprise

  1. Відкрийте свій хост GitHub Enterprise, наприклад https://github.example.com.

  2. Перейдіть до організації або облікового запису, якому має належати застосунок.

  3. Відкрийте Settings > Developer settings > GitHub Apps.

  4. Виберіть New GitHub App.

  5. Введіть зрозумілу назву застосунку, наприклад ChatGPT GitHub Enterprise Connector.

  6. Введіть URL домашньої сторінки. Якщо окремої внутрішньої сторінки немає, використайте URL організації GitHub Enterprise.

  7. У поле Callback URL вставте точний URL зворотного виклику, скопійований із ChatGPT.

  8. Залиште параметр Expire user authorization tokens увімкненим, якщо ваша команда безпеки не має конкретної причини змінити його.

  9. Увімкніть Request user authorization during installation, щоб користувачі могли авторизувати застосунок під час встановлення або підключення.

  10. У розділі Where can this GitHub App be installed?, виберіть найвужчий варіант, що підходить для вашого розгортання.

  11. Створіть GitHub App.

Налаштуйте дозволи й події

Виберіть мінімальні дозволи, потрібні для дій ChatGPT, які ви плануєте ввімкнути.

Для пошуку репозиторіїв лише для читання й запитань і відповідей почніть із дозволів на читання, як-от:

  • Metadata: лише читання. GitHub вимагає metadata для GitHub Apps.

  • Contents: лише читання, для доступу до файлів і вмісту репозиторію.

  • Issues: лише читання, якщо потрібен пошук або читання issues.

  • Pull requests: лише читання, якщо потрібен пошук запитів на злиття або контекст перевірки.

  • Actions: лише читання, якщо потрібні статуси запусків workflow, jobs, logs або artifacts.

Для робочих процесів із записом додавайте дозволи на запис лише там, де потрібно, наприклад Contents, Pull requests, Issues, Actions або Workflows. Використовуйте найвужчі дозволи, які підтримують потрібні дії ChatGPT.

Події вебхуків мають відповідати робочим процесам, які ви підтримуєте. Поширені події: Installation, Installation repositories, Push, Pull request, Issues, Issue comment, Workflow run і Workflow job.

Згенеруйте та скопіюйте облікові дані GitHub App

  1. У налаштуваннях GitHub App скопіюйте Client ID.

  2. Згенеруйте Client secret і негайно скопіюйте його.

  3. У розділі Private keys згенеруйте приватний ключ.

  4. Завантажте файл .pem і зберігайте його безпечно.

  5. Відкрийте файл .pem локально та скопіюйте весь текст PEM, включно з початковим і кінцевим рядками.

Приватний ключ є конфіденційним. Поводьтеся з ним як з обліковими даними. Якщо його розкрито, згенеруйте новий приватний ключ, оновіть налаштування застосунку ChatGPT і видаліть скомпрометований ключ у GitHub Enterprise.

Завершіть налаштування в ChatGPT

  1. Поверніться на вкладку налаштування шаблону ChatGPT.

  2. Вставте Client ID GitHub App у поле OAuth client ID.

  3. Вставте Client secret GitHub App у поле OAuth client secret.

  4. Залиште Scopes без змін, якщо ваша організація навмисно не має замінити стандартні налаштування шаблону.

  5. Підтвердьте, що ім’я хоста GitHub Enterprise містить лише хост, наприклад github.example.com.

  6. Вставте або завантажте приватний ключ PEM GitHub App у GitHub App private key.

  7. Підтвердьте наявність згенерованого секрету вебхука.

  8. Створіть чернетку застосунку.

  9. Відкрийте відомості про створену чернетку застосунку в ChatGPT і скопіюйте згенерований URL вебхука.

URL вебхука має виглядати так: https://connectors.api.openai.org/connectors/<connector_id>/webhook

Завершіть налаштування вебхука в GitHub Enterprise

  1. Поверніться до налаштувань GitHub App у GitHub Enterprise.

  2. Відкрийте загальні налаштування GitHub App.

  3. Увімкніть Active webhooks, якщо їх ще не ввімкнено.

  4. Вставте URL вебхука ChatGPT у поле Webhook URL.

  5. Вставте секрет вебхука ChatGPT у поле Webhook secret.

  6. Залиште перевірку SSL увімкненою.

  7. Підтвердьте, що підписані події вебхуків відповідають дозволам і діям, які ви ввімкнули.

  8. Збережіть зміни.

Опублікуйте застосунок і керуйте ним у ChatGPT

Створення чернетки застосунку не робить його автоматично доступним для учасників. Після перевірки чернетки:

  1. Опублікуйте чернетку застосунку.

  2. Підтвердьте, що застосунок з’явився в Налаштування робочого простору > Застосунки > Увімкнено.

  3. Налаштуйте User access для ролей, які мають ним користуватися.

  4. Перегляньте Action control для дій читання й запису.

  5. Перегляньте App permissions, щоб вибрати, коли ChatGPT запитуватиме учасників перед використанням застосунку.

  6. Попросіть дозволеного тестового користувача відкрити Застосунки в ChatGPT і підтвердити, що застосунок відображається.

Ці дозволи застосунку застосовуються до розмов ChatGPT. Агенти робочого простору використовують елементи керування для кожного агента, задані його розробником, щоб визначати, які дії застосунку доступні та коли кінцевих користувачів просять їх схвалити. Про поведінку агентів див.: Агенти робочого простору ChatGPT для Enterprise і Business.

Установіть і протестуйте GitHub App

  1. У GitHub Enterprise установіть застосунок GitHub для організації або облікового запису.

  2. Виберіть усі репозиторії або вибрані репозиторії відповідно до політики робочого простору.

  3. Запустіть процес підключення з ChatGPT як дозволений користувач.

  4. Авторизуйте застосунок GitHub, коли з’явиться запит.

  5. Спершу виконайте невелику дію читання, наприклад виведення списку доступних репозиторіїв або отримання відомого запиту на злиття.

  6. Якщо дії запису ввімкнено, протестуйте їх у репозиторії з низьким ризиком перед ширшим розгортанням.

Ім’я хоста й поведінка OAuth

ChatGPT використовує ім’я хоста для визначення кінцевих точок GitHub Enterprise. Введіть лише хост, наприклад github.example.com або octocorp.ghe.com.

Не вводьте шлях API, шлях репозиторію або github.com, якщо це не точний хост GitHub Enterprise для цього застосунку.

Усунення несправностей

  • Невідповідність URI перенаправлення: підтвердьте, що URL зворотного виклику GitHub App точно збігається з URL зворотного виклику, показаним у ChatGPT.

  • ChatGPT не може створити або зберегти чернетку застосунку: підтвердьте наявність усіх обов’язкових полів, зокрема імені хоста, OAuth client ID, OAuth client secret, приватного ключа й секрету вебхука.

  • Автентифікація успішна, але виклики репозиторію не вдаються: підтвердьте, що GitHub App установлено та він має доступ до репозиторію.

  • API повертає 403 або недостатні дозволи: додайте відсутній дозвіл GitHub App і попросіть власника встановлення схвалити оновлені дозволи, якщо з’явиться запит.

  • Репозиторії не відображаються: підтвердьте, що встановлення застосунку містить очікувані репозиторії, а користувач, який авторизується в ChatGPT, має до них доступ.

  • Доставки вебхуків не вдаються: підтвердьте, що URL вебхука й секрет вебхука збігаються зі значеннями з ChatGPT, залиште перевірку SSL увімкненою та переконайтеся, що хост GitHub Enterprise може зв’язатися з connectors.api.openai.org.

  • Помилки приватного ключа: підтвердьте, що скопійовано весь вміст PEM, включно з початковим і кінцевим рядками.

Довідкові матеріали

Чи була ця стаття корисною?