ReqLLM. Providers. GitHubCopilot
(ReqLLM v1.17.0)
View Source
GitHub Copilot provider using Copilot's OpenAI-compatible Chat Completions API.
GitHub Copilot exposes chat models through https://api.githubcopilot.com.
ReqLLM sends OpenAI Chat Completions-compatible requests and includes the
Copilot-Integration-Id header required by Copilot clients.
Configuration
COPILOT_GITHUB_TOKEN=gho_...When no explicit token or environment token is configured, the provider falls
back to gh auth token, matching GitHub Copilot CLI's GitHub CLI fallback.
Examples
ReqLLM.generate_text("github_copilot:gpt-4o-mini", "Hello!")
{:ok, response} =
ReqLLM.stream_text("github_copilot:gpt-4o-mini", "Tell me a story")
response
|> ReqLLM.StreamResponse.tokens()
|> Enum.each(&IO.write/1)
Summary
Functions
Default implementation of attach/3.
Default implementation of attach_stream/4.
Default implementation of build_body/1.
Default implementation of decode_response/1.
Default implementation of decode_stream_event/2.
Callback implementation for ReqLLM.Provider.default_env_key/0.
Default implementation of encode_body/1.
Default implementation of extract_usage/2.
Default implementation of prepare_request/4.
Default implementation of translate_options/3.
Functions
Default implementation of attach/3.
Sets up Bearer token authentication and standard pipeline steps.
Default implementation of attach_stream/4.
Builds complete streaming requests using OpenAI-compatible format.
Default implementation of build_body/1.
Builds request body using OpenAI-compatible format for chat and embedding operations.
Default implementation of decode_response/1.
Handles success/error responses with standard ReqLLM.Response creation.
Default implementation of decode_stream_event/2.
Decodes SSE events using OpenAI-compatible format.
Callback implementation for ReqLLM.Provider.default_env_key/0.
Default implementation of encode_body/1.
Encodes request body using OpenAI-compatible format for chat and embedding operations.
Default implementation of extract_usage/2.
Extracts usage data from standard usage field in response body.
Default implementation of prepare_request/4.
Handles :chat, :object, and :embedding operations using OpenAI-compatible patterns.
Default implementation of translate_options/3.
Pass-through implementation that returns options unchanged.