{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/pythia-ai-assisted-code-completion-system","title":"Pythia: AI-assisted Code Completion System","arxiv_id":"1912.00742","date":"2019-11-29","proceeding":null,"authors":["Alexey Svyatkovskiy","Ying Zhao","Shengyu Fu","Neel Sundaresan"],"abstract":"In this paper, we propose a novel end-to-end approach for AI-assisted code completion called Pythia. It generates ranked lists of method and API recommendations which can be used by software developers at edit time. The system is currently deployed as part of Intellicode extension in Visual Studio Code IDE. Pythia exploits state-of-the-art large-scale deep learning models trained on code contexts extracted from abstract syntax trees. It is designed to work at a high throughput predicting the best matching code completions on the order of 100 $ms$. We describe the architecture of the system, perform comparisons to frequency-based approach and invocation-based Markov Chain language model, and discuss challenges serving Pythia models on lightweight client devices. The offline evaluation results obtained on 2700 Python open source software GitHub repositories show a top-5 accuracy of 92\\%, surpassing the baseline models by 20\\% averaged over classes, for both intra and cross-project settings.","url_abs":"https://arxiv.org/abs/1912.00742v1","url_pdf":"https://arxiv.org/pdf/1912.00742v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"pythia-ai-assisted-code-completion-system","repo_url":"https://github.com/Microsoft/PTVS","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"code-completion","task_name":"Code Completion"},{"task_slug":"language-modeling","task_name":"Language Modeling"},{"task_slug":"language-modelling","task_name":"Language Modelling"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1912.00742","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1912.00742"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Microsoft/PTVS","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":2},"by_repo_kind":{"official":{"samples":2,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"b7024683eca22929","entry":"auto_decode","repo":"Microsoft/PTVS","repo_kind":"official","path":"Python/Product/PythonTools/missing_req_packages.py","file_url":"https://github.com/Microsoft/PTVS/blob/HEAD/Python/Product/PythonTools/missing_req_packages.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b7024683eca22929"}},{"code_sha256_prefix":"584d7147ce89e8a1","entry":"get_wsgi_handler","repo":"Microsoft/PTVS","repo_kind":"official","path":"Python/Product/BuildTasks/ptvs_virtualenv_proxy.py","file_url":"https://github.com/Microsoft/PTVS/blob/HEAD/Python/Product/BuildTasks/ptvs_virtualenv_proxy.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"584d7147ce89e8a1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}