SimpleTool: Parallel Decoding for Real-Time LLM Function Calling

이 논문은 구조화된 출력의 중복성과 약한 인과 의존성을 활용하여 토큰 압축과 병렬 생성을 동시에 수행하는 'SimpleTool'을 제안함으로써, LLM 함수 호출의 지연 시간을 획기적으로 단축하여 실시간 애플리케이션 배포를 가능하게 합니다.

Xiaoxin Shi, Jiaxin Wan, Linkang Dong, Wei Jiang, Yue Liu, Zengfeng Huang

게시일 2026-03-03
📖 3 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

🚀 SimpleTool: AI 가 "실시간"으로 일을 처리하는 비결

이 논문은 인공지능 (LLM) 이 외부 도구 (날씨 앱, 계산기, 지도 등) 를 사용할 때, 기존 방식보다 훨씬 빨라지는 새로운 방법을 소개합니다. 이름은 SimpleTool입니다.

기존 AI 는 글을 쓸 때처럼 한 글자씩 순서대로 도구 명령을 만들었습니다. 마치 손으로 편지를 쓸 때, "안녕"을 쓰고, 공백을 치고, "하세요"를 쓰는 식으로요. 하지만 이 방식은 너무 느려서, 로봇이 움직이거나 게임 캐릭터가 반응하는 실시간 상황에는 적합하지 않았습니다.

SimpleTool 은 이 문제를 해결하기 위해 두 가지 창의적인 아이디어를 섞었습니다.


1. 📦 아이디어 1: "불필요한 포장재 버리기" (토큰 압축)

비유: 택배 박스 vs. 내용물만

  • 기존 방식 (포장재 가득): AI 가 도구를 호출할 때, JSON 이라는 형식을 따릅니다. { "이름": "날씨", "도시": "서울" }처럼 대괄호, 따옴표, 쉼표 같은 **불필요한 기호 (포장재)**를 많이 써야 합니다. AI 는 이 기호들도 하나하나 써야 하므로 시간이 오래 걸립니다.
  • SimpleTool 방식 (내용물만): AI 가 이 불필요한 기호들을 아예 쓰지 않게 합니다. 대신 <날씨>, <도시> 같은 **특별한 마법 단어 (Special Tokens)**를 사용합니다.
    • 기존: { "name": "get_weather", "city": "Seoul" } (약 30 글자)
    • SimpleTool: <날씨> get_weather <도시> Seoul (약 6 글자)
    • 결과: 쓸 글자 수가 4~6 배 줄어듭니다.

2. 🏎️ 아이디어 2: "동시에 여러 대의 차 몰기" (병렬 디코딩)

비유: 요리사 한 명 vs. 요리사 여러 명

  • 기존 방식 (한 명 요리): 요리사 (AI) 가 "재료 준비"를 다 하고 나서야 "요리 시작"을 합니다. 순서대로 하나씩 해야 하므로 시간이 걸립니다.
  • SimpleTool 방식 (여러 명 요리): AI 는 "무엇을 할 것인가 (도구 이름)"와 "어떤 값을 넣을 것인가 (인수)"가 서로 크게 상관없다는 점을 이용합니다.
    • 도구 이름을 쓰는 요리사, 첫 번째 값을 쓰는 요리사, 두 번째 값을 쓰는 요리사가 동시에 일을 시작합니다.
    • 모두 같은 주문서 (입력 문장) 를 보고 시작하므로, 준비 시간은 한 번만 걸립니다.
    • 결과: 가장 늦게 끝난 요리사만 기다리면 되므로, 전체 시간이 3~6 배 빨라집니다.

🌟 이 기술이 가져오는 변화

이 두 가지 방법을 합치면 어떤 일이 일어날까요?

  1. 초고속 반응: 4090 그래픽카드 같은 일반 가정용 컴퓨터에서도 AI 가 1 초에 16 번 이상 도구를 호출할 수 있게 됩니다. (기존에는 1 초에 1~2 번 정도)
  2. 실시간 로봇 & 게임: 이 속도가 나오면, AI 가 로봇 팔을 조종하거나 게임 캐릭터가 적의 공격에 즉각 반응하는 것이 가능해집니다. (기존에는 AI 가 생각할 시간이 너무 길어 로봇이 뻔뻔하게 멈춰 서 있었습니다.)
  3. 작은 모델도 강력해짐: 구글의 작은 모델 (FunctionGemma) 보다 훨씬 작은 모델 (0.5B) 로도 더 정확하고 빠른 결과를 냅니다.

🎯 요약: SimpleTool 이란?

  • 문제: AI 가 도구를 쓸 때 글자를 너무 많이 쓰고, 한 줄씩 써서 너무 느렸다.
  • 해결:
    1. 불필요한 기호를 없애고 (압축),
    2. 여러 부분을 동시에 써서 (병렬 처리)
    • 결과: AI 가 도구를 부르는 속도가 최대 9.6 배 빨라졌습니다!

이 기술은 AI 가 우리 생활 속 (로봇, 게임, 스마트폰 비서) 에 더 자연스럽게, 더 빠르게 들어오게 하는 핵심 열쇠가 될 것입니다. 마치 AI 가 "편지 쓰기"에서 "메시지 전송"으로 넘어가는 것과 같은 혁신입니다.