아티클 목록으로
프레임워크·도구

자연어 사양을 로컬 신경 함수로 바꾸는 Compile by Training

약 3분 소요

배경

텍스트 변환이나 정보 추출처럼 자연어로 설명하기는 쉽지만 규칙으로 안정적으로 구현하기 어려운 기능이 많습니다. 매 요청마다 대형 원격 모델을 호출하면 문제를 해결할 수 있지만, 반복적인 비용과 지연이 발생하고 특정 서비스 제공업체에 대한 의존도 커집니다. Compile by Training은 자연어 사양을 한 번 컴파일해 반복 사용 가능한 로컬 신경 함수로 만드는 대안을 제시합니다.

작동 방식

이 연구는 Program-as-Weights(PAW)를 기반으로 합니다. PAW는 함수가 해야 할 일을 설명한 자연어를 작은 신경 프로그램으로 변환하고, 이 프로그램을 공유 0.6B 로컬 인터프리터에서 실행합니다. 기존의 빠른 컴파일러는 한 번의 순방향 계산만으로 변환을 수행해 수초 안에 결과를 만들 수 있습니다.

Compile by Training의 고정밀 모드는 다음과 같은 절차를 사용합니다.

  • 사용자가 작성한 자연어 작업 사양을 읽습니다.
  • 컴파일 단계에서 교사 모델이 작업별 입력과 출력 예제를 합성합니다.
  • 합성된 예제로 경량 어댑터를 미세 조정해 로컬 인터프리터를 해당 함수에 맞춥니다.

완성된 PAW 프로그램은 매번 교사 모델을 호출하지 않아도 됩니다. 로컬에서 실행할 수 있고, 일반 소프트웨어 함수처럼 저장하거나 버전 관리하고 다른 함수와 조합할 수 있습니다. 공개된 시연에는 영어와 ‘Claude 스타일’ 문체 사이의 번역, 자연어로 제어하는 실시간 3D 아바타, 개인정보를 로컬에서 탐지하고 마스킹하는 기능이 포함됩니다.

정확도와 시간의 교환

FuzzyBench-Hard의 한 어려운 하위 집합에서는 빠른 PAW 컴파일러가 정확히 일치하는 출력을 만들지 못했습니다. 반면 Compile by Training은 의미 정확도 83.6%를 달성했습니다. 작업에 특화된 예제를 생성하고 이를 기반으로 어댑터를 학습하는 방식이 복잡하거나 모호한 사양에 대한 대응력을 높였다는 의미입니다.

물론 개선에는 대가가 따릅니다. 빠른 컴파일러가 수초 만에 끝나는 데 비해 학습 기반 방식은 약 1분이 필요합니다. 추가 비용은 모든 추론 요청이 아니라 함수를 생성하는 컴파일 단계에서 발생합니다. 따라서 같은 기능을 반복 호출하거나 로컬 실행을 선호하는 환경에서는 이후의 원격 모델 지연과 반복 사용 비용을 줄일 가능성이 있습니다.

운영 환경에서의 한계

교사 모델이 생성한 예제의 범위는 컴파일된 함수가 접하는 학습 범위에 직접적인 영향을 줍니다. 희귀한 입력, 경계 사례, 분포 밖 데이터가 예제에 포함되지 않으면 해당 상황에서 성능이 약해질 수 있습니다. 실제 배포에서는 합성 예제 외부의 독립 테스트와 회귀 평가가 필요합니다.

자연어 사양이 변경됐을 때 재컴파일된 함수가 새 요구사항을 정확히 반영하는지도 확인해야 합니다. 이 연구의 핵심 의미는 작은 모델이 대형 모델을 모든 상황에서 대체한다는 데 있지 않습니다. 대신 자연어 사양을 바탕으로 필요할 때 작은 로컬 도구를 만들고, 초기 컴파일 비용을 지불한 뒤 반복 사용성과 배포 편의성을 얻는 새로운 개발 패턴을 제안합니다.

출처: Hugging Face Daily Papers

댓글

로그인 상태 확인 중…

댓글 불러오는 중…

관련 게시물