From LLMs to LLM-based Agents for Software Engineering: A Survey of Current, Challenges and Future

์ €์ž: Haolin Jin, Linghan Huang, Haipeng Cai, Jun Yan, Bo Li | ๋‚ ์งœ: 2024 | DOI: 10.48550/arXiv.2408.02479 📄 PDF


Essence

Figure 1

2020-2024๋…„ LLM ๋ฐ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ ๋…ผ๋ฌธ ์ถ”์ด

๋ณธ ๋…ผ๋ฌธ์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™(SE) ๋ถ„์•ผ์—์„œ ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ(LLM)๊ณผ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ํ˜„ํ™ฉ์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ฒด๊ณ„์ ์œผ๋กœ ๋ถ„์„ํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ํฌ๊ด„์  ์กฐ์‚ฌ์ด๋‹ค. ์š”๊ตฌ์‚ฌํ•ญ ๊ณตํ•™, ์ฝ”๋“œ ์ƒ์„ฑ, ์ž์œจ์  ์˜์‚ฌ๊ฒฐ์ •, ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„, ํ…Œ์ŠคํŠธ ์ƒ์„ฑ, ์†Œํ”„ํŠธ์›จ์–ด ๋ณด์•ˆ ๋ฐ ์œ ์ง€๋ณด์ˆ˜์˜ 6๊ฐ€์ง€ ํ•ต์‹ฌ ์˜์—ญ์—์„œ 139๊ฐœ ๋…ผ๋ฌธ์„ ์ˆ˜์ง‘ํ•˜์—ฌ LLM๊ณผ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ์ฐจ์ด์ ์„ ๋ช…ํ™•ํžˆ ํ•œ๋‹ค.

Motivation

Achievement

Figure 2

์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ์˜์—ญ๋ณ„ ๋…ผ๋ฌธ ๋ถ„ํฌ

  1. LLM๊ณผ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ๋ช…ํ™•ํ•œ ๊ตฌ๋ถ„:
    • LLM: ๊ณ ์ •๋œ ํ•™์Šต ๋ฐ์ดํ„ฐ์— ๊ธฐ๋ฐ˜ํ•œ ์ •์  ์ƒ์„ฑ ๋ชจ๋ธ
    • LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ: ์™ธ๋ถ€ ๋„๊ตฌ, RAG, ์ž์œจ์  ์˜์‚ฌ๊ฒฐ์ • ๋Šฅ๋ ฅ์„ ๊ฐ–์ถ˜ ๋™์  ์‹œ์Šคํ…œ์œผ๋กœ AGI(์ธ๊ณต์ผ๋ฐ˜์ง€๋Šฅ)์— ๋” ๊ฐ€๊นŒ์šด ํŠน์„ฑ ๋ณด์œ 
  2. 6๊ฐœ SE ์˜์—ญ์— ๋Œ€ํ•œ ํฌ๊ด„์  ๋ถ„์„:
    • ์š”๊ตฌ์‚ฌํ•ญ ๊ณตํ•™ ๋ฐ ๋ฌธ์„œํ™” (28๊ฑด)
    • ์ฝ”๋“œ ์ƒ์„ฑ ๋ฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ (35๊ฑด)
    • ์ž์œจ์  ํ•™์Šต ๋ฐ ์˜์‚ฌ๊ฒฐ์ • (30๊ฑด)
    • ์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„ ๋ฐ ํ‰๊ฐ€ (19๊ฑด)
    • ์†Œํ”„ํŠธ์›จ์–ด ํ…Œ์ŠคํŠธ ์ƒ์„ฑ (15๊ฑด)
    • ์†Œํ”„ํŠธ์›จ์–ด ๋ณด์•ˆ ๋ฐ ์œ ์ง€๋ณด์ˆ˜ (43๊ฑด)

์ด 139๊ฐœ ๋…ผ๋ฌธ ์ฒด๊ณ„ํ™”

  1. ์ตœ์‹  ์—ฐ๊ตฌ ๋™ํ–ฅ ๋ฐ˜์˜: 2023๋…„ ํ•˜๋ฐ˜๊ธฐ๋ถ€ํ„ฐ 2024๋…„ 12์›”๊นŒ์ง€์˜ ์ตœ์‹  ๋…ผ๋ฌธ์„ ์ค‘์‹ฌ์œผ๋กœ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ ๋…ผ๋ฌธ์ด ๊ธ‰๊ฒฉํžˆ ์ฆ๊ฐ€ ์ถ”์„ธ๋ฅผ ์ •๋Ÿ‰์ ์œผ๋กœ ์ œ์‹œ (2023๋…„ 1๊ฑดโ†’2024๋…„ 42๊ฑด)

How

Originality

Limitation & Further Study

Evaluation

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

์ดํ‰: ๋ณธ ๋…ผ๋ฌธ์€ LLM๊ณผ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ๋ฅผ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„ํ•œ ์ฒซ ๋ฒˆ์งธ ํฌ๊ด„์  ์กฐ์‚ฌ๋กœ์„œ, ๋น ๋ฅด๊ฒŒ ์ง„ํ™”ํ•˜๋Š” AI ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ๋ถ„์•ผ์—์„œ ์‹œ์˜์„ฑ ๋†’์€ ๊ธฐ์—ฌ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ๋‹ค๋งŒ ๋ฒค์น˜๋งˆํฌ ํ‘œ์ค€ํ™” ๋ถ€์žฌ์™€ ์‹ค๋ฌด ๊ฒ€์ฆ ๋ถ€์กฑ์ด ํ•œ๊ณ„์ด๋ฉฐ, ํ›„์† ์—ฐ๊ตฌ๊ฐ€ ์ด๋Ÿฌํ•œ ๊ฒฉ์ฐจ๋ฅผ ๋ฉ”์šฐ๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•œ๋‹ค.

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

๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
CodeGen ๋…ผ๋ฌธ์€ ์†Œํ”„ํŠธ์›จ์–ด ์ฝ”๋“œ ์ƒ์„ฑ ๋Œ€ํ˜•์–ธ์–ด๋ชจ๋ธ์˜ ๊ธฐ๋ณธ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ, ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™์—์„œ LLM ํ™œ์šฉ ์‚ฌ๋ก€๋ฅผ ๋น„๊ต๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ์ด๋ก ์  ๊ธฐ๋ฐ˜๊ณผ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„ ํ–‰ ์—ฐ๊ตฌ์ด๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
499๋ฒˆ ๋…ผ๋ฌธ์€ LLM๊ณผ ํˆด ํ†ตํ•ฉ ์„œ๋ฒ ์ด๋กœ, 362๋ฒˆ์—์„œ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ๋‚ด LLM๊ณผ ์—์ด์ „ํŠธ์˜ ์‹ค์ œ ํ™œ์šฉ ๋ฐฉ๋ฒ•๋ก  ๊ธฐ์ดˆ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
LLM๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ์†Œํ”„ํŠธ์›จ์–ด/์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์ž๋™ํ™” ์—ฐ๊ตฌ๋ฅผ ๋‹ค๋ฃจ๋ฉฐ, cross-domain transfer์˜ ์†Œํ”„ํŠธ์›จ์–ด์  ํ™•์žฅ์— ๋Œ€ํ•œ ์ด๋ก ์  ๋ฐฐ๊ฒฝ์„ ์ œ๊ณตํ•œ๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
From LLMs to LLM-based Agents for Software Engineering ๋…ผ๋ฌธ์€ LLM ์—์ด์ „ํŠธ๊ฐ€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ๋ฌธ์ œ์— ์–ด๋–ป๊ฒŒ ์ ์šฉ๋˜๋Š”์ง€ ์ข…ํ•ฉ์  ๋ฐฐ๊ฒฝ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
From LLMs to LLM-based Agents for Software Engineering ๋…ผ๋ฌธ์€ ๋ฒค์น˜๋งˆํฌ ์„ค๊ณ„ ๋ฐ ์ธ์ง€์  ๊ณผ์ œ ํ‰๊ฐ€์— ๊ด€ํ•ด ์ด๋ก ์  ๋ฐ ๋ฐฉ๋ฒ•๋ก ์  ๊ธฐ๋ฐ˜์„ ์ œ๊ณตํ•œ๋‹ค.
๊ธฐ๋ฐ˜ ์—ฐ๊ตฌ
From LLMs to LLM-based Agents for Software Engineering๋Š” ์—์ด์ „ํŠธ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์˜ ํ‰๊ฐ€์™€ ๋ฐœ์ „ ๋ฐฉํ–ฅ์— ๋Œ€ํ•ด ์†Œ๊ฐœ๋˜์–ด ์žˆ์–ด MLRC-Bench์˜ ํ‰๊ฐ€์ฒด๊ณ„์— ์ด๋ก ์  ๊ทผ๊ฑฐ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
์ฝ”๋“œ ์ƒ์„ฑ ๋ฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ LLM์˜ ์—ญํ• ์„ ๋ถ„์„ํ•˜๋Š” ๊ด€๋ จ ์—ฐ๊ตฌ์ด๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
205๋ฒˆ ChatDev ๋…ผ๋ฌธ์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์šฉ ๋‹ค์ค‘ ์—์ด์ „ํŠธ๋ฅผ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๊ตฌ์กฐ๋กœ ์„ค๊ณ„ํ•˜์—ฌ, 362๋ฒˆ์˜ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ๋ถ„์•ผ ๋‚ด LLM ๋ฐ ์—์ด์ „ํŠธ ์ ์šฉ ์กฐ์‚ฌ์™€ ์„œ๋กœ ๋‹ค๋ฅธ ์ ‘๊ทผ๋ฒ•์„ ๋ณด์ž…๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
From LLMs to LLM-based Agents ๋…ผ๋ฌธ์€ AI ๊ธฐ๋ฐ˜ ๊ณผํ•™ํƒ๊ตฌ์˜ ์‹ค์ œ์  ์—ฌ๋Ÿฌ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋ง ๋ถ„์•ผ ์‘์šฉ๊นŒ์ง€ ํ™•์žฅ์  ์ ์šฉ ์‚ฌ๋ก€์™€ ๋„์ „๊ณผ์ œ๋ฅผ ๋‹ค๋ฃฌ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™์—์„œ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ์˜ ํ™œ์šฉ์„ ๋‹ค๋ฃจ๋Š” ์œ ์‚ฌํ•œ ์กฐ์‚ฌ ๋…ผ๋ฌธ์œผ๋กœ, ๋‹ค๋ฅธ ๊ด€์ ์—์„œ ๊ฐ™์€ ์ฃผ์ œ๋ฅผ ๋ถ„์„ํ•œ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ์ž๋™ํ™”๋ฅผ ์œ„ํ•œ LLM ํ™œ์šฉ์„ ๋‹ค๋ฃจ๋Š” ์œ ์‚ฌํ•œ ์กฐ์‚ฌ ๋…ผ๋ฌธ์ด๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
From LLMs to LLM-based Agents for Software Engineering ๋…ผ๋ฌธ์€ ๊ณผํ•™์—ฐ๊ตฌ ์™ธ ์†Œํ”„ํŠธ์›จ์–ด ๋„๋ฉ”์ธ์—์„œ ์•„์ด๋””์–ด ์ƒ์„ฑ ๋ฐ ํ‰๊ฐ€๋ฅผ ์ž๋™ํ™”ํ•˜๋Š” ์ ‘๊ทผ์„ ๋ณด์—ฌ์ค€๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
From LLMs to LLM-based Agents for Software Engineering์€ LLM ์—์ด์ „ํŠธ์˜ ์ถ”๋ก  ๊ณผ์ • ์‹ฌํ™” ๋ฐ ๊ฒ€์ฆ ๊ด€๋ จ ๋…ผ์˜์—์„œ, ๋ฌผ๋ฆฌ ๋ฌธ์ œ ์ค‘์‹ฌ ํ•ด์„๊ฐ€๋Šฅ์„ฑ ๊ฐ•ํ™”๋ผ๋Š” 2246 ๋…ผ๋ฌธ์˜ ์•„์ด๋””์–ด์™€ ๋น„๊ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
LLM์„ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ์ž‘์—…์— ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋ก ์„ ๋‹ค๋ฃจ๋Š” ๊ด€๋ จ ์กฐ์‚ฌ ๋…ผ๋ฌธ์ด๋‹ค.
๋‹ค๋ฅธ ์ ‘๊ทผ
362๋Š” SW ์—”์ง€๋‹ˆ์–ด๋ง์„ ์œ„ํ•œ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ ์ „๋ฐ˜์„ ๋ฆฌ๋ทฐํ•˜์—ฌ, 3288์˜ ๊ณผํ•™ SW ์ƒ์„ฑ AI ์‚ฌ๋ก€์™€ ๋‹ค์–‘ํ•œ ์ž๋™ํ™” ์ˆ˜์ค€ยท์ „๋žต ๋น„๊ต๋ฅผ ๊ฐ€๋Šฅ์ผ€ ํ•œ๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
362๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋ง์—์„œ LLM ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ ์ ์šฉ์˜ ๋‹จ๊ณ„๋ณ„ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ œ์‹œํ•˜์—ฌ, 327์˜ ๊ฒฝํ—˜์  ํ˜‘๋ ฅํ•™์Šต์— ์ด์–ด์ง‘๋‹ˆ๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
362๋Š” LLM ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ง€์› ์—์ด์ „ํŠธ์˜ ํฌ๊ด„์  ๋ฆฌ๋ทฐ๋ฅผ ์ œ์‹œํ•ด, 205์˜ ChatDev ์‹ค ์‚ฌ๋ก€๋ฅผ ๋” ๋„“์€ ๋งฅ๋ฝ์—์„œ ํ•ด์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•œ๋‹ค.
ํ›„์† ์—ฐ๊ตฌ
StableToolBench๋Š” ์ฝ”๋“œ ์ƒ์„ฑยท๋””๋ฒ„๊น…์šฉ LLM ํ‰๊ฐ€ ์Šค์œ„ํŠธ๋กœ, ์—ฐ๊ตฌํ˜„์žฅ์—์„œ LLM ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™ ํšจ์šฉ์„ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
์‘์šฉ ์‚ฌ๋ก€
From LLMs to LLM-based Agents for Software Engineering ๋…ผ๋ฌธ์€ ์ฝ”๋“œ LLM์„ ์‹ค์ œ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋ง ๋ถ„์•ผ์— ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๋ก ๊ณผ ํ•œ๊ณ„๋ฅผ ํƒ๊ตฌํ•œ๋‹ค.
์‘์šฉ ์‚ฌ๋ก€
894 ๋…ผ๋ฌธ์€ 362์˜ ์„œ๋ฒ ์ด ๊ฒฐ๊ณผ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ LLM ๊ธฐ๋ฐ˜ ์ฝ”๋”ฉ ํ’ˆ์งˆ ํ–ฅ์ƒ ๋ฐ ์‹ค์ฆ์  ์ฝ”๋“œ ์ž๋™ํ™” ์ ์šฉ ์‚ฌ๋ก€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
← ๋ชฉ๋ก์œผ๋กœ ๋Œ์•„๊ฐ€๊ธฐ

๐ŸŽง Audio Overview

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