[임베딩]

2026. 1. 17. 20:15·Archive(완료된 내용)/포트폴리오 강화

1. 키워드 검색 vs 의미 검색 (Semantic Search)

기존의 SQL LIKE %삼성전자% 방식은 글자가 정확히 일치해야만 찾을 수 있습니다. 하지만 사용자는 다양한 방식으로 질문하죠.

  • 사용자 질문: "반도체 대장주 전망 어때?"
  • 기존 방식: '반도체', '대장주'라는 글자가 포함된 글만 찾음 (글이 없으면 결과 0건)
  • 임베딩 방식: "반도체 대장주"가 "삼성전자"나 "SK하이닉스"와 의미적으로 가깝다는 것을 수치로 계산해서 찾아냄.

이처럼 '글자'가 아닌 '의미'로 데이터를 검색하기 위해 임베딩이 필수입니다.


2. 임베딩의 원리: 문장을 '좌표'로 변환

임베딩은 텍스트를 수천 개의 숫자로 이루어진 리스트(벡터)로 변환합니다. 이 숫자들은 다차원 공간상의 좌표가 됩니다.

  • 의미가 비슷한 문장: 공간상에서 서로 가까운 거리에 위치합니다.
  • 의미가 다른 문장: 공간상에서 아주 멀리 떨어집니다.

예를 들어, stock101에서 다음 세 문장을 임베딩하면:

  1. "오늘 삼성전자 풀매수했다"
  2. "삼전 드디어 샀음"
  3. "오늘 점심 뭐 먹지?"

1번과 2번은 좌표값이 매우 가깝게 계산되지만, 3번은 완전히 다른 곳에 찍힙니다. 백엔드 개발자는 이 **좌표 간의 거리(유사도)**를 계산해 "유사한 게시글"이나 "질문에 대한 답변 후보"를 찾아내는 로직을 짜게 됩니다.


3. 백엔드 개발자가 임베딩을 다루는 과정

RAG 시스템을 만들 때 여러분이 하게 될 실제 작업은 다음과 같습니다.

  1. 텍스트 추출: DB에서 게시글 텍스트를 가져옵니다.
  2. 임베딩 생성: OpenAI의 text-embedding-3 같은 모델 API에 텍스트를 보냅니다.
  3. 벡터 저장: API가 돌려준 숫자 리스트(벡터)를 **Vector DB(pgvector 등)**에 저장합니다.
  4. 유사도 검색: 사용자가 질문을 하면, 질문도 똑같이 숫자로 바꾼 뒤 DB에서 **"이 숫자랑 가장 가까운 좌표를 가진 글 가져와"**라고 쿼리를 날립니다.

4. 왜 지금 공부해야 할까?

과거에는 이런 수치 계산이 매우 복잡했지만, 이제는 백엔드 개발자가 직접 수학 공식을 짤 필요가 없습니다.

  • 임베딩 모델은 API로 호출하면 되고,
  • 유사도 계산은 Vector DB가 대신 해줍니다.

즉, 백엔드 개발자는 이 **데이터의 흐름(Pipeline)**만 설계할 줄 알면 바로 AI 기능을 구현할 수 있는 시대가 된 것입니다.

저작자표시 비영리 변경금지 (새창열림)

'Archive(완료된 내용) > 포트폴리오 강화' 카테고리의 다른 글

[stock101] LOCK을 누가 계속 잡는 문제.  (0) 2026.01.21
[stock101] KIS API연동 웹소켓 - 2일차  (1) 2026.01.20
[stock101] pdf파일 업로드 및 AI 셋팅 - 1일차  (0) 2026.01.19
[포폴강화] RAG  (0) 2026.01.16
[계획] 포폴 내용 강화  (0) 2026.01.13
'Archive(완료된 내용)/포트폴리오 강화' 카테고리의 다른 글
  • [stock101] KIS API연동 웹소켓 - 2일차
  • [stock101] pdf파일 업로드 및 AI 셋팅 - 1일차
  • [포폴강화] RAG
  • [계획] 포폴 내용 강화
오늘은치킨이닭
오늘은치킨이닭
개발로 세상을 밝히자.(억지 맞음)
  • 오늘은치킨이닭
    개발세밝
    오늘은치킨이닭
  • 전체
    오늘
    어제
    • 분류 전체보기 (80)
      • Project(마감 기한이 정해진 목표) (2)
        • Docker(도커) (1)
        • Django(장고) (0)
        • 부트캠프 (1)
      • Archive(완료된 내용) (59)
        • 재취업준비 (8)
        • 포트폴리오 강화 (24)
        • 부트캠프 (3)
        • 팁 (2)
        • 데이터베이스 (2)
        • SQL (12)
        • 백엔드 (5)
        • 프론트엔드 (1)
        • 유니티(Unity) (2)
      • Area(일생동안 지속 유지하는 활동,마감X) (16)
        • 게임 (2)
        • 코딩테스트 (12)
        • 운영체제 (0)
        • DB (2)
      • Resource(지속적 관심을 갖는 주제분야) (1)
        • 애니메이션 (0)
        • 내가 선정한 맛집 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    명동교자
    롤 #룬 #자동적용 #블리츠 #다운로드 #도움 #TIP #브론즈 #아이언 #브실골 #아브실
    명동
    칼국수맛집
    유니티 #설치 #방법 #다운
    DB #데이터베이스
    맛집
    명동맛집
    인포그래픽 #자기소개서 #자기소개 #명함삭제
    고클린 #cpu온도보는법 #cpu온도
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
오늘은치킨이닭
[임베딩]
상단으로

티스토리툴바