저자:
(1) Kexun Zhang, UC Santa Barbara 및 균등 기여;
(2) Hongqiao Chen, Northwood 고등학교 및 균등 기여;
(3) 카네기멜론대학교 레이 리(Lei Li);
(4) 윌리엄 양 왕(UC Santa Barbara).
LLM(대형 언어 모델)은 외부 도구를 사용하여 복잡한 문제를 해결하는 데 유망한 기능을 보여주었습니다. 그러나 기존 접근 방식에는 추가 교육 없이는 새로운 도구로 일반화되지 않는 도구 데모에 대한 미세 조정 또는 상황에 맞는 도구 문서를 제공하여 도구 수를 제한하는 것이 포함됩니다. 두 접근 방식 모두 구문적으로 잘못된 도구 호출을 생성하는 경우가 많습니다. 본 논문에서는 도구 증강 LLM을 위한 유한 상태 기계 유도 디코딩 알고리즘인 TOOLDEC을 제안합니다. TOOLDEC는 유효한 도구 이름과 유형을 준수하는 인수를 확인하여 도구 강화 LLM에 대한 도구 관련 오류를 제거합니다. 또한 TOOLDEC을 사용하면 LLM이 미세 조정이나 상황에 따른 문서화 없이 이름에 포함된 정보만 사용하여 도구를 효과적으로 선택할 수 있습니다. 우리는 수학 함수, 지식 그래프 관계 및 복잡한 실제 RESTful API와 같은 도구와 관련된 다양한 작업에 대해 여러 가지 이전 방법과 TOOLDEC 강화 버전을 평가했습니다. 우리의 실험에 따르면 TOOLDEC은 구문 오류를 0으로 줄여 결과적으로 훨씬 더 나은 성능과 최대 2배의 속도 향상을 달성했습니다. 또한 TOOLDEC이 보이지 않는 도구에 대해 뛰어난 일반화 성능을 달성하여 기준보다 최대 8배 더 나은 성능을 발휘한다는 것을 보여줍니다 [1]
외부 도구(Mialon et al., 2023)를 사용하여 대규모 언어 모델(LLM)을 강화하면 복잡한 문제를 해결할 수 있습니다. 현재 LLM은 검색기(Shen et al., 2023; Gupta & Kembhavi, 2022; Schick et al., 2023), RESTful API(Qin et al., 2023; Song et al., 2023), 프로그램 해석기(Chen et al., 2023)를 활용할 수 있습니다. al., 2022; Gao et al., 2023) 및 기타 다양한 도구. 도구 강화 LLM의 성능은 도구를 사용할 시기, 사용할 도구, 도구 호출 방법 등 세 가지 주요 결정을 내리는 능력에 따라 달라집니다. 기존 접근 방식은 미세 조정 또는 상황별 학습을 통해 이러한 결정을 내리는 방법을 학습합니다.
그러나 이러한 접근 방식은 여전히 잘못된 도구 호출을 생성합니다. 예를 들어 상황 내 학습은 도구 목록에 없는 존재하지 않는 도구 이름을 쉽게 생성할 수 있습니다. 존재하지 않는 도구도 다음 토큰으로 그럴듯해 보일 수 있기 때문입니다(Song et al., 2023; Qin et al., 2023). . 미세 조정 모델은 일반적으로 올바른 이름으로 도구를 호출하지만 상황 내 학습과 마찬가지로 올바른 도구 기능에 잘못된 인수를 전달하는 경우가 많습니다(Hao et al., 2023). 더욱이, 이전 접근 방식은 보이지 않는 도구에 잘 일반화되지 않습니다. 미세 조정 접근 방식에는 추가 교육 데이터가 필요하며 새로운 도구를 채택하려면 추가 미세 조정이 필요합니다. 상황에 맞는 학습 접근 방식에는 프롬프트에 도구 문서가 필요합니다.
이러한 문제를 해결하기 위해 우리는 LLM이 도구를 올바르게 호출할 수 있도록 FSM(유한 상태 머신)이 안내하는 디코딩 알고리즘인 TOOLDEC을 제안합니다. 우리의 핵심 통찰력은 LLM 디코딩 중에 상태를 명시적으로 표현하는 것입니다. 각 상태는 도구 이름 및 도구 인수에 해당하는 유효한 토큰 세트와 연결됩니다. TOOLDEC은 디코딩이 진행됨에 따라 상태에서 상태로 전환됩니다. 각 디코딩 단계에서 TOOLDEC은 언어 모델의 전체 어휘에서 샘플링하지 않습니다. 대신 현재 상태에서 허용하는 토큰 하위 집합에서 샘플링합니다. TOOLDEC에 지침을 제공하는 FSM은 도구 문서와 API 서명으로 구성되어 기계가 도구 호출의 문법을 정확하게 표현합니다. 이런 방식으로 TOOLDEC은 항상
구문적으로 올바른 도구 호출. 그림 1은 TOOLDEC로 강화된 LLM이 정확한 인수("3.14" 및 "123")를 사용하여 올바른 함수 호출 곱셈을 생성할 수 있으므로 도구에서 올바른 결과를 반환한다는 것을 보여줍니다. TOOLDEC과 기타 도구 LLM을 비교하는 더 많은 예는 부록 A.3에서 확인할 수 있습니다.
또한 TOOLDEC은 이전에 전혀 등장하지 않았던 새로운 도구를 훨씬 더 효율적으로 일반화합니다. 새로운 도구의 미세 조정이나 상황에 맞는 설명이 필요한 이전 접근 방식과 달리 TOOLDEC은 도구의 API 서명(이름 및 인수 유형)에서 유한 상태 머신을 자동으로 구성하고 이를 기존 FSM에 추가합니다. 그러면 TOOLDEC은 미세 조정이나 상황에 따른 시연 없이 새로운 도구를 호출할 수 있습니다. 사전 훈련된 언어 모델은 메시지가 표시되면 도구 이름을 생성할 수 있지만 종종 인벤토리에 없는 그럴듯한 도구 이름을 환각적으로 나타냅니다. TOOLDEC은 그렇게 하지 않습니다. 그림 1에서는 곱셈과 곱셈 모두 시나리오에 그럴듯하지만 주어진 도구는 곱셈뿐입니다. TOOLDEC은 존재하는 도구만 호출하기 때문에 그럴듯하지만 존재하지 않는 도구를 환각하지 않고 도구 이름에 의존하여 올바른 도구를 찾을 수 있습니다.
이 논문의 기여는 다음과 같이 요약될 수 있습니다.
• 우리는 LLM이 도구를 올바르게 사용할 수 있도록 권한을 부여하는 유한 상태 디코딩 알고리즘인 TOOLDEC을 제안합니다. TOOLDEC은 두 가지 이점을 누리고 있습니다. 생성된 도구 호출은 구문적으로 정확하다는 것을 보장하고 보이지 않는 도구를 효율적으로 일반화합니다.
• 우리는 서로 다른 도메인의 4가지 다양한 데이터 세트에 대한 이전의 강력한 기준과 비교하여 TOOLDEC의 우수한 성능을 경험적으로 검증합니다. 우리의 광범위한 실험에 따르면 TOOLDEC은 모든 구문 오류와 환각적인 도구 이름을 제거하여 정확도가 향상되고 추론 시간이 최대 50% 단축되는 것으로 나타났습니다. 우리의 결과는 또한 TOOLDEC이 9개의 보이지 않는 도구를 사용하는 수학적 추론의 기준보다 8배 이상 우수하고, 204개의 보이지 않는 도구를 사용하는 지식 질문 답변보다 7배 더 우수하다는 것을 나타냅니다.
이 문서는 CC 4.0 DEED 라이선스에 따라 arxiv에서 볼 수 있습니다.
[1] 우리는 코드와 데이터를 https://github.com/chenhongqiao/tooldec에 공개합니다.