Skip to main content

Быстрый старт для моделей GitHub

Запустите свою первую модель GitHub Models за несколько минут.

Введение

          GitHub Models это API GitHub вывода ИИ, который позволяет запускать модели ИИ, используя только ваши GitHub учетные данные. Вы можете выбрать из множества различных моделей — включая OpenAI, Meta и Deepseek — и использовать их в скриптах, приложениях или даже GitHub Actionsбез отдельного процесса аутентификации.

Это руководство поможет вам быстро попробовать модели на детской площадке, а затем показано, как запустить первую модель через API или рабочий процесс.

Шаг 1. Попробуйте модели на детской площадке

  1. Переходите к https://github.com/marketplace/models.

  2. На детской площадке выберите по крайней мере одну модель в раскрывающемся меню.

  3. Проверьте различные запросы с помощью представления чата **** и сравните ответы из разных моделей.

  4.        **Используйте представление параметров** для настройки параметров для тестовых моделей, а затем узнайте, как они влияют на ответы.
    

    Примечание.

    Playground работает сразу из коробки, если вы вошли в GitHub. Он использует ваш GitHub аккаунт для доступа — без необходимости настройки или API-ключей.

Шаг 2. Вызов API

Для полной информации о доступных полях, заголовках и форматах запросов см. ссылку API для GitHub Models.

Для программного вызова моделей вам потребуется:

  • Аккаунт GitHub .
  • A personal access token (PAT) с models прицелом, который можно создать в настройках.
  1. Выполните следующую curl команду, заменив YOUR_GITHUB_PAT маркер.

    Bash
      curl -L \
      -X POST \
      -H "Accept: application/vnd.github+json" \
      -H "Authorization: Bearer YOUR_GITHUB_PAT" \
      -H "X-GitHub-Api-Version: 2022-11-28" \
      -H "Content-Type: application/json" \
      https://models.github.ai/inference/chat/completions \
      -d '{"model":"openai/gpt-4.1","messages":[{"role":"user","content":"What is the capital of France?"}]}'
    
  2. Вы получите ответ следующим образом:

    {
      "choices": [
        {
          "message": {
            "role": "assistant",
            "content": "The capital of France is **Paris**."
          }
        }
      ],
      ...other fields omitted
    }
    
  3. Чтобы попробовать другие модели, измените значение поля model в JSON-полезной нагрузке на значение marketplace.

Шаг 3: Запустите модели GitHub Actions

  1. В вашем репозитории создайте файл рабочего процесса по адресу .github/workflows/models-demo.yml.

  2. Вставьте следующий рабочий процесс в только что созданный файл.

    YAML
    name: Use GitHub Models
    
    on: [push]
    
    permissions:
      models: read
    
    jobs:
      call-model:
        runs-on: ubuntu-latest
        steps:
          - name: Call AI model
            env:
              GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
            run: |
              curl "https://models.github.ai/inference/chat/completions" \
                 -H "Content-Type: application/json" \
                 -H "Authorization: Bearer $GITHUB_TOKEN" \
                 -d '{
                  "messages": [
                      {
                         "role": "user",
                         "content": "Explain the concept of recursion."
                      }
                   ],
                   "model": "openai/gpt-4o"
                }'
    

    Примечание.

    Рабочие процессы, которые вызывают GitHub Models , должны быть models: read включены в блок разрешений. GitHub-Размещённые бегуны автоматически предоставляют GITHUB_TOKEN .

  3. Зафиксируйте и отправьте, чтобы активировать рабочий процесс.

В этом примере показано, как отправить запрос в модель и использовать ответ в рабочих процессах непрерывной интеграции (CI). Для более сложных сценариев использования, таких как суммирование проблем, обнаружение отсутствующих шагов воспроизведения для отчётов об ошибках или ответ на pull request, см. Конфигурирование access к AI-моделям в GitHub Copilot.

Шаг 4. Сохранение первого файла запроса

          GitHub Models Поддерживает многоразовые запросы, определённые в `.prompt.yml` файлах. После добавления этого файла в репозиторий он появится на странице "Модели" репозитория и может выполняться непосредственно в редакторе запросов и средств оценки. Узнайте больше о [AUTOTITLE](/github-models/use-github-models/storing-prompts-in-github-repositories).
  1. В репозитории создайте файл с именем summarize.prompt.yml. Его можно сохранить в любом каталоге.

  2. Вставьте следующий пример запроса в созданный файл.

    YAML
    name: Text Summarizer
    description: Summarizes input text concisely
    model: openai/gpt-4o-mini
    modelParameters:
      temperature: 0.5
    messages:
      - role: system
        content: You are a text summarizer. Your only job is to summarize text given to you.
      - role: user
        content: |
          Summarize the given text, beginning with "Summary -":
          <text>
          {{input}}
          </text>
    
  3. Зафиксируйте и отправьте файл в репозиторий.

  4. Перейдите на вкладку "Модели" в репозитории.

  5. В меню навигации нажмите «Подсказки», затем выберите файл запросов.

  6. Запрос откроется в редакторе запросов. Щелкните Выполнить. На боковой панели справа появится запрос ввода текста. Введите любой входной текст, а затем нажмите кнопку "Выполнить снова" в правом нижнем углу, чтобы проверить его.

    Примечание.

    Редактор запросов не передает содержимое репозитория в запросы. Вы предоставляете входные данные вручную.

Шаг 5. Настройка первой оценки

Оценки помогают определить, как разные модели реагируют на одни и те же входные данные, чтобы выбрать оптимальный вариант для вашего варианта использования.

  1. Go back к файлу summarize.prompt.yml, который вы создали на предыдущем шаге.

  2. Обновите файл, чтобы он соответствовал следующему примеру.

    YAML
    name: Text Summarizer
    description: Summarizes input text concisely
    model: openai/gpt-4o-mini
    modelParameters:
      temperature: 0.5
    messages:
      - role: system
        content: You are a text summarizer. Your only job is to summarize text given to you.
      - role: user
        content: |
          Summarize the given text, beginning with "Summary -":
          <text>
          {{input}}
          </text>
    testData:
      - input: |
          The quick brown fox jumped over the lazy dog.
          The dog was too tired to react.
        expected: Summary - A fox jumped over a lazy, unresponsive dog.
      - input: |
          The museum opened a new dinosaur exhibit this weekend. Families from all
          over the city came to see the life-sized fossils and interactive displays.
        expected: Summary - The museum's new dinosaur exhibit attracted many families with its fossils and interactive displays.
    evaluators:
      - name: Output should start with 'Summary -'
        string:
          startsWith: 'Summary -'
      - name: Similarity
        uses: github/similarity
    
  3. Зафиксируйте и отправьте файл в репозиторий.

  4. В вашем репозитории нажмите на вкладку «Модели ». Затем нажмите «Подсказки » и откройте тот же запрос в редакторе подсказок.

  5. В верхнем левом углу можно переключить представление из "Изменить " для сравнения. Щелкните Compare (Сравнить).

  6. Оценка будет настроена автоматически. Нажмите кнопку "Выполнить" , чтобы просмотреть результаты.

    Совет

    Щелкнув "Добавить запрос", вы можете запустить один и тот же запрос с разными моделями или изменить формулировку запроса, чтобы получить ответы на вывод с несколькими вариантами одновременно, просмотреть оценки и просмотреть их параллельно, чтобы принимать решения на основе данных.

Следующие шаги

  •         [автозаголовок](/github-models/about-github-models).
    
  •         [Просмотр каталога моделей](https://github.com/marketplace?type=models)
    
  •         [автозаголовок](/github-models/use-github-models/storing-prompts-in-github-repositories)
    
  •         [автозаголовок](/github-models/use-github-models/evaluating-ai-models)
    
  •         [автозаголовок](/github-models/use-github-models/integrating-ai-models-into-your-development-workflow#using-ai-models-with-github-actions)