Skip to main content

Использование LLM Copilot для агента

Узнайте, как использовать CopilotLLM для агента.

Note

GitHub Copilot Extensions находится в public preview и подлежит изменению.

О Copilotмодели языкового обучения (LLM)

Copilotмодели обучения языка (LLM) — это мощная масштабируемая языковая модель, которая обучена различными источниками данных, включая код, документацию и другой текст. CopilotLLM поддерживает функциональность для GitHub Copilotи используется для управления всеми функциями Copilot, включая создание кода, создание документации и завершение кода.

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

Note

Сторонние агенты имеют строгие ограничения скорости для использования CopilotLLM. Если стороннему агенту потребуется создать большое количество завершений, следует рассмотреть возможность использования собственного LLM или API, например OpenAI.

Использование CopilotLLM для агента

Вы можете вызвать развертывание https://api.githubcopilot.com/chat/completions LLM Copilotс помощью запроса POST. Запросы и ответы должны находиться в том же формате, что и API OpenAI.

Для проверки подлинности используйте тот же X-Github-Token заголовок, который отправляется агенту. Дополнительные сведения см. в разделе Настройка агента Copilot для взаимодействия с GitHub.

Ниже приведен пример того, как развертывание LLM %% данных Copilotиспользуется расширением Blackbeard для создания завершений для сообщения пользователя:

  // Use Copilot's LLM to generate a response to the user's
  //  messages, with our extra system messages attached.
  const copilotLLMResponse = await fetch(
    "https://api.githubcopilot.com/chat/completions",
    {
      method: "POST",
      headers: {
        authorization: `Bearer ${tokenForUser}`,
        "content-type": "application/json",
      },
      body: JSON.stringify({
        messages,
        stream: true,
      }),
    }
  );

Чтобы просмотреть этот пример в полном контексте, см . расширение Blackbeard.