Cerebra: Aligning Implicit Knowledge in Interactive SQL Authoring
Cerebra: Aligning Implicit Knowledge in Interactive SQL Authoring
배경 및 소개
최근 LLM 기반 NL-to-SQL 도구가 SQL 작성의 진입장벽을 크게 낮추고 있습니다. 그런데 실제 현장에서는 자연어만으로는 충분하지 않은 경우가 많습니다. 사용자들은 데이터셋의 schema, 조직 내 domain convention, 특정 업무에서만 통하는 계산 방식 같은 암묵적 지식을 이미 알고 있다고 전제하는데요. 문제는 이 지식이 프롬프트에 명시되지 않으면 모델이 쉽게 놓친다는 점입니다. 이 논문은 바로 그 간극, 즉 사람과 LLM 사이의 implicit knowledge alignment 문제를 중심에 두고 있습니다. 단순히 SQL 문장을 잘 생성하는 것을 넘어서, 사용자가 의도한 배경 지식을 어떻게 전달하고 또 어떻게 검토할 수 있을지에 대한 HCI 관점의 문제 제기라고 볼 수 있습니다.
주요 내용
연구진은 먼저 10명의 data practitioner를 대상으로 preliminary study를 진행했는데요. 인터뷰 결과 SQL authoring은 대체로 prompt formulation, code review, code refinement의 세 단계로 흘러갔습니다. 흥미로운 점은 참가자 전원이 자연어 요청만 던지지 않고, schema나 business background 같은 contextual information을 함께 제공했다는 것입니다. 이는 자연어 질의가 생각보다 훨씬 많은 전제를 필요로 한다는 뜻인데요. 특히 절반이 넘는 참가자들이 과거에 작성한 SQL script를 프롬프트에 재사용했는데, 이미 검증된 script 안에 domain logic과 계산 패턴이 들어 있어 암묵적 지식을 함께 이식할 수 있기 때문입니다. 즉, SQL은 단순한 코드가 아니라 업무 관행과 해석 규칙이 압축된 지식 저장소처럼 기능하고 있다고 볼 수 있습니다.
이 연구가 문제 삼는 핵심은 인간에서 LLM으로의 지식 전달과, 반대로 LLM이 생성한 결과를 사람이 이해하는 과정에서 모두 마찰이 생긴다는 점입니다. 사람들은 “1은 offline sales, 2는 online sales” 같은 값의 의미, table 관계, alias naming 규칙, fuzzy match를 피하는 filtering 방식, month-over-month growth 같은 계산 규칙을 암묵적으로 알고 있었는데요. 하지만 이런 내용을 매번 길게 풀어 쓰는 것은 너무 번거롭고, 길어진 프롬프트는 오히려 오류를 낳기 쉽습니다. 그래서 사용자는 자연어로 최대한 간단히 말하고 싶어 하지만, 그러면 LLM이 배경 지식을 놓치게 되는 딜레마가 생깁니다. 반대로 코드 review 단계에서는 생성된 SQL이 왜 그런 구조가 되었는지, 어떤 전제를 깔고 있는지 사용자가 파악하기 어려웠습니다. 이는 단순한 syntax 문제가 아니라 semantic gap의 문제라는 점에서 중요합니다.
이런 배경에서 제안된 것이 Cerebra입니다. Cerebra는 과거 SQL script에서 implicit knowledge를 추출해 repository처럼 축적하고, 현재 요청과 관련된 지식을 다시 찾아내는 interactive NL-to-SQL tool인데요. 여기서 연구진은 implicit knowledge를 calculation, condition, relation, dimension, output의 다섯 범주로 나누어 모델링했습니다. 그리고 이를 tree view인 Knowledge View로 시각화해서, 사용자가 LLM이 어떤 지식을 근거로 쿼리를 만들었는지 직접 확인하고 수정할 수 있게 했습니다. 단순히 정답 SQL을 보여주는 방식이 아니라, 지식이 어떻게 적용됐는지까지 드러낸다는 점이 핵심입니다. 이는 사용자가 결과를 신뢰할 수 있도록 돕는 동시에, 잘못된 전제를 빠르게 고쳐나가게 해준다는 점에서 의미가 있습니다.
결론 및 시사점
평가에서는 16명의 참가자가 Cerebra를 사용해 task를 수행했는데요. baseline tool보다 더 짧은 시간 안에 SQL authoring을 끝냈고, 주관적 피드백에서도 implicit knowledge를 전달하고 이해하는 데 도움이 된다는 반응이 확인되었습니다. 개인적으로 이 결과는 매우 흥미롭습니다. 지금까지 NL-to-SQL 연구가 주로 semantic parsing 정확도에 집중했다면, 이 논문은 실제 사용성을 좌우하는 요소가 ‘모델이 얼마나 똑똑한가’보다 ‘사람과 모델이 같은 지식을 공유하고 있는가’라는 점을 보여주기 때문입니다. 다만 한계도 분명한데요. historical script가 충분히 쌓여 있어야 효과가 크고, 다른 프로젝트나 도메인으로 옮겨갈 때 implicit knowledge의 재사용 가능성은 다시 검증이 필요합니다. 그럼에도 이 연구는 LLM-assisted coding에서 transparency와 knowledge alignment가 왜 중요한지 잘 짚어주며, HCI 관점에서 interactive explanation과 iterative refinement의 방향성을 분명하게 제시한다고 볼 수 있습니다.
💡 HCI 실무자라면 SQL assistant를 설계할 때 정답 생성만 보지 말고, 과거 script와 domain convention을 어떻게 재사용하고 시각화할지까지 함께 고려할 필요가 있습니다. 연구자에게는 implicit knowledge를 추출·분류·시각화하는 구조가 NL-driven authoring 전반으로 확장될 수 있는지 검토해볼 좋은 출발점이 됩니다.
뉴스레터 구독
매주 금요일, 주간 HCI 하이라이트를 이메일로 받아보세요.