SkillOrchestra - Learning to Route Agents via Skill Transfer
๋์
๋ณตํฉ AI ์์คํ (Compound AI System)์ด ์ ์ ๋ณต์กํด์ง๋ฉด์, ์์ฐ์ค๋ฝ๊ฒ ์ด๋ฐ ์ง๋ฌธ์ด ๋ ์ค๋ฆ ๋๋ค. "์ฌ๋ฌ ๋ชจ๋ธ๊ณผ ๋๊ตฌ๋ฅผ ์ด๋ป๊ฒ ํจ์จ์ ์ผ๋ก ์กฐํฉํ ๊ฒ์ธ๊ฐ?" ๊ธฐ์กด์ ๋ชจ๋ธ ๋ผ์ฐํ ๋ฐฉ์์ ์ฟผ๋ฆฌ ๋จ์๋ก ํ ๋ฒ ๊ฒฐ์ ํ๊ฑฐ๋, RL๋ก ์๋ํฌ์๋ ํ์ตํ๋ ๋ฐฉ์์ด ์ฃผ๋ฅผ ์ด๋ค์ต๋๋ค. ํ์ง๋ง ์ ์๋ ๋ฉํฐํด ์ํธ์์ฉ์์ ๋ฌด๋ ฅํ๊ณ , ํ์๋ ๋น์ฉ์ด ๋น์ธ๋ฉด์๋ **๋ผ์ฐํ ๋ถ๊ดด(routing collapse)**๋ผ๋ ๊ณ ์ง์ ๋ฌธ์ ๋ฅผ ์๊ณ ์์ต๋๋ค.
๊ฒฐ๋ก ๋ถํฐ ๋งํ๋ฉด, SkillOrchestra๋ "์คํฌ"์ด๋ผ๋ ์ค๊ฐ ์ถ์ ๊ณ์ธต์ ๋์ ํ์ฌ, RL ๊ธฐ๋ฐ ์ค์ผ์คํธ๋ ์ดํฐ ๋๋น ์ต๋ 22.5%p ์ ํ๋ ํฅ์๊ณผ 700๋ฐฐ ํ์ต ๋น์ฉ ์ ๊ฐ์ ๋ฌ์ฑํ์ต๋๋ค [1]. ์์ค์ฝ์ -๋งค๋์จ ๋ํ๊ต์ Salesforce AI Research์ ๊ณต๋ ์ฐ๊ตฌ์ ๋๋ค.
ํต์ฌ ์์ฝ
- ๋ฌธ์ : ๊ธฐ์กด ๋ชจ๋ธ ๋ผ์ฐํ ์ ์ฟผ๋ฆฌ ์์ค์ ๋จ๋ฐ์ฑ ๊ฒฐ์ ์ด๊ฑฐ๋, RL ๊ธฐ๋ฐ ํ์ต์ ๋น์ฉ์ด ๋๊ณ ๋ผ์ฐํ ๋ถ๊ดด ๋ฐ์
- ํด๋ฒ: ์คํ ๊ฒฝํ์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ "์คํฌ ํธ๋๋ถ"์ ํ์ตํ์ฌ, ์คํฌ ๋จ์๋ก ์์ด์ ํธ๋ฅผ ์ ํ
- ์ฑ๊ณผ: 10๊ฐ ๋ฒค์น๋งํฌ์์ SOTA RL ๊ธฐ๋ฐ ๋ฐฉ๋ฒ(Router-R1, ToolOrchestra) ๋๋น ์ฐ์ํ ์ ํ๋-๋น์ฉ ํธ๋ ์ด๋์คํ
- ์ด์ ์ฑ: ํ ์ค์ผ์คํธ๋ ์ดํฐ์์ ํ์ตํ ํธ๋๋ถ์ ๋ค๋ฅธ ๋ชจ๋ธ์ ์ฌํ๋ จ ์์ด ์ ์ด ๊ฐ๋ฅ
๊ธฐ์กด ๋ฐฉ๋ฒ์ ํ๊ณ
๋ชจ๋ธ ๋ผ์ฐํ ์ ๋ฌธ์
๋ชจ๋ธ ๋ผ์ฐํ (Model Routing)์ ์ฟผ๋ฆฌ๊ฐ ๋ค์ด์ค๋ฉด ๋ชจ๋ธ ํ์์ ์ ํฉํ ๋ชจ๋ธ์ ์ ํํ๋ ๋ฐฉ์์ ๋๋ค [2][3]. KNN Router, BERT Router, GraphRouter ๊ฐ์ ํ๋ณ์ (discriminative) ๋ฐฉ๋ฒ๋ค์ด ๋ํ์ ์ด์ฃ .
๋ฌธ์ ๋ ์ด๋ฐ ๋ฐฉ๋ฒ๋ค์ด ๋จ๋ฐ์ฑ ๊ฒฐ์ ์ด๋ผ๋ ์ ์ ๋๋ค. ์ฟผ๋ฆฌ๋ฅผ ํ ๋ฒ ๋ณด๊ณ ๋ชจ๋ธ์ ๊ณ ๋ฅด๋ฉด ๋์ ๋๋ค. ๋ฉํฐํด ์์ด์ ํธ ์ํฌํ๋ก์์๋ ๊ฐ ๋จ๊ณ๋ง๋ค ๋ค๋ฅธ ๋ฅ๋ ฅ์ด ํ์ํ๋ฐ, ์ด๊ฑธ ๋ฐ์ํ์ง ๋ชปํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ฒซ ํด์์๋ ์น ๊ฒ์์ด, ๋ ๋ฒ์งธ ํด์์๋ ์ฝ๋ ์คํ์ด, ์ธ ๋ฒ์งธ ํด์์๋ ์ํ ์ถ๋ก ์ด ํ์ํ ์ ์์ต๋๋ค.
RL ๊ธฐ๋ฐ ์ค์ผ์คํธ๋ ์ด์ ์ ๋ฌธ์
Router-R1 [4]์ด๋ ToolOrchestra [5] ๊ฐ์ RL ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค ํ์ต๋๋ค. LLM์ PPO๋ GRPO๋ก ํ์ต์์ผ ์์ฐจ์ ๋ผ์ฐํ ์ ์ฑ ์ ์ต์ ํํ๋ ๋ฐฉ์์ด์ฃ .
ํ์ง๋ง ๋ ๊ฐ์ง ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
- ํ์ต ๋น์ฉ์ด ๋น์๋๋ค. Router-R1์ 14k ์ํ๋ก PPO ํ์ต์ด ํ์ํฉ๋๋ค.
- ๋ผ์ฐํ ๋ถ๊ดด๊ฐ ๋ฐ์ํฉ๋๋ค. ์คํ ๊ฒฐ๊ณผ Router-R1์ ์ ์ฒด ํธ์ถ์ 98%๋ฅผ LLaMA-3.1-70B ํ ๋ชจ๋ธ์ ์ง์ค์์ผฐ์ต๋๋ค. ๋ค๋ฅธ ๋ชจ๋ธ๋ค์ ๊ฐ๊ฐ 1% ๋ฏธ๋ง์ผ๋ก, ์ฌ์ค์ ๋ฉํฐ๋ชจ๋ธ ๋ผ์ฐํฐ๊ฐ ์๋๋ผ ๋จ์ผ ๋ชจ๋ธ ํธ์ถ๊ธฐ์ ๋ถ๊ณผํ ์ ์ ๋๋ค.
์ด๊ฒ์ด SkillOrchestra๊ฐ ํด๊ฒฐํ๋ ค๋ ํต์ฌ ๋ฌธ์ ์ ๋๋ค.
SkillOrchestra: ์คํฌ ํธ๋๋ถ ๊ธฐ๋ฐ ์ค์ผ์คํธ๋ ์ด์
ํต์ฌ ์์ด๋์ด
SkillOrchestra์ ๋ฐ์์ ๋จ์ํฉ๋๋ค. ๋ผ์ฐํ ์ ์ฑ ์ ์๋ํฌ์๋๋ก ํ์ตํ๋ ๋์ , **์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์คํฌ ํธ๋๋ถ(Skill Handbook)**์ ๊ตฌ์ถํ์๋ ๊ฒ์ ๋๋ค.
์คํฌ(Skill)์ "ํน์ ์ด์ ๋ชจ๋์์ ํ์ํ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฅ๋ ฅ ์ถ์ํ"๋ก ์ ์๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ฝ๋ฉ ๋ชจ๋ ์๋์ data_processing.symbolic_logic(๊ท์น ๊ธฐ๋ฐ ์ถ๋ก )์ด๋ data_processing.numerical_approximation(์์น ๊ทผ์ฌ) ๊ฐ์ ์ธ๋ถํ๋ ์คํฌ์ด ์กด์ฌํฉ๋๋ค.
ํ์์ ์ผ๋ก, ์คํฌ \(\sigma\)๋ ๋ค์๊ณผ ๊ฐ์ด ํํ๋ฉ๋๋ค:
\[\sigma \triangleq \langle D, I \rangle\]
์ฌ๊ธฐ์ \(D\)๋ ํด๋น ๋ฅ๋ ฅ์ ์์ฐ์ด ์ค๋ช , \(I\)๋ ์คํฌ์ด ์ ์ฉ๋๋ ์ํฉ์ ์๋ ค์ฃผ๋ ๋งฅ๋ฝ ์งํ(ํค์๋, ๊ตฌ์กฐ์ ํจํด ๋ฑ)์ ๋๋ค.
์คํฌ ํธ๋๋ถ์ ๊ตฌ์กฐ
์คํฌ ํธ๋๋ถ \(H\)๋ ์ธ ๊ฐ์ง ๊ณ์ธต์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค:
- ๋ชจ๋ ์์ค ๋ฉํ๋ฐ์ดํฐ (\(V_\Psi\)): ๊ฐ ์ด์ ๋ชจ๋(๊ฒ์, ์ฝ๋ฉ, ๋ต๋ณ ๋ฑ)์ ๋ํ ์ ํ ์ธ์ฌ์ดํธ๋ฅผ ์ ์ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด "์ฐ์ ์ฐ์ฐ์ด 2๊ฐ ์ด์์ด๊ฑฐ๋ ์ง๊ณ๊ฐ ํ์ํ๋ฉด ๊ฒ์ ๋์ ์ฝ๋ฉ ๋ชจ๋๋ก ์ ํํ๋ผ"๋ ๊ท์น์ด ์ฌ๊ธฐ์ ํด๋นํฉ๋๋ค.
- ์คํฌ ๋ ์ง์คํธ๋ฆฌ (\(V_\Sigma\)): ์ธ๋ถํ๋ ์คํฌ ์ ์์ ์ ์ฉ ์กฐ๊ฑด์ ๊ด๋ฆฌํฉ๋๋ค.
- ์์ด์ ํธ ํ๋กํ (\(V_P\)): ๊ฐ ์์ด์ ํธ์ ์คํฌ๋ณ ์ฑ๊ณต ํ๋ฅ , ๋น์ฉ ํน์ฑ, ๊ฐ์ ๊ณผ ์ฝ์ ์ ์์ฝํฉ๋๋ค.
์์ด์ ํธ ํ๋กํ์ ๊ตฌ์ฒด์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ด ์ ์๋ฉ๋๋ค:
\[P_{A,\psi} = ({\phi_{A,\sigma}}_{\sigma \in \Sigma_\psi}, \hat{C}_A(\psi), R_{A,\psi}, \Gamma_A)\]
์ฌ๊ธฐ์ \(\phi_{A,\sigma}\)๋ ์์ด์ ํธ \(A\)์ ์คํฌ \(\sigma\)์ ๋ํ ์ถ์ ์ฑ๊ณต ํ๋ฅ , \(\hat{C}_A(\psi)\)๋ ๋ชจ๋๋ณ ์์ ๋น์ฉ, \(R_{A,\psi}\)๋ ๋ผ์ฐํ ์๊ทธ๋, \(\Gamma_A\)๋ ๊ฐ์ฝ์ ์์ฝ์ ๋๋ค.
๋ฐฐํฌ ์ ๋์ ๋ฐฉ์
๋ฐฐํฌ ์ ์ค์ผ์คํธ๋ ์ดํฐ๋ ๊ฐ ํ์์คํ ์์ ๋ ๊ฐ์ง๋ฅผ ๊ฒฐ์ ํฉ๋๋ค:
1๋จ๊ณ - ๋ชจ๋ ์ ํ: ํ์ฌ ์ํ \(s_t\)์์ ์ด๋ค ์ด์ ๋ชจ๋(๊ฒ์, ์ฝ๋ฉ, ๋ต๋ณ)๋ฅผ ์ํํ ์ง ๊ฒฐ์ ํฉ๋๋ค.
2๋จ๊ณ - ์คํฌ ๊ธฐ๋ฐ ์์ด์ ํธ ์ ํ: ์ ํ๋ ๋ชจ๋์์ ํ์ฑํ๋ ์คํฌ ์งํฉ \(\Sigma_t\)๋ฅผ ์๋ณํ๊ณ , ๊ฐ ์์ด์ ํธ์ ์ญ๋๊ณผ ๋น์ฉ์ ์ข ํฉํ์ฌ ์ต์ ์์ด์ ํธ๋ฅผ ์ ํํฉ๋๋ค:
\[A^*_t = \arg\max_{A \in \mathcal{A}_{\psi_t}} \left[ \sum_{\sigma \in \Sigma_t} w_{t,\sigma} \frac{\alpha_{A,\sigma}}{\alpha_{A,\sigma} + \beta_{A,\sigma}} - \lambda_c \cdot \hat{C}_A(\psi_t) \right]\]
์ฌ๊ธฐ์ \(\frac{\alpha_{A,\sigma}}{\alpha_{A,\sigma} + \beta_{A,\sigma}}\)๋ Beta ๋ถํฌ์ ์ฌํ ํ๊ท ์ผ๋ก ์ถ์ ๋ ์คํฌ๋ณ ์ฑ๊ณต ํ๋ฅ ์ ๋๋ค. ์ด ๋ฐฉ์์ด ๊น๋ํ ์ด์ ๋, ์ญ๋ ์ถ์ ๊ณผ ๋น์ฉ์ ๋ช ์์ ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ํธ๋ ์ด๋์คํ๋ฅผ ์ ์ดํ ์ ์๋ค๋ ์ ์ ๋๋ค.
์คํฌ ํธ๋๋ถ ํ์ต
Phase 1: ์คํฌ ๋ฐ๊ฒฌ๊ณผ ํ๋กํ ๊ตฌ์ถ
ํ์ ๋ฐ์ดํฐ์ \(D_{\text{train}} = {(q_i, B_i)}_{i=1}^N\)์์, ๊ฐ์ ์ฟผ๋ฆฌ์ ๋ํด ์์ด์ ํธ๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉฐ ์ป์ ์ฑ๊ณต/์คํจ ๊ถค์ ์ ๋์กฐํฉ๋๋ค.
์ฑ๊ณต ๊ถค์ \(\tau^+\)์ ์คํจ ๊ถค์ \(\tau^-\)์ ์ฐจ์ด \(D_{\text{diff}}(\tau^+ | \tau^-)\)๋ฅผ ๋ถ์ํ๋ฉด, ์คํจํ ์์ด์ ํธ์๊ฒ ๋ถ์กฑํ๋ ๋ฅ๋ ฅ์ด ๋๋ฌ๋ฉ๋๋ค. LLM ๊ธฐ๋ฐ ๋ฐ๊ฒฌ๊ธฐ๊ฐ ์ด ๋ฅ๋ ฅ ๊ฒฉ์ฐจ๋ฅผ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์คํฌ ์ ์๋ก ์ถ์ํํฉ๋๋ค.
์์ด์ ํธ ํ๋กํ์ ์ง๊ณ๋ ๊ฒฐ๊ณผ๋ก๋ถํฐ ์ถ์ ๋ฉ๋๋ค. ๊ฐ ์์ด์ ํธ \(A\), ๋ชจ๋ \(\psi\), ์คํฌ \(\sigma\)์ ๋ํด ์ฑ๊ณต ํ๋ฅ ์ Beta ๋ถํฌ๋ก ๋ชจ๋ธ๋งํฉ๋๋ค:
\[\alpha_{A,\sigma}^{(t+1)} \leftarrow \alpha_{A,\sigma}^{(t)} + \sum_{\tau} \mathbb{I}[A \text{ succeeds on } \sigma]$$ $$\beta_{A,\sigma}^{(t+1)} \leftarrow \beta_{A,\sigma}^{(t)} + \sum_{\tau} \mathbb{I}[A \text{ fails on } \sigma]\]
Beta ๋ถํฌ๋ฅผ ์ฌ์ฉํ๋ ๊ฑด ๊ฝค ํฉ๋ฆฌ์ ์ธ ์ ํ์ ๋๋ค. ๋ฐ์ดํฐ๊ฐ ์ ์ ๋๋ ์ฌ์ ๋ถํฌ์ ์์กดํ๊ณ , ๋ฐ์ดํฐ๊ฐ ์์ด๋ฉด ์์ฐ์ค๋ฝ๊ฒ ์ ํํด์ง๋๊น์.
Phase 2: ํธ๋๋ถ ์ ์
์คํฌ์ด ๋๋ฌด ์ธ๋ถํ๋๊ฑฐ๋ ์ค๋ณต๋๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํ ์ ์ ๊ณผ์ ์ ๋๋ค:
- ๋ถํ (Splitting): ํ ์คํฌ์ ๋ํ ์์ด์ ํธ ์ฑ๋ฅ ๋ถ์ฐ์ด ๋์ผ๋ฉด, ์ค์ ๋ก๋ ์ฌ๋ฌ ํ์ ๋ฅ๋ ฅ์ด ์์ฌ ์์ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
- ๋ณํฉ(Merging): ๋ ์คํฌ์ ์์ด์ ํธ ์ฑ๋ฅ ํ๋กํ์ด ํต๊ณ์ ์ผ๋ก ๊ตฌ๋ถ ๋ถ๊ฐ๋ฅํ๋ฉด ์ค๋ณต์ด๋ฏ๋ก ํฉ์นฉ๋๋ค.
ํ๋ ํ ์ต์ ํธ๋๋ถ ์ ํ
ํฅ๋ฏธ๋ก์ด ์ ์, ์คํฌ์ ์ธ๋ถํํ ์๋ก ํญ์ ์ข์์ง๋ ๊ฒ ์๋๋ผ๋ ๋ฐ๊ฒฌ์ ๋๋ค. ์ค์ผ์คํธ๋ ์ดํฐ์ ์ถ๋ก ๋ฅ๋ ฅ์ ๋ฐ๋ผ ์ ์ ํ ์ธ๋ถํ ์์ค์ด ๋ค๋ฆ ๋๋ค.
์ฝํ ์ค์ผ์คํธ๋ ์ดํฐ์๊ฒ symbolic_logic๊ณผ numerical_approximation์ ๊ตฌ๋ถํ๊ฒ ์ํค๋ฉด ์คํ๋ ค ์๋ชป๋ ์คํฌ์ ํ์ฑํํ ์ ์์ต๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ ์์ ์คํฌ์ธ data_processing ์์ค์์ ๊ฒฐ์ ํ๋ ๊ฒ ๋ ์์ ์ ์ด์ฃ .
์ด๋ฅผ ์ํด ๊ฒ์ฆ ๋ฐ์ดํฐ์์ ํ๋ ํ ์ต์ ํธ๋๋ถ์ ์ ํํฉ๋๋ค:
\[H_{\text{base}}^{(O)} = \arg\max_{H \subseteq H^*} \mathbb{E}_{q \sim D_{\text{val}}} \left[ R(\tau_H(q)) - \lambda \sum_{t=0}^{|\tau_H(q)|} C(\psi_t, A_t) \right]\]
์คํ ๊ฒฐ๊ณผ
๋ชจ๋ธ ๋ผ์ฐํ (QA ๋ฒค์น๋งํฌ)
Qwen2.5-3B์ ์ค์ผ์คํธ๋ ์ดํฐ๋ก, 6๊ฐ ๋ชจ๋ธ ํ(Qwen2.5-7B, LLaMA-3.1-8B/70B, Mistral-7B, Mixtral-8x22B, Gemma-2-27B)์ ์ฌ์ฉํ ์คํ์ ๋๋ค. 7๊ฐ QA ๋ฒค์น๋งํฌ์์์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ฒ ์ต๋๋ค.
๋ฐฉ๋ฒ |
ํ๊ท EM |
|---|---|
RAG |
26.7 |
Search-R1 |
29.1 |
RouterDC |
31.4 |
FrugalGPT |
31.8 |
Router-R1 (RL) |
41.6 |
SkillOrchestra |
47.4 |
SkillOrchestra+ |
51.6 |
SkillOrchestra๊ฐ Router-R1 ๋๋น +5.8, SkillOrchestra+๋ +10.0์ ๊ฐ์ ์ ๋ณด์์ต๋๋ค. ํนํ ๋ฉํฐํ QA์์ ๋๋๋ฌ์ง๋๋ค. Musique์์ 13.8 โ 18.2 โ 20.6, Bamboogle์์ 51.2 โ 58.4 โ 63.2๋ก ์์นํ์ต๋๋ค.
์ํ ์ถ๋ก (MATH, AMC23)์์๋ ๋ ๊ทน์ ์ ๋๋ค. MATH์์ 55.8% โ 73.6%๋ก 17.8%p ํฅ์, AMC23์์ 25.0% โ 52.5%๋ก 27.5%p ํฅ์์ ๋ฌ์ฑํ๋ฉด์, ๋น์ฉ์ ์คํ๋ ค ์ฝ 2๋ฐฐ ์ ๊ฐ๋์์ต๋๋ค.
๋ผ์ฐํ ๋ถ๊ดด ํด์
Router-R1์ ๋ชจ๋ธ ์ ํ ๋ถํฌ๋ฅผ ๋ณด๋ฉด:
- LLaMA-3.1-70B: 98.02%
- ๋๋จธ์ง 5๊ฐ ๋ชจ๋ธ: ๊ฐ 0~0.92%
์ฌ์ค์ ๋จ์ผ ๋ชจ๋ธ ํธ์ถ๊ธฐ์ ๋๋ค. ๋ฐ๋ฉด SkillOrchestra๋:
- Mixtral-8x22B: 44.53%
- Qwen2.5-7B: 25.99%
- LLaMA-3.1-70B: 15.38%
- Qwen2.5-3B: 11.50%
๊ฐ ๋ชจ๋ธ์ด ์์ ์ ๊ฐ์ ์ ๋ง๋ ์์ ์ ์ฒ๋ฆฌํ๋, ์ค์ง์ ์ธ ๋ฉํฐ๋ชจ๋ธ ์ค์ผ์คํธ๋ ์ด์ ์ด ์ผ์ด๋๊ณ ์์ต๋๋ค. ์ค์ผ์คํธ๋ ์ดํฐ ์์ฒด๊ฐ ์ง์ ๋ต๋ณํ๋ ๊ฒฝ์ฐ(11.50%)๋ ์์ด์, ๋ถํ์ํ ์ธ๋ถ ํธ์ถ์ ์ค์ด๋ ํจ๊ณผ๋ ์๋ค์.
์์ด์ ํธ ์ค์ผ์คํธ๋ ์ด์ (FRAMES)
๋๊ตฌ ์ฌ์ฉ๊น์ง ํฌํจํ ์ ์ฒด ์์ด์ ํธ ์ค์ผ์คํธ๋ ์ด์ ์์๋ ๊ฒฐ๊ณผ๊ฐ ์ข์ต๋๋ค. Qwen3-8B์ ์ค์ผ์คํธ๋ ์ดํฐ๋ก, ๊ฒ์ยท์ฝ๋ฉยท๋ต๋ณ 3๊ฐ ๋ชจ๋์ ๊ฐ๊ฐ ๋ค๋ฅธ ๋ชจ๋ธ ํ์ ์ฌ์ฉํ FRAMES ๋ฒค์น๋งํฌ ๊ฒฐ๊ณผ์ ๋๋ค:
๋ฐฉ๋ฒ |
์ ํ๋ (%) |
๋น์ฉ ($) |
|---|---|---|
ToolOrchestra (RL) |
76.3 |
92.7 |
GPT-5 (์ค์ผ์คํธ๋ ์ดํฐ) |
74.6 |
120.4 |
Claude Opus 4.5 (์ค์ผ์คํธ๋ ์ดํฐ) |
77.9 |
758.1 |
Gemini 3 Pro (์ค์ผ์คํธ๋ ์ดํฐ) |
78.9 |
1,729.3 |
SkillOrchestra |
84.3 |
72.7 |
SkillOrchestra๊ฐ RL ํ์ต๋ ToolOrchestra ๋๋น +8.0%p ์ ํ๋๋ฅผ ๋ฌ์ฑํ๋ฉด์ ๋น์ฉ์ 21.6% ์ ๊ฐํ์ต๋๋ค. GPT-5๋ Claude Opus 4.5 ๊ฐ์ ๊ฐ๋ ฅํ ํ๋กํ๋ผ์ด์ดํฐ๋ฆฌ ๋ชจ๋ธ์ ์ค์ผ์คํธ๋ ์ดํฐ๋ก ์ฐ๋ ๊ฒ๋ณด๋ค๋ ์ ํํ๋ฉด์ ํจ์ฌ ์ ๋ ดํฉ๋๋ค.
Claude Opus 4.5์ ๋น์ฉ(\(758.1)์ด๋ Gemini 3 Pro(\)1,729.3)๋ฅผ ๋ณด๋ฉด,, ๊ฐํ ๋ชจ๋ธ ํ๋์ ์์กดํ๋ ์ ๋ต์ด ๋น์ฉ ์ธก๋ฉด์์ ์ผ๋ง๋ ๋นํจ์จ์ ์ธ์ง ์ ๋๋ฌ๋ฉ๋๋ค.
ํธ๋๋ถ ์ ์ด์ฑ
Qwen2.5-3B์์ ํ์ตํ ์คํฌ ํธ๋๋ถ์ ๋ค๋ฅธ ๋ชจ๋ธ์ ๊ทธ๋๋ก ์ ์ฉํ ๊ฒฐ๊ณผ:
๋ชจ๋ธ |
ํธ๋๋ถ ์์ด |
ํธ๋๋ถ ์ ์ฉ |
ํฅ์ |
|---|---|---|---|
Qwen2.5-3B |
40.7% |
56.1% |
+15.4 |
Qwen2.5-7B |
35.7% |
60.0% |
+24.3 |
LLaMA-3.1-8B |
35.5% |
58.0% |
+22.5 |
Mistral-7B |
36.5% |
59.8% |
+23.3 |
Mixtral-8x22B |
46.5% |
61.3% |
+14.8 |
์ฌํ๋ จ ์์ด ์ผ๊ด๋ ์ฑ๋ฅ ํฅ์์ ๋ณด์ ๋๋ค. ๊ฐํ ๋ชจ๋ธ์ผ์๋ก ํธ๋๋ถ๊ณผ์ ์๋์ง๊ฐ ํฌ๋ค๋ ์ ๋ ํฅ๋ฏธ๋กญ์ต๋๋ค. ์ด๊ฑด ์คํฌ ํธ๋๋ถ์ด ๋ชจ๋ธ ํ๋ผ๋ฏธํฐ์ ์ข ์๋์ง ์๋ ์ ์ด ๊ฐ๋ฅํ ์ค์ผ์คํธ๋ ์ด์ ์ง์์ ๋ด๊ณ ์๋ค๋ ์๋ฏธ์ ๋๋ค.
์ปดํฌ๋ํธ ๊ธฐ์ฌ ๋ถ์ (Ablation)
FRAMES์์ 100๊ฐ ์ํ๋ก ์ํํ ablation ๊ฒฐ๊ณผ์ ๋๋ค:
์ค์ |
์ ํ๋ (%) |
๋น์ฉ ($) |
|---|---|---|
ํธ๋๋ถ ์์ |
71.0 |
122.9 |
๋ฐ๊ฒฌ๋ง (์ ์ ยท์ ํ ์์) |
79.0 |
5.5 |
์ ์ ๊น์ง (์ ํ ์์) |
79.3 |
3.4 |
์ธ๋ถํ ์คํฌ ์์ |
80.4 |
15.1 |
์ ์ฒด ์์คํ |
85.0 |
9.3 |
ํธ๋๋ถ ์์ด๋ 71.0%์ ๋น์ฉ \(122.9์ ๋๋ค. ์คํฌ ๋ฐ๊ฒฌ๋ง์ผ๋ก๋ ๋น์ฉ์ด\)5.5๋ก ๊ธ๊ฐํ๊ณ , ์ ์ฒด ์์คํ ์์ 85.0%/$9.3์ผ๋ก ์ต์ ํธ๋ ์ด๋์คํ๋ฅผ ๋ฌ์ฑํฉ๋๋ค. ์ ์ ๊ฐ ๋น์ฉ์ ์ค์ด๊ณ , ์ธ๋ถํ ์คํฌ์ด ์ ํ๋๋ฅผ ๋์ด๋ ๋ฐ ๊ฐ๊ฐ ๊ธฐ์ฌํ๋ ๊ตฌ์กฐ์ ๋๋ค.
๋นํ์ ๋ถ์
์ํ ์
์คํฌ์ด๋ผ๋ ์ค๊ฐ ์ถ์ํ: ์ฟผ๋ฆฌ ์์ค๊ณผ ์์ด์ ํธ ์์ค ์ฌ์ด์ "์คํฌ"์ ๋์ ๊ฒ์ ์ง๊ด์ ์ด๋ฉด์๋ ํจ๊ณผ์ ์ ๋๋ค. ์ธ๊ฐ์ด ํ์ ๊ตฌ์ฑํ ๋๋ "์ด ์ผ์๋ ์ด๋ค ์ญ๋์ด ํ์ํ๊ณ , ๋๊ฐ ๊ทธ ์ญ๋์ด ์๋?"๋ฅผ ๋ฐ์ง๋ ๊ฒ๊ณผ ๊ฐ์ ์๋ฆฌ์ฃ .
๋ผ์ฐํ ๋ถ๊ดด ํด๊ฒฐ: RL ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ 98% ํธ์ค ๋ฌธ์ ๋ฅผ ๋ช ์์ ์ญ๋ ๋ชจ๋ธ๋ง์ผ๋ก ์์ฐ์ค๋ฝ๊ฒ ํด๊ฒฐํ ๊ฒ์ ๊ฐ์น๊ฐ ์์ต๋๋ค.
๋น์ฉ ํจ์จ์ฑ: 700๋ฐฐ(Router-R1 ๋๋น), 300๋ฐฐ(ToolOrchestra ๋๋น) ํ์ต ๋น์ฉ ์ ๊ฐ์ ์ค์ฉ์ ์ผ๋ก ํฐ ์๋ฏธ๊ฐ ์์ต๋๋ค. 50๊ฐ ๋ฏธ๋ง์ ์ํ๋ก ํธ๋๋ถ์ ํ์ตํ ์ ์๋ค๋ ์ ์ ๋น ๋ฅธ ์ ์ฉ์ด ๊ฐ๋ฅํ๋ค๋ ๋ป์ ๋๋ค.
ํด์ ๊ฐ๋ฅ์ฑ: ์ด๋ค ์คํฌ์ด ํ์ฑํ๋์๊ณ , ์ ํน์ ์์ด์ ํธ๊ฐ ์ ํ๋์๋์ง ์ถ์ ํ ์ ์์ต๋๋ค. RL ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ๋ธ๋๋ฐ์ค ํน์ฑ๊ณผ ๋๋น๋ฉ๋๋ค.
์์ฌ์ด ์
์คํฌ ๋ฐ๊ฒฌ์ LLM ์์กด์ฑ: ์คํฌ์ ๋ฐ๊ฒฌํ๊ณ ์ ์ ํ๋ ๊ณผ์ ์์ LLM(GPT-5๋ก ์ถ์ )์ ์ฌ์ฉํฉ๋๋ค. ์ด LLM์ ํ์ง์ ํธ๋๋ถ์ ํ์ง์ด ์ข์ฐ๋ ์ ์๋๋ฐ, ์ด์ ๋ํ ๋ฏผ๊ฐ๋ ๋ถ์์ด ์์ต๋๋ค.
๋์ ํ๊ฒฝ ์ ์: ๋ชจ๋ธ ํ์ด ๋ณ๊ฒฝ๋๊ฑฐ๋ ์ ๋๊ตฌ๊ฐ ์ถ๊ฐ๋๋ฉด ํธ๋๋ถ์ ์ด๋ป๊ฒ ์ ๋ฐ์ดํธํ๋์ง์ ๋ํ ๋ ผ์๊ฐ ๋ถ์กฑํฉ๋๋ค. "์ ์ด ๊ฐ๋ฅ"ํ๋ค๊ณ ํ์ง๋ง, ์ด๊ฑด ๊ธฐ์กด ๋ชจ๋ธ ํ ๋ด์์ ์ค์ผ์คํธ๋ ์ดํฐ๋ง ๋ฐ๊พผ ๊ฒฝ์ฐ์ ๋๋ค.
์คํ ํ๊ฒฝ์ ์ ํ: FRAMES ๋ฒค์น๋งํฌ์ ์ต๋ 50ํด ์ค์ ์ด ์ค์ ๋ณตํฉ ์์ด์ ํธ ์๋๋ฆฌ์ค๋ฅผ ์ถฉ๋ถํ ๋ฐ์ํ๋์ง๋ ์๋ฌธ์ ๋๋ค. ๋ ๊ธด ํธ๋ผ์ด์ฆ์์์ ์ฑ๋ฅ ๋ณํ๊ฐ ๊ถ๊ธํฉ๋๋ค.
์คํฌ ์ธ๋ถํ์ ์๋ ๊ฒฐ์ : ํ๋ ํ ์ต์ ํธ๋๋ถ ์ ํ์ด ๊ฒ์ฆ ๋ฐ์ดํฐ์ ์์กดํ๋๋ฐ, ๊ฒ์ฆ ๋ฐ์ดํฐ๊ฐ ์ค์ ๋ฐฐํฌ ํ๊ฒฝ์ ๋ถํฌ์ ๋ค๋ฅผ ๊ฒฝ์ฐ ์ต์ ์ธ๋ถํ ์์ค์ด ๋ฌ๋ผ์ง ์ ์์ต๋๋ค.
๊ฒฐ๋ก
SkillOrchestra๋ ๋ณตํฉ AI ์์คํ ์ ์ค์ผ์คํธ๋ ์ด์ ๋ฌธ์ ์ "์คํฌ"์ด๋ผ๋ ์ค๊ฐ ์ถ์ํ๋ฅผ ๋์ ํ์ฌ, RL ์์ด๋ ํจ๊ณผ์ ์ธ ๋ฉํฐ์์ด์ ํธ ๋ผ์ฐํ ์ ๋ฌ์ฑํ์ต๋๋ค. ๋ผ์ฐํ ๋ถ๊ดด๋ฅผ ํด๊ฒฐํ๊ณ , ํ์ต ๋น์ฉ์ ์๋ฐฑ ๋ฐฐ ์ ๊ฐํ๋ฉด์, ํธ๋๋ถ์ ์ ์ด ๊ฐ๋ฅ์ฑ๊น์ง ํ๋ณดํ ๊ฒ์ ์ค์ฉ์ ์ผ๋ก ์๋ฏธ๊ฐ ํฝ๋๋ค.
์ ์๊ฐ์๋, ์ด ์ ๊ทผ์ด ํนํ ๊ฐ์น ์๋ ์ด์ ๊ฐ ๋ชจ๋ธ ํ์ด ๋น ๋ฅด๊ฒ ๋ณํ๋ ํ์ค์ ์์ต๋๋ค. ๋งค๋ฌ ์ ๋ชจ๋ธ์ด ๋์ค๋ ์ํฉ์์, RL๋ก ์ ์ฑ ์ ์ฒ์๋ถํฐ ๋ค์ ํ์ตํ๋ ๊ฑด ํ์ค์ ์ด์ง ์์ต๋๋ค. ์คํฌ ํธ๋๋ถ์ด๋ผ๋ ๋ ๋ฆฝ์ ์ง์ ๊ตฌ์กฐ๋ฅผ ์ ์งํ๊ณ , ์ ๋ชจ๋ธ์ ํ๋กํ๋ง ์ถ๊ฐํ๋ ๋ฐฉ์์ด ํจ์ฌ ํ์ฅ ๊ฐ๋ฅํ์ฃ .
์์ด์ ํธ ์ค์ผ์คํธ๋ ์ด์ ์ด ์ ์ ์ค์ํด์ง๋ ์์ ์์, ์คํฌ ๊ธฐ๋ฐ ์ ๊ทผ์ด ์ด๋๊น์ง ํ์ฅ๋ ์ ์์์ง ์ง์ผ๋ณผ ํ์๊ฐ ์์ต๋๋ค.
References
[1] J. Wang, Y. Ming, Z. Ke, S. Joty, A. Albarghouthi, and F. Sala, "SkillOrchestra: Learning to Route Agents via Skill Transfer," arXiv preprint arXiv:2602.19672, 2026.
[2] L. Chen, M. Zaharia, and J. Zou, "FrugalGPT: How to use large language models while reducing cost and improving performance," Transactions on Machine Learning Research, 2024.
[3] Q. J. Hu et al., "Routerbench: A benchmark for multi-LLM routing system," arXiv preprint arXiv:2403.12031, 2024.
[4] H. Zhang, T. Feng, and J. You, "Router-R1: Teaching LLMs multi-round routing and aggregation via reinforcement learning," in NeurIPS, 2025.
[5] H. Su et al., "ToolOrchestra: Elevating intelligence via efficient model and tool orchestration," arXiv preprint arXiv:2511.21689, 2025.