나는 의미를 이해하고 키워드만이 아닌 Search Engine을 만들었다

발행: (2026년 1월 14일 오후 07:47 GMT+9)
2 분 소요
원문: Dev.to

Source: Dev.to

I Built a Search Engine That Understands Meaning, Not Just Keywords의 표지 이미지

문제점

키워드 검색은 정확히 일치하는 경우에만 작동하며 의미를 파악하지 못합니다. 사용자가 문서에 사용된 어휘와 다른 용어로 검색하면 결과를 놓치고 좌절하게 됩니다.

해결책

문맥을 이해하는 Semantic Search API 를 제공하여 단순 키워드가 아니라 의미를 파악합니다.

텍스트 → 숫자

문서는 HuggingFace 임베딩을 사용해 768차원 벡터로 변환됩니다. 의미가 비슷할수록 벡터도 유사하게 나타납니다.

스마트 매칭

MongoDB Atlas Vector Search 가 벡터를 직접 비교해 단어 겹침에 의존하지 않는 의미 기반 유사도 매칭을 수행합니다.

순위 결과

메타데이터 부스팅(카테고리, 날짜, 저자)을 적용해 가장 관련성 높은 결과가 먼저 표시됩니다.

사용 기술

  • Node.js & Express
  • MongoDB Atlas Vector Search
  • HuggingFace Embeddings
  • MVC 아키텍처

실제 효과

  • “programming”을 검색하면 “JavaScript”, “Python”, “coding” 등도 함께 결과에 포함됩니다.
  • 여러 언어와 동의어를 지원합니다.
  • AI 스타일 검색 경험 및 Retrieval‑Augmented Generation (RAG) 시스템에 활용됩니다.

오픈 소스

프로젝트는 GitHub에 오픈소스로 공개되어 있습니다: [link]

Tags: AI, Machine Learning, Semantic Search, Software Engineering, Node.js, MongoDB, Tech Innovation

Back to Blog

관련 글

더 보기 »