로컬 모델로 사내 코드베이스 작업 시 발생하는 내부 API 환각 현상을 줄일 방법이 있을까?
Is there a way to reduce hallucinated internal API calls when running local models against a private codebase?
핵심 요약
로컬 모델이 사내 API 정보를 학습하지 않아 발생하는 환각 문제를 해결할 효율적인 아키텍처를 찾는 질문.
- 내부 API 환각 — 모델이 학습 데이터의 일반적인 패턴을 기반으로 존재하지 않는 사내 API를 생성함.
- 컨텍스트 한계 — OpenAPI 명세 전체를 컨텍스트에 넣으면 프로젝트 규모가 커질 때 검색 품질이 저하됨.
- 구조적 해결책 — 단순히 컨텍스트를 늘리는 것보다 제약 조건이 있는 스키마나 별도의 도구 선택 단계를 도입하는 것이 효과적임.
- 엔터프라이즈 솔루션 — Tabnine과 같은 도구는 내부 API 문서를 조직 컨텍스트 계층으로 통합하여 환각을 줄임.
사내 코드베이스에서 코드 생성을 위해 양자화된 로컬 모델을 돌리고 있음. 표준 패턴에 대한 생성 품질은 괜찮음. 계속 부딪히는 구체적인 문제는 모델이 우리 인프라에 존재하지 않는 내부 API나 서비스를 호출하는 코드를 자신 있게 생성한다는 점임.
일반적인 환각 문제는 아님. 모델은 자기가 아는 정보(우리 사내 API에 대해서는 전혀 모름)를 바탕으로 해야 할 일을 정확히 하고 있는 것임. 학습 데이터의 패턴을 바탕으로 인터넷 규모의 회사라면 있을 법한 엔드포인트를 추론해내는 것인데, 실제 우리 API는 완전히 다르게 생겼음.
명확한 해결책은 생성 전에 모델에게 실제 API 계약(contract)에 접근 권한을 주는 것임. 관련 OpenAPI 명세를 컨텍스트 윈도우에 넣어봤지만, 프로젝트 규모가 일정 수준을 넘어가면 컨텍스트가 너무 커져서 검색 품질이 떨어짐.
단순히 컨텍스트 윈도우를 늘리는 것 외에, 내부 API 호출 환각을 줄이기 위한 더 나은 아키텍처가 있을까?


