Post

02. 파일명 검색의 한계를 의미 기반 검색으로 바꾸기

02. 파일명 검색의 한계를 의미 기반 검색으로 바꾸기

“강아지가 뛰어노는 사진”을 찾고 싶은데 파일명이 20230322_084848.jpg라면 파일명 검색은 도움이 되지 않습니다. PDF 안의 그래프를 찾고 싶은데 해당 단어가 본문 텍스트에 없다면 일반 텍스트 검색도 놓칠 수 있습니다.

LocalLens의 출발점은 이 지점이었습니다. 사용자가 기억하는 것은 파일명이 아니라 대략적인 장면, 주제, 의미인 경우가 많습니다.

기존 검색 방식의 문제

로컬 파일 검색에서 흔한 입력은 파일명, 확장자, 일부 키워드입니다. 이 방식은 빠르고 단순하지만 검색 대상이 비정형 데이터로 넓어지면 한계가 커집니다.

검색 대상기존 방식의 문제
이미지파일명에 내용이 없으면 검색할 수 없음
텍스트 문서같은 의미라도 단어가 다르면 놓칠 수 있음
PDF텍스트, 이미지, 표, 그래프가 섞여 있어 단일 방식으로 처리하기 어려움
로컬 폴더파일이 계속 추가/수정/삭제되어 인덱스 동기화가 필요함

LocalLens는 파일을 “이름”이 아니라 “검색 가능한 의미 단위”로 바꾸는 구조를 택했습니다. 검색어도 단순 문자열이 아니라 query embedding이 되고, 파일도 타입별 embedding으로 변환됩니다.

flowchart LR
    Q[자연어 질의] --> QE[Query Embedding]
    F1[Text File] --> TE[Text Embedding]
    F2[Image File] --> IE[Image Embedding]
    F3[PDF File] --> PE[PDF Embedding]
    QE --> C[Similarity Search]
    TE --> C
    IE --> C
    PE --> C
    C --> R[Top-K Results]

검색 화면과 사용 흐름

폴더와 파일 형식을 선택하고 자연어 검색어를 입력한 뒤 결과 파일을 여는 흐름입니다. 아래 시간은 시연 영상의 위치이며 처리시간 측정값이 아닙니다.

검색할 폴더 선택

먼저 파일 경로 버튼으로 검색 대상 폴더를 선택합니다. 검색 범위는 사용자가 지정한 로컬 폴더이며, 왼쪽에서 이미지·텍스트·문서 형식을 선택할 수 있습니다.

검색 대상 폴더 선택 창 07:43 · 검색할 로컬 폴더 선택

텍스트 검색과 파일 열기

텍스트 파일을 대상으로 ‘딥러닝과 관련된 기술’을 검색했습니다. 결과에는 파일 경로가 목록으로 표시되며, 파일을 열어 검색어와 관련된 본문을 확인하는 흐름으로 이어집니다. 이 장면에서는 검색 결과 중 RAG를 설명하는 텍스트 파일을 열었습니다.

자연어 텍스트 검색 결과에서 파일을 연 화면 08:03 · 텍스트 검색 결과와 선택한 파일의 본문

이미지 검색 결과

이미지 검색에서는 ‘강아지’를 입력하고 Top K를 5로 설정했습니다. 결과는 이미지 파일의 경로 목록으로 표시됩니다. 아래 장면은 이미지 검색 결과를 확인한 뒤 다음 검색을 위해 문서 형식을 선택한 시점입니다. 왼쪽의 선택 상태와 결과 목록의 유형이 다른 이유도 이 전환 과정에 있습니다.

강아지 검색 결과로 표시된 이미지 파일 경로 목록 08:43 · 이미지 검색 결과 확인 후 문서 검색으로 전환

PDF 검색 결과

문서 형식에서는 PDF를 대상으로 ‘취업’을 검색했습니다. 결과 영역에 PDF 파일 경로 5개가 표시됩니다. 텍스트와 이미지 검색에서 사용한 입력·결과 확인 동선을 PDF 검색에도 동일하게 적용했습니다.

취업 검색어에 대한 PDF 파일 결과 목록 09:03 · PDF 검색 결과

시연은 파일 형식별 검색과 결과 확인 동선을 보여주는 기록입니다. 화면에 보이는 검색 완료 표시는 해당 시연의 상태이며, 검색 정확도나 처리시간을 측정한 결과와는 구분합니다.

검색 결과 화면

파일 검색 결과 화면

검색 결과 확인 화면

제품 방향

LocalLens는 범용 클라우드 검색 서비스를 대체하려는 프로젝트가 아니다. 목표는 로컬 폴더 안의 파일을 사용자가 기억하는 의미로 찾는 것이다.

그래서 제품 방향도 명확하다.

방향설명
local-first원본 파일을 로컬 폴더 기준으로 다룸
semantic search파일명보다 내용과 의미를 기준으로 검색
multimodal텍스트, 이미지, PDF를 같은 검색 흐름에 연결
desktop UX결과 파일을 사용자가 바로 열 수 있게 함

이 문제 정의가 뒤의 아키텍처를 결정했다. 파일은 계속 바뀌므로 sync가 필요했고, 파일 타입이 다르므로 encoder abstraction이 필요했고, PDF에는 시각 요소가 있으므로 VLM caption이 필요했다.

다음 글

다음 글에서는 이 문제 정의가 실제 검색 파이프라인으로 어떻게 연결되는지 정리한다.

03. LocalLens 검색 파이프라인 구조

This post is licensed under CC BY 4.0 by the author.