Примечание.
GitHub Models для организаций и репозиториев находится в public preview и подлежит изменению.
GitHub Models позволяет разработчикам создавать приложения с поддержкой искусственного интеллекта в масштабе, пока ваше предприятие поддерживает контроль, соответствие требованиям и эффективность затрат.
Почему GitHub Models?
- Централизованное управление моделями: управление моделями ИИ и поставщиками, доступными разработчикам в вашей организации.
- Разработка ИИ на скорости: быстрое прототип, оценка и оптимизация запросов и моделей.
- API access: Используйте API GitHub Models REST для автоматизации и интеграции с корпоративными рабочими процессами.
- Интеграция пользовательских моделей. Приведите собственные ключи API LLM для подключения внешних или пользовательских моделей, что дает вашей организации большую гибкость и контроль над тем, какие модели доступны в GitHub Models, а также в соответствии с существующими методами оплаты, кредитами и поставщиками.
- Управление и контроль соответствия требованиям. Применение стандартов организации и мониторинг использования моделей.
- Оптимизация затрат. Избегайте непредвиденных затрат из высокоценных моделей.
- Collaboration: Делитесь запросами и результатами с использованием стандартных GitHub практик разработки.
- архитектура, ориентированная на безопасность: Будьте уверены, что ваши данные остаются внутри GitHub и Azure и не передаются поставщикам моделей.
- Визуальный интерфейс: разрешить участникам команды, не являющихся техническими, участвовать вместе с разработчиками.
- Version control: Все изменения запросов и моделей проходят через стандартный поток GitHub commit и pull request, чтобы вы знали, когда и почему изменился запрос.
См. О моделях GitHub.
Рекомендации по использованию GitHub Models в масштабе
Следующие рекомендации помогут эффективно использовать GitHub Models в организации.
Сравнение и оценка моделей ИИ для управления и соответствия требованиям
Просмотрите и сравните доступные модели искусственного интеллекта с учетом требований к управлению, безопасности данных и соответствию требованиям вашей компании. Это можно сделать в любом репозитории Models GitHub или в каталоге GitHub Models из GitHub Marketplace на https://github.com/marketplace?type=models. Ваши рекомендации могут включать:
- Управление и безопасность. Проверьте соответствие каждой модели стандартам и нормативным требованиям, таким как GDPR, SOC 2 и ISO 27001, и убедитесь, что данные не сохраняются за пределами вашей организации, если явно не зарегистрировано согласие.
- Производительность модели. Выполнение тестовых вычислений на внутренних наборах данных для оценки причин, хранения контекста и галлюцинации.
- Управление API и видимость. Требуют детального контроля над квотами использования, проверкой запросов и ограничениями скорости на уровне команды или организации.
- Оптимизация затрат: включите цены на токены, скорость вывода и доступность вариантов модели для многоуровневого использования. Например, можно использовать более дешевые модели для создания тестового варианта по сравнению с расширенными моделями для обсуждения архитектуры.
Когда вы определитесь, какие модели хотите использовать, вы можете ограничить access в вашей организации только этими моделями, см. Управление использованием модели вашей команды.
Оптимизация и предоставление общего доступа к запросам между командами
Разработчики могут использовать редактор запросов в GitHub Models для создания и уточнения запросов. Команды могут экспериментировать с различными вариантами и моделями запросов в стабильной, не продакшн-среде, интегрирующей с рабочими процессами разработки GitHub. Визуальный интерфейс позволяет не техническим заинтересованным лицам участвовать вместе с разработчиками. См. Использование редактора подсказок.
Упрощенное средство оценки позволяет команде сравнивать результаты между общими метриками, такими как задержка, релевантность и заземленность, или создавать пользовательские вычислители. Сравните производительность запросов и моделей для конкретных вариантов использования искусственного интеллекта, таких как создание кода, тестов, документации или предложения по просмотру кода.
Когда ваша команда создаёт эффективные подсказки, они могут сохранять их как YAML-файлы и делиться для проверки с помощью pull request-запросов GitHub. Зафиксированные запросы доступны другим командам и рабочим процессам и могут быть согласованы со стандартами вашей компании. Этот централизованный и совместный подход к управлению запросами ускоряет разработку и помогает применять рекомендации по всей организации.
Оценка и оптимизация затрат на использование модели
При внедрении приложения с использованием искусственного интеллекта и улучшения моделей ИИ используйте GitHub Models для оценки затрат и производительности различных моделей и обновлений моделей. Выберите наиболее экономичные варианты потребностей вашей организации и управление затратами в качестве масштабирования использования в нескольких командах.
Использование REST API или расширений REST API GitHub Models для программного управления
Для более эффективного управления ресурсами во всех командах можно использовать REST API GitHub Models для:
- Управление и обновление настроек организации: Программно обновлять модели access прав и настройки управления для нескольких команд одновременно, чтобы обеспечить согласованность и соответствие.
- Вывод списка и получения запросов: перечисление, извлечение и аудит запросов, используемых различными командами, для мониторинга использования, совместного использования запросов и поддержания центрального репозитория рекомендаций.
- Выполнение запросов вывода модели: выполнение запросов вывода для определенных моделей и параметров, таких как штраф частоты, максимальный маркер, формат ответа и штраф на наличие.
Вы также можете использовать эти расширения для выполнения запросов вывода и управления запросами:
- Расширение GitHub Models для GitHub CLI
- Расширение GitHub Models для Чат GitHub Copilot
- GitHub Models Расширение VS Code
Мониторинг, итерацию и интеграцию
С помощью встроенных функций управления можно отслеживать использование моделей и обеспечивать постоянное соответствие политикам компании. Журналы аудита обеспечивают видимость доступа к или изменению моделей и запросов. Интеграция репозитория GitHub Models позволяет всем заинтересованным лицам постоянно выполнять итерацию в приложениях, использующих ИИ.
Пример. Использование GitHub Models с GitHub Actions для суммирование проблем
Крупные проекты разработки программного обеспечения часто содержат вопросы, полные технических сведений. С помощью GitHub Models и GitHub Actionsможно развернуть сводки проблем с искусственным интеллектом.
**Предварительные требования.** Включите GitHub Models в организации и задайте модели и издатели, которые вы хотите сделать доступными для отдельных репозиториев.
1. Создание запроса в репозитории
На вкладке "Модели" репозитория создайте запрос с помощью редактора запросов.
Пример системного запроса:
Вы — обобщитель проблем с GitHub. Подчеркнуть ключевые технические моменты или важные вопросы.
Пример запроса пользователя:
Сводные сведения об этой проблеме : {input}}
-
**Выполнение и итерацию в запросе**Запустите запрос. Укажите пример содержимого проблемы в области "Переменные" в качестве значения
{{input}}.Попробуйте использовать разные модели (например, OpenAI GPT-4o) и сравнить результаты. Настройте такие параметры, как максимальные маркеры и температура. Выполните итерацию до тех пор, пока вы не удовлетворены результатами.
-
**При необходимости выполните более обширные тесты**Представление "Сравнение" позволяет одновременно запускать несколько запросов к разным моделям и видеть, как результаты сравниваются в представлении сетки. Вы также можете определить и использовать вычислители, чтобы убедиться, что результаты содержат определенные ключевые слова или соответствуют другим стандартам.
-
**Фиксация запроса**Присвойте запросу имя и зафиксируйте изменения для прохождения потока запроса на вытягивание. Например, если вы назовете запрос
summarize, вы получитеsummarize.prompt.yamlфайл на корневом уровне репозитория, который выглядит примерно так:messages: - role: system content: >- You are a summarizer of GitHub issues. Emphasize key technical points or important questions. - role: user content: 'Summarize this issue, please - {{input}}' model: openai/gpt-4o modelParameters: max_tokens: 4096После проверки и объединения запроса на вытягивание запрос будет доступен для всех пользователей, которые будут использоваться в репозитории.
-
**Вызов запроса в рабочем процессе**Сведения о создании рабочих процессов см. в разделе Написание рабочих процессов.
Необходимо задать
models: readразрешение, чтобы разрешить вызов запроса в рабочем процессе.Ниже приведен пример рабочего процесса, который добавляет сводку, созданную СИ, в качестве комментария к любой недавно созданной проблеме:
YAML name: Summarize New Issue on: issues: types: [opened] permissions: issues: write contents: read models: read jobs: summarize_issue: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install gh-models extension run: gh extension install https://github.com/github/gh-models env: GH_TOKEN: ${{ github.token }} - name: Create issue body file run: | cat > issue_body.txt << 'EOT' ${{ github.event.issue.body }} EOT - name: Summarize new issue run: | cat issue_body.txt | gh models run --file summarize.prompt.yml > summary.txt env: GH_TOKEN: ${{ github.token }} - name: Update issue with summary run: | SUMMARY=$(cat summary.txt) gh issue comment ${{ github.event.issue.number }} --body "### Issue Summary ${SUMMARY}" env: GH_TOKEN: ${{ github.token }}name: Summarize New Issue on: issues: types: [opened] permissions: issues: write contents: read models: read jobs: summarize_issue: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install gh-models extension run: gh extension install https://github.com/github/gh-models env: GH_TOKEN: ${{ github.token }} - name: Create issue body file run: | cat > issue_body.txt << 'EOT' ${{ github.event.issue.body }} EOT - name: Summarize new issue run: | cat issue_body.txt | gh models run --file summarize.prompt.yml > summary.txt env: GH_TOKEN: ${{ github.token }} - name: Update issue with summary run: | SUMMARY=$(cat summary.txt) gh issue comment ${{ github.event.issue.number }} --body "### Issue Summary ${SUMMARY}" env: GH_TOKEN: ${{ github.token }} -
**Мониторинг и итерацию**Вы можете отслеживать производительность действия и выполнять итерацию по запросу и выбору модели с помощью редактора запроса GitHub Models. Вы также можете использовать расширение CLI для локального тестирования или использовать API для программного обновления настроек запросов и модели.
Вы также можете рассмотреть возможность сохранения ответа модели в виде файла в репозитории, чтобы можно было просматривать и итерировать производительность модели с течением времени. Это позволяет постоянно улучшать качество сводок и обеспечивать их соответствие потребностям вашей команды.