Inside GitHub: Working with the LLMs behind GitHub Copilot
General-purpose code generation was considered too difficult because existing models could not reliably produce useful completions, and an early chatbot prototype proved to be an inferior modality compared to in-IDE code completion.
A static chatbot prototype for answering coding questions was abandoned in favour of in-IDE completion, and early model versions frequently suggested code in the wrong programming language.
By incorporating neighboring-tab context retrieval and file path headers into prompts, and fine-tuning the Codex model on users' codebases, GitHub Copilot achieved a large lift in acceptance rate and characters retained, with the underlying model improving to solve upwards of 90 percent of benchmark coding problems.
Frequently asked questions
What did this team achieve with this AI workflow?
By incorporating neighboring-tab context retrieval and file path headers into prompts, and fine-tuning the Codex model on users' codebases, GitHub Copilot achieved a large lift in acceptance rate and characters retain…
What tools did this team use?
GitHub Copilot, GPT-3, Codex, OpenAI.
What results were reported?
Model benchmark problem-solving rate: upwards of 90 percent; Initial model problem-solving rate: about half of the problems; Code acceptance rate and characters retained: huge lift; Quality and user experience improvement from file path header: improved by a surprising margin (source-reported, not independently verified).
What failed first in this deployment?
A static chatbot prototype for answering coding questions was abandoned in favour of in-IDE completion, and early model versions frequently suggested code in the wrong programming language.
How is this workflow AI workflow structured?
Developer edits code in IDE → Context retrieved from neighboring tabs → File path added to prompt → LLM generates code completion → Codebase fine-tuning personalizes output → Acceptance signal feeds model improvement.