← 최신 논문
🤖 machine learning

Mitigating Errors in LLM-Generated Web API Invocations via Retrieval-Augmented Generation and Constrained Decoding

본 논문은 LLM이 생성하는 웹 API 호출의 정확성을 개선하기 위한 상호 보완적인 전략으로서 검색 증강 생성(RAG)과 제약 조건 디코딩(CD)을 제안하고 평가하며, RAG는 전체 호출 생성 시 환각 현상을 효과적으로 줄이는 반면, CD는 잘못된 파라미터 발생을 더 신뢰성 있게 방지하고 다양한 시나리오에 걸쳐 전반적인 정확도를 크게 향상시킨다는 점을 밝혀냈다.

원저자: Daniel Maninger, Leon Chemnitz, Jannis Brugger, Tushar Lamba, Amir Molzam Sharifloo, Mira Mezini

게시일 2026-07-08
📖 4 분 읽기☕ 가벼운 읽기

원저자: Daniel Maninger, Leon Chemnitz, Jannis Brugger, Tushar Lamba, Amir Molzam Sharifloo, Mira Mezini

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

당신이 집을 지으려고 한다고 상상해 보세요. 하지만 숙련된 건축가를 고용하는 대신, 매우 똑똑하고 박학다식하지만 약간 정신없는 조수(거대 언어 모델, 즉 LLM)에게 설계도를 써달라고 부탁했습니다.

문제는 이 집을 짓기 위한 "규칙"들이 조수의 머릿속에 들어있지 않다는 점입니다. 그 규칙들은 **OpenAPI 명세서(OpenAPI Specification)**라는 거대하고 복잡한 매뉴얼에 적혀 있습니다(이 문서는 어떤 문을 열어야 하는지, 어떤 열쇠를 사용해야 하는지, 벽돌의 크기는 얼마로 주문해야 하는지를 정확히 알려주는 문서입니다).

만약 당신이 조수에게 단순히 "문 하나를 만들어줘"라고 요청한다면, 조수는 잘못된 크기의 문을 선택하거나, 존재하지 않는 열쇠를 사용하거나, 매뉴얼에 없는 문을 스스로 만들어낼 수도 있습니다. 이것을 **환각(Hallucination)**이라고 부릅니다.

이 논문은 조수가 규칙을 마음대로 지어내지 않고 매뉴얼을 완벽하게 따를 수 있도록 돕는 두 가지 구체적인 도구를 제공하는 것에 관한 내용입니다.

문제점: "추측 게임"

연구진은 AI 모델에게 웹 서비스(예: 슬랙 메시지 보내기 또는 구글 캘린더 확인하기)에 연결하는 코드를 작성하도록 요청했을 때, AI가 끊임없이 실수를 한다는 것을 발견했습니다.

  • AI는 잘못된 "문"(엔드포인트)을 선택했습니다.
  • 존재하지 않는 열쇠를 사용하려고 시andu했습니다.
  • 매뉴얼에 없는 기능을 스스로 만들어냈습니다.

해결책: 두 가지 새로운 도구

연구진은 실제 코딩 작업 데이터셋을 사용하여 이 문제를 해결하는 두 가지 서로 다른 방법을 테스트했습니다.

도구 1: "컨닝 페이퍼" (검색 증강 생성 - Retrieval-Augmented Generation, RAG)

비유: 당신이 시험을 보고 있는데, 교과서의 특정 페이지를 시험실에 가지고 들어갈 수 있다고 상상해 보세요. AI가 답을 쓰기 전에, 로봇 사서(Retriever)가 방대한 매뉴얼에서 당신이 필요한 "문"에 관한 정확한 페이지를 찾아 AI에게 건네줍니다.

  • 작동 방식: 연구진은 관련 있는 API 매뉴얼 부분을 가져와서 AI의 프롬프트에 붙여넣는 시스템을 구축했습니다.
  • 결과: 결과는 엇갈렸습니다.
    • 좋은 점: AI가 어떤 문을 골라야 할지 모를 때, 컨닝 페이퍼는 올바른 문을 찾도록 도와주었습니다. 이는 AI가 가짜 문을 만들어내는 것을 막아주었습니다.
    • 나쁜 점: AI가 이미 어떤 문을 골라야 할지 이미 알고 있는 경우에도, 컨닝 페이퍼는 AI를 혼란스럽게 만들었습니다. AI는 컨닝 페이퍼에 있는 20개의 가능한 열쇠 목록을 보고 "이것들을 다 사용해야겠어!"라고 생각했습니다. 이로 인해 코드가 지저분해지고 부정확해졌습니다.
    • 판결: 올바른 경로를 찾는 데는 도움이 되지만, AI가 필요하지 않은 옵션까지 과하게 사용하게 만드는 경향이 있습니다.

도구 2: "철로" (제약 조건 디코딩 - Constrained Decoding, CD)

비유: AI가 기차라고 상상해 보세요. 보통 기차는 지도 위의 어디든 갈 수 있고, 심지어 선로를 벗어나 늪지대로 빠질 수도 있습니다(환각). **제약 조건 디코딩(Constrained Decoding)**은 오직 유효한 목적지로만 향하는 강철 철로를 까는 것과 같습니다. 기차는 물리적으로 선로를 벗어날 수 없습니다.

  • 작동 방식: 연구진은 매뉴얼을 엄격한 규칙 세트(마치 미로처럼)로 변환했습니다. AI가 코드의 다음 단어를 입력하려고 할 때마다 시스템은 다음과 같이 확인합니다: "이 단어가 규칙에 의해 허용되는가?" 만-약 AI가 가짜 문이나 잘못된 열쇠를 입력하려고 하면, 시스템은 이를 차단하고 AI가 반드시 유효한 옵션을 선택하도록 강제합니다.
  • 결과: 이것이 확실한 승자였습니다.
    • 환각 제로: AI는 단 하나의 가짜 URL, 메서드, 혹은 인자(argument)도 만들어낼 수 없었습니다. 규칙을 어기는 것은 수학적으로 불가능했습니다.
    • 더 높은 정확도: 스스로 무언가를 만들어낼 수 없었기 때문에, AI가 작성한 코드는 훨씬 더 정확할 가능성이 높았습니다.
    • 판결: 이것이 가장 신뢰할 수 있는 도구입니다. AI가 매뉴얼에 순종하도록 강제합니다.

조합: "컨닝 페이퍼" + "철로"

연구진은 두 도구를 동시에 사용하는 것도 시도했습니다.

  • 결 결과: 일부 모델에서는 가장 높은 점수를 기록하며 매우 잘 작동했습니다. 하지만 일관성이 없었습니다. 때때로 "컨닝 페이퍼"가 AI로 하여금 너무 많은 옵션을 사용하게 만들었고, 비록 "철로"가 AI의 불법적인 움직임은 막아주었지만, 여부전히 불필요한 움직임을 하게 만들었습니다.
  • 판결: 강력하긴 하지만, "철로"만 사용하는 것이 더 안전하고 일관적입니다.

결론

이 논문은 AI가 코드를 작성하는 데는 뛰어나지만, 스스로 복잡한 외부 규칙집을 따르는 데는 서투르다는 결론을 내립니다.

  • **RAG (컨닝 페이퍼)**는 AI에게 참고서를 주는 것과 같습니다. 도움이 되지만, AI가 너무 많은 정보에 의해 주의가 분산될 수 있습니다.
  • **CD (철로)**는 AI 주변에 유효한 움직임만을 허용하는 우리를 만드는 것과 같습니다. 이는 AI가 규칙을 어기는 것을 막는 가장 효과적인 방법입니다.

연구진은 만약 당신이 웹 서비스에 연결하는 코드를 오류 없이 작성하는 AI를 원한다면, 단순히 AI의 기억력에 의존해서는 안 된다고 말합니다. 당신은 적절한 매뉴얼을 주거나(RAG), 더 나아가 규칙을 엄격하게 따르도록 강제해야(CD) 합니다. "철로" 방식이 코드가 실제로 제대로 작동하도록 보장하는 가장 신뢰할 수 있는 방법입니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →