← back to archive
PI Lab

어디를 손볼지는 도메인이 정한다

멀티모달 RAG를 만들다 자꾸 회사 데이터로 돌아간 이야기

  • #PI Lab
  • #AI 엔지니어링
  • #멀티모달 RAG
  • #도메인

이 글은 PI Lab AI 과정을 들으며 정리한 노트입니다. 멀티모달 RAG 스프린트를 지나며 떠오른 생각을 남겨둡니다.

파이랩 — 만들면서 배우는 AI 엔지니어링
강의만 들어서는 AI 서비스를 만들 수 없습니다. 파이랩에서는 직접 만들고, 직접 배포합니다. 수료생 전원 현직 병행 완주 — 4주 집중 과정·강의·뉴스레터·이력서 피드백.
파이랩

지난 스프린트에서는 텍스트만 다루는 RAG 파이프라인을 만들었어요. 이번 스프린트는 멀티모달 RAG였습니다. 오디오를 전사하고, 영상에서 키프레임을 뽑고, 그 장면을 말로 설명하게 하고, 그렇게 나온 것들을 텍스트와 한데 묶어 검색에 쓰죠. 단계가 몇 개 더 붙은 셈이에요.

그런데 실습을 따라가는 내내, 제 생각은 자꾸 회사에서 쌓고 있는 데이터로 돌아갔어요. 저희는 영어 교육 회사라, 원어민 튜터와 학생의 1:1 화상 레슨을 전사해 트랜스크립트로 모아 둡니다. 지금은 그걸 정해진 템플릿에 맞춰 레슨 노트로 정리하는 데 쓰고요. 노트북의 단계를 하나씩 밟을 때마다, 이걸 우리 트랜스크립트에 대면 어떻게 될까가 먼저 떠올랐습니다.

개선은 레이어를 손보는 일이었다

두 스프린트를 지나고 보면, AI 엔지니어링에서 하는 일은 결국 파이프라인을 다루는 일이었습니다. 그리고 무언가를 개선한다는 건 거의 언제나 그 파이프라인의 한 레이어를 손보는 일이었고요. 청킹을 바꾸고, 검색 단계를 더하고, 안 쓰는 단계를 걷어내고.

기성 소프트웨어였다면 명세대로 한 번 짜고 나면 동작이 그 자리에 고정돼요. 같은 입력엔 같은 출력이고, 고칠 곳이 있다면 그건 잘못 짠 코드죠. AI 파이프라인은 그렇지 않았어요. 어느 레이어를 어떻게 손보면 결과가 나아지는지를 계속 시험하게 됩니다. 한 번 짓고 끝내는 일이 아니라, 짓고 나서 계속 손보는 일에 가까웠어요.

무엇이 더 나은지는 도메인이 정한다

문제는, 어느 레이어를 어느 방향으로 손봐야 나아지는가를 무엇으로 판단하느냐입니다. 그 판단의 근거는 결국 데이터에서 나와요. 그리고 데이터를 어떻게 다뤄야 할지는, 그 데이터가 속한 도메인이 정합니다.

청킹을 예로 들게요. 일반적인 RAG 교재들은 보통 토큰 수나 문장 단위로 문서를 자르라고 합니다. 일반적인 문서라면 그게 맞아요. 그런데 우리 트랜스크립트는 문서가 아니라 대화입니다. 튜터가 묻고 학생이 답하고, 말할 차례가 오갑니다. 여기서 의미의 한 덩어리는 문장이 아니라 한 사람이 말을 쥐고 있는 동안이에요. 그러니 이 트랜스크립트는 발화자가 바뀌는 지점에서 잘라야 합니다. 토큰 200개에서 기계적으로 끊으면 한 사람의 말이 두 청크로 갈리고 대화의 결이 망가져요.

이걸 알려준 건 RAG 기법이 아니라 이게 영어 레슨 대화라는 도메인 지식이었습니다. 같은 회사 데이터라도 종류가 다르면 자르는 자리도 달라져요. 트랜스크립트는 발화 턴에서, 레슨 노트는 주제 섹션에서. 매번 그 경계를 정해 주는 건 도메인이지 검색 알고리즘이 아니었습니다.

여기서 한 발 더 갈 수도 있겠다 싶었어요. 지금은 트랜스크립트만, 그러니까 텍스트만 모으지만, 레슨을 녹화한다면 영상에서 표정이나 제스처 같은 비언어 신호를 발화에 맞춰 붙여서, 같은 말이라도 어떤 태도로 했는지를 한 겹 더 얹을 수 있을 테니까요. 이번 스프린트가 마침 텍스트에 영상을 융합하는 일이었으니, 아주 낯선 상상도 아니었습니다.

남은 것

그렇게 보니 이번 스프린트에서 제게 남은 건 멀티모달 RAG를 만드는 법이 아니었어요. 새로운 데이터를 마주했을 때 던지는 첫 질문이 바뀐 거예요. 예전 같으면 무슨 모델을 쓸지부터 생각했을 텐데, 지금은 이 데이터로 무엇을 할 수 있고, 그러려면 어떻게 가공해서 어떤 레이어로 흘려보내야 하는지를 통째로 그리게 됩니다. 어디서 자를지는 그 그림의 한 칸일 뿐이고 칸마다 채워 넣을 답은 거의 늘 도메인에서 나오더라고요.

실습은 멀티모달 RAG를 가르쳤지만, 정작 손에 쥐고 나온 건 회사 데이터를 다시 보는 눈이었어요. 그래서 요즘은 트랜스크립트를 들여다보며 자꾸 같은 걸 묻습니다. 이걸로 무엇을 할 수 있고, 그러려면 어디를 어떻게 손봐야 할까.