키워드 검색은 정확한 용어가 있는 문서를 잘 찾고, 벡터 검색은 단어가 달라도 의미가 비슷한 문서를 찾습니다. 하이브리드 검색은 두 후보 집합을 합쳐 한쪽만 쓸 때 빠지는 문서를 줄입니다.
두 검색의 원점수는 단위가 다를 수 있어 그대로 더하면 한쪽이 과도하게 우세해집니다. 순위 융합이나 점수 정규화 방식을 골라 검증해야 합니다.
언제 쓰나
문서 검색에서 정확한 식별자와 자연어 표현을 모두 다뤄야 할 때 씁니다.
키워드 일치와 의미 벡터 검색의 후보를 합칩니다.
<div class="v"><header><b>HYBRID RETRIEVAL</b><span id="state"></span></header><main><div class="sources"><div>KEYWORD<div id="lex"></div></div><div>VECTOR<div id="vec"></div></div></div><div class="merged" id="merged"></div></main><footer>two retrieval paths, one pool</footer></div>.v{width:min(92vw,660px);height:min(86vh,310px);box-sizing:border-box;padding:clamp(9px,2.5vmin,18px);border:1px solid var(--line);border-radius:14px;background:var(--surface);display:flex;flex-direction:column;gap:7px;color:var(--fg);font:500 clamp(15px,4.5vmin,19px)/1.25 var(--font-sans, sans-serif)}.v header,.v footer{display:flex;justify-content:space-between;align-items:center;gap:8px;white-space:nowrap}.v header b{color:var(--accent);font-size:.9em}.v header span,.v footer{color:var(--muted);font-size:.82em}.v main{flex:1;min-height:0;position:relative;overflow:hidden}.v .mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.v .active{background:var(--accent)!important;color:var(--bg)!important;border-color:var(--accent)!important}.v .muted{opacity:.45} .sources{height:66%;display:flex;justify-content:space-around;gap:8px}.sources>div{width:45%;text-align:center;color:var(--muted);font-size:.8em}.sources b,.merged b{display:inline-block;margin:3px;padding:5px 8px;border:1px solid var(--line);border-radius:5px;color:var(--fg);font:600 1em ui-monospace,monospace}.merged{text-align:center;color:var(--accent);font-size:.85em}let n=0;function draw(){document.getElementById("lex").innerHTML=["A","C"].map(x=>"<b class=\""+(n===0?"active":"")+"\">"+x+"</b>").join("");document.getElementById("vec").innerHTML=["B","A"].map(x=>"<b class=\""+(n===1?"active":"")+"\">"+x+"</b>").join("");document.getElementById("merged").innerHTML=n===2?"merged: <b>A</b><b>B</b><b>C</b>":"merge pending";document.getElementById("state").textContent=["lexical","semantic","combined"][n];n=(n+1)%3}draw();setInterval(draw,1000)키워드 검색은 정확한 용어가 있는 문서를 잘 찾고, 벡터 검색은 단어가 달라도 의미가 비슷한 문서를 찾습니다. 하이브리드 검색은 두 후보 집합을 합쳐 한쪽만 쓸 때 빠지는 문서를 줄입니다.
두 검색의 원점수는 단위가 다를 수 있어 그대로 더하면 한쪽이 과도하게 우세해집니다. 순위 융합이나 점수 정규화 방식을 골라 검증해야 합니다.
문서 검색에서 정확한 식별자와 자연어 표현을 모두 다뤄야 할 때 씁니다.