SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2407.05700 · 2024

InverseCoder: Self-improving Instruction-Tuned Code LLMs with Inverse-Instruct

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 11 functions out of this paper's own repositories and ran 11 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
wyt2000/InverseCoder canonical 11 of 11
FunctionStatusWhere it lives
extract_code Ran wyt2000/InverseCoder/src/InstGen/sample_vllm.py
pointer only (licence: NONE) · get_code("4ba4d218cc21b7c3")
extract_code Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel.py
pointer only (licence: NONE) · get_code("2e57c27d5464d633")
generate_one_prompt Ran wyt2000/InverseCoder/src/InstGen/sample_vllm.py
pointer only (licence: NONE) · get_code("e9e120f8e994775b")
generate_one_prompt Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel.py
pointer only (licence: NONE) · get_code("e95fcf0bebb8c47b")
generate_one_prompt Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel_completion.py
pointer only (licence: NONE) · get_code("105ce67ee1510057")
generate_one_prompt Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel_completion_deepseek.py
pointer only (licence: NONE) · get_code("6e56413da9949793")
generate_one_prompt Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel_description_prompt.py
pointer only (licence: NONE) · get_code("59ecbfd3747bcfa8")
generate_prompts Ran wyt2000/InverseCoder/src/InstGen/sample_vllm.py
pointer only (licence: NONE) · get_code("b5bde94f66a46787")
generate_prompts Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel.py
pointer only (licence: NONE) · get_code("bcd581a56aa8495e")
generate_prompts Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel_description_prompt.py
pointer only (licence: NONE) · get_code("dd2e6518d155b0b2")
get_language Ran wyt2000/InverseCoder/src/InstGen/sample_vllm_parallel_completion.py
pointer only (licence: NONE) · get_code("49a6d5371d92242a")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Recent advancements in open-source code large language models (LLMs) have been driven by fine-tuning on the data generated from powerful closed-source LLMs, which are expensive to obtain. This paper explores whether it is possible to use a fine-tuned open-source model to generate additional data to augment its instruction-tuning dataset. We make two observations: (1) A code snippet can serve as the response to different instructions. (2) Instruction-tuned code LLMs perform better at translating code into instructions than the reverse. Based on these observations, we propose Inverse-Instruct, a data augmentation technique that uses a fine-tuned LLM to generate additional instructions of code responses from its own training dataset. The additional instruction-response pairs are added to the original dataset, and a stronger code LLM can be obtained by fine-tuning on the augmented dataset. We empirically validate Inverse-Instruct on a range of open-source code models (e.g. CodeLlama-Python and DeepSeek-Coder) and benchmarks (e.g., HumanEval(+), MBPP(+), DS-1000 and MultiPL-E), showing it consistently improves the base models.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2407.05700")
get_code_for_paper("2407.05700")
have("2407.05700")

Connect an agent — have() is free.