StarCoder 2 and the Stack v2: The next generation

์ €์ž: Anton Lozhkov, Raymond Li, Loubna Ben Allal ์™ธ ๋‹ค์ˆ˜ (Hugging Face, ServiceNow Research, Nvidia ๋“ฑ) | ๋‚ ์งœ: 2024 | DOI: arXiv:2402.19173 📄 PDF


Essence

Figure 2

Figure 2: The distribution of the top 20 programming languages in our crawled documentation collection.

StarCoder 2์™€ The Stack v2๋Š” BigCode ํ”„๋กœ์ ํŠธ์˜ ์ผํ™˜์œผ๋กœ ๊ฐœ๋ฐœ๋œ ์ฐจ์„ธ๋Œ€ ์ฝ”๋“œ LLM ๋ฐ ๋ฐ์ดํ„ฐ์…‹์ด๋‹ค. Software Heritage ์•„์นด์ด๋ธŒ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ 619๊ฐœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ํฌํ•จํ•˜๋Š” 4๋ฐฐ ๊ทœ๋ชจ์˜ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ , 3B, 7B, 15B ํŒŒ๋ผ๋ฏธํ„ฐ ๋ชจ๋ธ์„ 3.3~4.3์กฐ ํ† ํฐ์œผ๋กœ ํ›ˆ๋ จํ•˜์—ฌ ๊ธฐ์กด ๋ชจ๋ธ๋“ค์„ ๋Šฅ๊ฐ€ํ•˜๋Š” ์„ฑ๋Šฅ์„ ๋‹ฌ์„ฑํ–ˆ๋‹ค.

Motivation

Achievement

Figure 1

Figure 1: File-level license assignment logic.

StarCoder2-3B ์„ฑ๊ณผ: ์œ ์‚ฌ ๊ทœ๋ชจ ๋‹ค๋ฅธ Code LLM (StableCode-3B, DeepSeekCoder-1.3B)์„ ๋Œ€๋ถ€๋ถ„์˜ ๋ฒค์น˜๋งˆํฌ์—์„œ ๋Šฅ๊ฐ€ํ•˜๋ฉฐ StarCoderBase-15B์™€ ๋™๋“ฑ ์ด์ƒ์˜ ์„ฑ๋Šฅ ๋‹ฌ์„ฑ. StarCoder2-15B ์„ฑ๊ณผ: CodeLlama-13B๋ฅผ ํฌ๊ฒŒ ๋Šฅ๊ฐ€ํ•˜๊ณ  CodeLlama-34B์™€ ๋™๋“ฑ ์ด์ƒ ์„ฑ๋Šฅ. DeepSeekCoder-33B์™€ ๋น„๊ต ์‹œ ์ €์ž์› ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด(D, Julia, Lua, Perl)์—์„œ ๋™๋“ฑ ์ด์ƒ, ์ฝ”๋“œ ์‹คํ–‰ ์ถ”๋ก  ๋ฐ ์ˆ˜ํ•™ ์ถ”๋ก  ๋ฒค์น˜๋งˆํฌ์—์„œ ์šฐ์ˆ˜. StarCoder2-7B ์„ฑ๊ณผ: CodeLlama-7B ๋Šฅ๊ฐ€ํ•˜๋‚˜ DeepSeekCoder-6.7B ๋ฏธ๋‹ฌ. 900B+ ๊ณ ์œ  ํ† ํฐ์˜ ํ›ˆ๋ จ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ 4๋ฐฐ ๊ทœ๋ชจ ํ™•๋Œ€ ์„ฑ์ทจ.

How

Figure 1

Figure 1: File-level license assignment logic.

Originality

Limitation & Further Study

Evaluation

Novelty: 4/5 Technical Soundness: 5/5 Significance: 5/5 Clarity: 4/5 Overall: 5/5

์ดํ‰: ์ด ๋…ผ๋ฌธ์€ ๋Œ€๊ทœ๋ชจ ์ฝ”๋“œ LLM ๊ฐœ๋ฐœ์— ์žˆ์–ด ๋ฐ์ดํ„ฐ ํˆฌ๋ช…์„ฑ๊ณผ ์ฑ…์ž„ ์žˆ๋Š” ๊ฐœ๋ฐœ์˜ ํ‘œ์ค€์„ ์ œ์‹œํ•œ๋‹ค. StarCoder2 ๋ชจ๋ธ๋“ค์€ ๋‹ค์–‘ํ•œ ํฌ๊ธฐ์™€ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ํ™˜๊ฒฝ์—์„œ ๊ฒฝ์Ÿ๋ ฅ ์žˆ๋Š” ์„ฑ๋Šฅ์„ ๋‹ฌ์„ฑํ•˜๋ฉฐ, Software Heritage ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ์™€ SWHIDs ๊ณต๊ฐœ๋Š” ๊ณผํ•™์  ์žฌํ˜„์„ฑ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค. ๋‹ค๋งŒ StarCoder2-7B์˜ ์˜ˆ์ƒ ์™ธ ์„ฑ๋Šฅ ๋ฏธ๋‹ฌ์— ๋Œ€ํ•œ ๋ถ„์„์ด ๋ถ€์žฌํ•œ ์ ์ด ์•„์‰ฝ๋‹ค.

๊ฐ™์ด ๋ณด๋ฉด ์ข‹์€ ๋…ผ๋ฌธ

๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
Code Llama ๋…ผ๋ฌธ์€ StarCoder2์™€ ๋น„์Šทํ•œ ๋ชฉ์ ์˜ ์˜คํ”ˆ์†Œ์Šค ์ฝ”๋“œ ์ƒ์„ฑ LLM ๊ฐœ๋ฐœ์˜ ์„ ๊ตฌ์  ์‚ฌ๋ก€๋กœ, ์ฃผ์š” ๋น„๊ต ๋Œ€์ƒ์ด ๋œ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
770๋ฒˆ ๋…ผ๋ฌธ์€ StarCoder2๋ผ๋Š” ๋Œ€์•ˆ ๋Œ€๊ทœ๋ชจ ์–ธ์–ด๋ชจ๋ธ ๊ณ„์—ด์˜ ์„ค๊ณ„์™€ ์„ฑ๋Šฅ์„ ์ œ์‹œํ•˜์—ฌ Llama 3์˜ ์œ„์น˜๋ฅผ ๋น„๊ตํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
SWE-bench ๋…ผ๋ฌธ์€ ์‹ค์ œ GitHub ์ด์Šˆ ํ•ด๊ฒฐ์— ์ฝ”๋“œ LLM์„ ์ ์šฉํ•จ์œผ๋กœ์จ StarCoder2์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ์‹ค์ „ ํ‰๊ฐ€๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
์ฐจํŠธ ์‹œ๊ฐํ™” ์ฝ”๋“œ ์ƒ์„ฑ์„ ์œ„ํ•œ LLM ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ œ์•ˆํ•˜๋Š” ๊ด€๋ จ ์—ฐ๊ตฌ์ด๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
Codex/HumanEval์˜ ์ดˆ๊ธฐ ์ฝ”๋“œ LLM ์—ฐ๊ตฌ์—์„œ ์ถœ๋ฐœํ•˜์—ฌ StarCoder2๊ฐ€ ์–ด๋–ป๊ฒŒ ์˜คํ”ˆ์†Œ์Šค ์ฝ”๋“œ LLM์˜ ์„ฑ๋Šฅ์„ ๋ฐœ์ „์‹œ์ผฐ๋Š”์ง€ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
StarCoder2๋Š” StarCoder์˜ ํ›„์† ์„ธ๋Œ€๋กœ, ๋” ๋งŽ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ์ฝ”๋“œ LLM์˜ ๋ฐœ์ „์„ ๋ณด์—ฌ์ค€๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
StarCoder 2๋Š” ์ฝ”๋“œ ์ƒ์„ฑ์— ํŠนํ™”๋œ ์ตœ์‹  ์˜คํ”ˆ์†Œ์Šค LLM์˜ ๋ฐœ์ „์ƒ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
StarCoder 2๋Š” ์ฝ”๋“œ ๋ฐ ์ธ์ŠคํŠธ๋Ÿญ์…˜ ํŠœ๋‹ ๋ถ„์•ผ์˜ ์ตœ์‹  ์˜คํ”ˆ์†Œ์Šค ์—ฐ๊ตฌ์˜ ํ๋ฆ„์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
์‘์šฉ ์‚ฌ๋ก€
SciCode ๋ฒค์น˜๋งˆํฌ๋Š” StarCoder2์™€ ๊ฐ™์€ ์ฝ”๋“œ LLM์ด ์‹ค์ œ ๊ณผํ•™ ์—ฐ๊ตฌ ์ฝ”๋”ฉ์—์„œ ์–ด๋–ค ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š”์ง€ ํ‰๊ฐ€ํ•˜๋Š” ์‹ค์ œ ์‘์šฉ ์‚ฌ๋ก€๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
์‘์šฉ ์‚ฌ๋ก€
ResearchCodeBench๋Š” StarCoder2 ๋“ฑ์˜ ์ฝ”๋“œ LLM์ด ์‹ค์ œ ๋จธ์‹ ๋Ÿฌ๋‹ ๋…ผ๋ฌธ ๊ตฌํ˜„์— ์–ด๋–ป๊ฒŒ ํ™œ์šฉ๋˜๋Š”์ง€ ๋ฒค์น˜๋งˆํฌ๋กœ ํ‰๊ฐ€ํ•œ๋‹ค.
์‘์šฉ ์‚ฌ๋ก€
AAAR-1.0์€ ๋‹ค์–‘ํ•œ LLM์ด ์—ฐ๊ตฌ ์ง€์›์— ๋ฏธ์น˜๋Š” ์‹ค์งˆ์  ์˜ํ–ฅ ํ‰๊ฐ€์— StarCoder2 ๊ฐ™์€ ์ฝ”๋“œ ๋ชจ๋ธ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Œ์„ ์‹œ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋ฐ˜๋ก /๋น„ํŒ
StarCoder2๊ฐ€ ๋›ฐ์–ด๋‚œ ์ฝ”๋“œ ์ƒ์„ฑ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐ˜๋ฉด, SWE-bench๋Š” ์‹ค์ œ ์ด์Šˆ ํ•ด๊ฒฐ์—์„œ ์ตœ๊ณ  ๋ชจ๋ธ๋„ ๋งค์šฐ ๋‚ฎ์€ ์„ฑ๋Šฅ์„ ๋ณด์ž„์„ ๋Œ€๋น„์ ์œผ๋กœ ๋ณด์—ฌ์ค€๋‹ค.
← ๋ชฉ๋ก์œผ๋กœ ๋Œ์•„๊ฐ€๊ธฐ

๐ŸŽง Audio Overview

์ด ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ๋ฅผ ํŒŸ์บ์ŠคํŠธํ˜• ์˜ค๋””์˜ค๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. (Gemini ยท ํ‚ค๋Š” ๋ธŒ๋ผ์šฐ์ €์—๋งŒ ์ €์žฅ ยท ์™„์„ฑ๋ณธ์€ ์ด๋ฉ”์ผ๋กœ๋„ ์ „์†ก)
โ–ธ ๊ณ ๊ธ‰: ๊ตฌ์„ฑ ๋ฐฉํ–ฅ(๋Œ€๋ณธ ์ž‘์„ฑ ์ง€์นจ) ์ง์ ‘ ์ˆ˜์ •