AI 프로덕트 UI, 채팅 인터페이스가 끝인가요?
*해외 AI 제품 빌더의 최신 논의를 빠르게 전달하기 위해 AI와 함께 제작한 콘텐츠입니다. 유튜브 ‘MLOps.community’에 공개된 <채팅을 넘어서: 생성형 인터페이스의 미래>를 편집했으며, 이는 노션의 리서치 엔지니어 라이너스 리(Linus Lee)가 LLMs in production 컨퍼런스에서 발표한 내용입니다.
AI 프로덕트 UI, 채팅 인터페이스가 끝인가요?
AI 모델의 능력이 급속도로 발전하는 가운데, 우리가 이러한 모델과 상호작용하는 방식은 여전히 기본적인 채팅 형태에 머물러 있습니다. 노션(Notion)의 리서치 엔지니어 라이너스 리(Linus Lee)는 최근 발표에서 "초지능을 개발하고도 단순히 텍스트를 주고받는 방식으로 상호작용할 것인가?"라는 도발적인 질문을 던지며, 채팅 인터페이스를 넘어선 새로운 생성형 인터페이스의 가능성을 제시했습니다.
그의 대답은 명확합니다. 지금의 챗 기반 모델을 진화시켜야 한다는 것입니다. AI의 언어적 유연성을 유지하면서도, 사용자가 더 직관적으로 다가갈 수 있는 '새로운 생성적 인터페이스'를 만들어야 한다는 것이죠.
대화를 이루는 네 가지 요소
채팅은 여전히 유용합니다. 하지만 단순한 텍스트 주고받기만으로는 언어 모델의 잠재력을 온전히 활용할 수 없습니다. 우리가 원하는 것은, 언어 모델의 강력한 능력을 살리면서도 사용자에게 훨씬 직관적이고 풍부한 경험을 제공하는 인터페이스입니다. 라이너는 이를 위해 "대화"라는 행위를 구성하는 기본 요소부터 다시 바라보자고 제안합니다.
대화를 이루는 요소는 네 가지입니다. 공유된 맥락(context), 사용자의 의도(intent), 그 의도를 해석하는 내부 사고 과정(thinking), 그리고 행동(action)입니다.
- 맥락(Context): 대화가 이루어지는 환경과 배경
- 의도(Intent): 사용자가 표현하고자 하는 목적
- 생각(Rollout/Chain of Thought): 모델이 사용자의 의도를 처리하는 내부 과정
- 행동(Action): 최종적인 응답이나 작업 수행
그런데 현재의 챗봇 인터페이스는 주로 의도(프롬프트)와 행동(출력)에만 초점을 맞추고 있으며, 맥락과 내부 처리 과정은 상대적으로 간과되고 있다고 그는 주장합니다.
왜 '맥락'이 그렇게 중요할까요?
맥락이 왜 중요할까요? 대화는 단어만으로 이뤄지지 않습니다. 사무실 옆자리에서 동료와 이야기할 때, 마트 계산대 앞에서 점원과 대화할 때, 친구와 길거리에서 얘기할 때 등, 같은 문장으로 말하더라도 상황에 따라 전혀 다른 의미를 가질 수 있죠. 대화의 효율성과 정확성은 바로 이 '공유된 상황'에 달려 있습니다.
챗GPT와 같은 챗봇은 이런 공유 맥락이 거의 없습니다. 그래서 사용자는 매번 문장 하나하나에 모든 배경 정보를 담아야 하죠. 이 부담을 줄이려면, 언어 모델이 사용자와 같은 공간을 공유하고, 사용자가 무엇을 보고 있고, 무엇을 하려는지를 자연스럽게 이해해야 합니다.
가리키기와 선택 메커니즘
이 문제를 이해하는 데 좋은 사례가 있습니다. GitHub Copilot Chat입니다. VSCode 같은 개발 환경 안에서 Copilot은 사용자가 어떤 파일을 열어두었는지, 커서가 어디에 있는지, 터미널에서 무슨 에러가 났는지를 모두 볼 수 있죠. 이 풍부한 맥락 덕분에 "이 함수 테스트코드 짜줘"라는 짧은 요청만으로도 정확한 결과를 얻을 수 있습니다.

하지만 모든 앱이 이런 식으로 작동하는 것은 아닙니다. Microsoft의 Excel용 Copilot을 예로 들면, 사용자는 스프레드시트의 특정 열을 언급할 때 "지난달 판매 데이터 열"과 같이 직접 구체적으로 설명해야 합니다. 대신 Lee는 실제 세계에서처럼 직접 가리키고 "이 열은 어떤가요?"라고 물을 수 있는 인터페이스를 제안합니다.
Lee는 이러한 '가리키기와 선택(point and select)' 메커니즘을 통해 사용자가 UI의 요소(명사)를 선택하고 원하는 작업(동사)을 수행하는 방식을 강조했습니다. 이는 웹의 기본 상호작용 방식과 유사하지만, 현재 챗 인터페이스에서는 이러한 기능이 부족합니다.
가리키기와 선택을 구현하는 법
현실 세계에서는 사람들이 손짓이나 눈짓으로 대상을 가리켜요. 디지털 공간에서도, 사용자가 클릭하거나 드래그해서 대상을 지정할 수 있다면 훨씬 자연스러워질 거예요. 챗봇이 사용자의 화면과 상호작용할 수 있다면, 더 이상 프롬프트에 세세하게 설명하지 않아도 돼죠. "이 열을 요약해줘", "이 부분을 수정해줘"처럼 자연스러운 요청이 가능해집니다.
이를 위해 라이너는 '가리키기(pointing)'와 '선택(selection)'의 힘을 강조합니다. 사용자가 명확히 대상을 지목하고, 거기에 대해 원하는 작업을 지정할 수 있어야 한다는 것이죠. 엑셀에서 셀을 선택하고 "이 셀의 평균을 구해줘"라고 요청하거나, 글쓰기 앱에서 특정 문단을 선택하고 "이 부분 요약해줘"라고 하는 식이지요. 이러한 ‘가리키기’와 ‘선택’의 방식으로 세 가지를 제안합니다.

이름으로 호출(call by name)
물론, 모델이 화면에 보이는 모든 정보를 항상 알고 있는 것은 아닙니다. 모델이 어떤 객체를 봐야 할지 모를 때는 '이름으로 호출(call by name)'하는 방식을 활용할 수 있죠. 디자인 앱에서 특정 아트보드에 "타임라인 패널"이라는 이름을 붙여두고, "타임라인 패널 정리해줘"라고 요청하는 식입니다. 이름을 통해 객체를 명시적으로 지정하면, 모델이 더욱 정확하게 사용자의 의도를 이해할 수 있습니다. Figma나 Sketch와 같은 디자인 도구에서 아트보드나 패널의 이름을 지정하고, 챗 인터페이스에서 "@이름"과 같이 호출하여 특정 대상에 대한 명령을 내릴 수 있습니다.
리터럴 멘셔닝(literal mentioning)
한 발 더 나아가, 라이너는 '드래그 앤 드롭을 통한 프롬프트 작성'이라는 미래적 인터페이스도 상상합니다. 프롬프트 창에 문단, 이미지, 연락처 아이콘 같은 오브젝트를 직접 드래그해 넣어 대상을 지정하는 것이지요. "이 사람에게 전화 걸어줘", "이 문단 요약해줘" 같은 요청을 훨씬 직관적으로 만들 수 있습니다. Sikuli 프로젝트의 사례처럼, 텍스트, 이미지, 연락처 등의 객체를 프롬프트 상자에 직접 드래그 앤 드롭하여 언어 모델이 이를 맥락 정보로 활용하도록 하는 것이죠.
컨텍스트 액션(context actions)
또 하나 주목할 점은 '컨텍스트 메뉴(우클릭 메뉴)'의 진화입니다. 현재도 Notion이나 Figma 같은 앱에서는 객체를 선택하고 오른쪽 클릭하면 다양한 옵션이 뜨지요. Linus는 이 컨텍스트 메뉴를 언어 모델로 구동하면 훨씬 강력해질 것이라고 말합니다. 사용자가 어떤 객체를 선택했는지, 어떤 작업을 주로 해왔는지를 모델이 학습해, 가장 적합한 옵션을 추천해주는 방식입니다. AI 프로덕트에서도 ‘요약하기’ ‘새 파일로 분리하기’ ‘포맷 수정하기’ 등 예상 가능한 행동 옵션을 추천할 수 있다는 것이죠. 또 사용자의 작업 히스토리나 파일 메타데이터를 고려해, AI가 "이런 작업을 할까요?" 하고 '다음 액션'을 제안하는 방식으로 진화할 수 있습니다.

직관성과 유연성, 모두 잡기
Lee는 UI 설계의 궁극적인 목표는 직관성과 유연성 사이의 균형을 찾는 것이라고 설명합니다. 채팅 인터페이스는 모델의 모든 기능에 접근할 수 있는 유연성을 제공하지만, 다음과 같은 제약을 추가함으로써 직관성을 높일 수 있습니다.
- 사용자의 관심사 파악: 현재 사용자가 보고 있는 것에 기반한 추천
- 행동 예측: 맥락에 적합한 가능한 작업 제안
- 구조화된 지시: 사용자 입력에 가이드라인 제공
이러한 접근은 ChatGPT와 같은 앱에서 흔히 나타나는 "백지 증후군"(사용자가 무엇을 입력해야 할지 모르는 상태)을 완화하는 데 도움이 됩니다.
챗봇 인터페이스는 유연성이 뛰어납니다. 무엇이든 요청할 수 있죠. 하지만 자유도가 너무 높으면 오히려 사용자가 막막함을 느끼게 됩니다. 반대로 그래픽 기반 인터페이스는 직관적이지만, 표현할 수 있는 요청이 제한될 수 있습니다. 언어 모델을 기반으로 한 인터페이스는 이 두 가지를 조화시켜야 합니다.

빠른 피드백루프를 만드는 ‘인터랙티브 컴포넌트’
나아가 라이너는 인터페이스 디자인에서 또 하나 중요한 목표가 ‘피드백 루프를 닫는 것’이라고 강조했습니다. 사용자가 무언가를 시도하고, 결과를 보고, 수정하는 과정을 빠르게 반복할 수 있어야 한다는 것입니다. 예를 들어, 이미지 생성 앱에서는 하나의 이미지만 보여주기보다 여러 버전을 제공해 선택하게 하고, 선택한 버전을 바탕으로 다시 변형할 수 있도록 하는 방식이지요. 그는 “사람들은 무언가를 새로 만드는 것보다 고르는 것을 더 좋아한다는 점을 활용해야 한다”고 말합니다.
이는 앞서 언급한, 사용자가 선택할 수 있도록 다양한 옵션과 행동 예측, 제안을 준비해두는 것과 연결되는 것입니다. 사용자에게 여러 옵션을 제시하고, “이게 좋아, 이건 싫어” 이런 식으로 고를 수 있게 한다면 훨씬 더 직관적이고 몰입도 높은 경험을 제공할 수 있습니다. 그렇게 해야 사용자가 원하는 방향으로 자연스럽게 이어갈 수 있다는 것이죠.
그는 피드백 루프를 빠르게 닫는 것과 관련해, 스스로 ‘인터랙티브 컴포넌트(interactive components)라고 부르는 인터페이스 프로토타입을 소개했습니다. 여기서 말한 인터랙티브 컴포넌트는 챗 기반 인터페이스에서 질문을 했을 때, 단순히 긴 답변 문단을 받는 대신, 다양한 버튼 옵션 등을 제공하는 것입니다. 예를 들어 "뉴욕의 날씨는 어때?"라고 물었을 때, 모델이 "내일 기온은 85도입니다"라고 텍스트로 답하는 것이 아니라, 작은 날씨 위젯을 함께 제공하는 방식이죠. 이 위젯이는 시간대를 조절할 수 있는 슬라이더나 강수량 같은 다른 정보를 볼 수 있는 버튼도 있을 수 있습니다.
“이렇게 모델이 상황에 맞게 작은 인터랙티브 컴포넌트, 작은 위젯들을 즉석에서 합성해 제공할 수 있다면, 사용자는 추가로 다시 질문하거나 프롬프트를 입력하지 않고도 다양한 옵션과 정보를 직접 탐색할 수 있게 됩니다. 즉, 피드백 루프를 훨씬 빠르고 자연스럽게 닫을 수 있는 것이죠.”
챗봇을 넘어선 인터페이스
라이너는 다음과 같은 방향을 제시합니다.
- 에이전트가 사용자의 작업 공간에 함께 존재해야 합니다.
- 프롬프트에 모든 정보를 집어넣지 않아도 풍부한 맥락을 공유할 수 있어야 합니다.
- 추천된 '행복한 경로(happy path)'를 제공하고, 고급 사용자는 자유롭게 벗어날 수 있어야 합니다.
- 빠른 피드백 루프를 통해 사용자가 쉽게 수정하고 개선할 수 있어야 합니다.
초지능과 소통하는 방법은 단순한 채팅이 아닙니다. 우리는 지금, 그 다음 인터페이스를 상상하고 만들어야 할 시점에 있습니다.
<원문>
Generative Interfaces Beyond Chat // Linus Lee // LLMs in Production Conference