"검색은 매칭되는 남의 단어를 찾아. 자동완성은 네가 실제로 쓴 방식 그대로, 네 단어를 돌려줘."
완전히 다른 질문
자동완성은 작은 검색이 아냐. 검색은 "어느 구절이 이것과 관련 있어?" 를 물어. 자동완성은 훨씬 친밀한 걸 물어: "장기 투자자가 물어야 할 유일한 질문 을 쳤어 — 내 코퍼스는 그 phrase 를 어떻게 끝내?" 답은 문서의 순위 목록이 아냐. 네 글에서 캔, 다음에 그럴싸하게 올 연속 몇 개야. 사서라기보단, 문장 중간에 되울린 네 자신의 목소리야.
phrase-prefix mining 이 작동하는 법
메커니즘은 우아하고 완전히 모델 없어. 친 것의 꼬리를 잡아 전문 인덱스에 phrase-prefix 쿼리로 써 — 그 정확한 단어 시퀀스가 코퍼스에서 시작되는 곳을 매칭해. 앵커되는 각 곳마다, 바로 뒤에 오는 걸 보고, 그 연속을 모아. 각각이 얼마나 자주 재발하는지로 순위 매기면, 제안이 나와. 신경망으로 다음 단어를 예측하는 게 아냐. 네 코퍼스가 그 phrase 를 실제로 어떻게 이었는지, 나타난 매번을 보고하는 거야.
임베딩 없음, 네트워크 없음, 모델 없음
순수 phrase-prefix 조회 더하기 카운팅이라, 자동완성은 로컬 인덱스만 만져. 임베딩 호출 없음, 벡터 저장소 없음, 모델 서버 없음, 어떤 종류의 네트워크 홉도 없음. 그게 키 누를 때마다 발사되고도 수십 ms 안에 돌아오게 하는 거야. 앞 트랙의 결정론이 여기선 그냥 좋은 속성이 아냐 — 가능하게 하는 제약이야. 네트워크 호출이 든 자동완성 경로는 쓸 수 없어서, 애초에 그런 게 없어.
부활한 기능, 정밀하게
코퍼스 phrase-완성은 오래된 아이디어야 — 글쓰기 도구는 오래 네 과거 텍스트에서 문장을 끝내주겠다 제안해왔어. Lantern 버전을 날카롭게 하는 건 그 아래 쌓인 규율이야: 로컬 상태만 만져 지킨 키스트로크 등급 예산, 재구성 대신 구두점 충실한 raw 조각, 그리고 malformed 소스 조각이 쓰레기 제안으로 안 떠오르게 하는 junk guard. 이 기능은 네 생각을 네 단어로 끝낼 때 마법처럼 느껴져 — 그리고 그 마법은 아래 전부 결정론적 기계야.