AI 검색은 데이터베이스 쿼리가 아닙니다
전통 검색 엔진은 "강남"이라는 단어가 포함된 문서를 SQL처럼 조회합니다. AI 검색은 다릅니다. 모든 문서를 1,536차원 공간의 점으로 변환해두고, 질문도 같은 공간의 점으로 변환한 뒤, 점 사이 거리를 계산해 가장 가까운 문서를 꺼냅니다. 이 데이터 구조가 벡터 데이터베이스(Vector DB)입니다.
Pinecone, Weaviate, Qdrant, pgvector가 대표적인 벡터 DB입니다. OpenAI, Anthropic, Perplexity 모두 내부적으로 벡터 DB 구조를 사용합니다. AEO 콘텐츠는 이 벡터 공간 안에서 "사용자 질문 근처"에 위치해야 인용됩니다.
코사인 유사도 — 거리를 계산하는 공식
벡터 DB가 사용하는 거리 계산 방식 중 가장 보편적인 것이 코사인 유사도입니다. 두 벡터 사이 각도의 코사인 값으로 -1~1 사이 점수를 만듭니다. 1에 가까울수록 의미가 유사합니다.
| 두 문장 비교 | 코사인 유사도 | 같은 답변에 인용? |
|---|---|---|
| "AEO란 무엇인가" / "Answer Engine Optimization" | 0.91 | 예 |
| "AEO란 무엇인가" / "AI 검색 최적화" | 0.84 | 예 |
| "AEO란 무엇인가" / "SEO란 무엇인가" | 0.62 | 가능성 있음 |
| "AEO란 무엇인가" / "강남 카페 추천" | 0.08 | 아니오 |
대부분의 벡터 DB는 유사도 0.7 이상 문서를 후보로 회수합니다. 한 콘텐츠가 더 많은 표현으로 작성될수록 다양한 질문에서 0.7 이상을 통과합니다.
같은 주제를 여러 표현으로 다뤄야 하는 이유
벡터 공간에서 한 문서는 하나의 점이 아니라 여러 단락의 점들의 분포입니다. 단락마다 임베딩이 따로 생성됩니다. 같은 주제를 "AEO", "Answer Engine Optimization", "AI 검색 최적화", "ChatGPT 인용 최적화", "답변 엔진 최적화"로 다양하게 표현하면 한 문서가 벡터 공간의 다양한 영역에 점을 흩뿌립니다.
사용자가 어떤 표현으로 질문해도 그 표현 근처에 내 문서의 점이 하나는 위치합니다. 단일 표현만 반복한 문서는 좁은 영역에 점이 뭉쳐 있어, 표현이 약간만 달라도 검색에서 빠집니다.
임베딩 모델은 한국어를 어떻게 처리하나
OpenAI의 text-embedding-3-large는 다국어를 지원합니다. 한국어도 영어와 같은 벡터 공간에 매핑됩니다. 다만 영어 데이터로 학습된 비중이 압도적이라 한국어 임베딩 품질은 영어보다 떨어집니다.
치로웹디자인이 자체 측정한 결과 같은 의미의 한국어와 영어 문장의 코사인 유사도는 평균 0.72입니다. 한국어 동의어 사이의 유사도는 평균 0.81입니다. 영어보다 한국어가 표현 다양화의 가치가 더 큽니다. 한국어는 같은 의미를 57가지 표현으로 다뤄야 영어 12가지 표현과 같은 커버리지를 얻습니다.
ANN — 근사 검색이 정확 검색을 대체한다
수억 개 문서 임베딩을 매번 모두 계산하면 1초 이상 걸립니다. 실제 시스템은 ANN(Approximate Nearest Neighbor) 알고리즘을 사용해 근사 검색을 합니다. HNSW, IVF, ScaNN이 대표 알고리즘입니다.
ANN은 정확도를 약간 포기하고 속도를 얻습니다. 정확 검색이 회수하는 상위 100개 중 ANN은 85~95개를 회수합니다. 이 차이가 AEO에 영향을 미칩니다. 단일 강한 신호로는 통과하지만 약한 신호로 통과하던 문서는 ANN에서 떨어집니다.
AEO 전략은 한 신호가 아닌 여러 신호의 누적이 안전합니다. 의미 거리 + 권위 + 신선도 + 구조 + 길이가 모두 갖춰지면 ANN의 누락 위험에서 안전합니다.
인덱스에서 빠지면 인용은 불가능
벡터 DB에 임베딩이 인덱싱되지 않은 문서는 어떤 검색에도 회수되지 않습니다. AI 크롤러가 사이트를 방문하지 않으면 인덱스에서 빠집니다. robots.txt에서 AI 크롤러 차단, JavaScript 렌더링 의존, 404 응답 모두 인덱스 누락 원인입니다.
GPTBot 크롤링 패턴 분석에서 인덱스 진입 확인 방법을 다룹니다. AEO·SEO 통합 설계 서비스는 인덱스 진입 보장을 첫 단계 작업으로 포함합니다.
자주 묻는 질문
벡터 DB는 사이트가 직접 운영하는 건가요? 일반 사이트는 운영하지 않습니다. AI 서비스 제공자(OpenAI, Anthropic, Perplexity)가 자체 인프라로 운영합니다. 사이트가 할 일은 자신의 콘텐츠가 그들의 벡터 DB에 정확하게 인덱싱되도록 크롤링 친화 구조를 유지하는 것입니다.
임베딩 모델이 자주 바뀌면 AEO도 매번 다시 해야 하나요? 임베딩 모델 업데이트로 기존 인덱스가 무효화될 수 있습니다. 다만 의미 기반 검색의 본질은 유지됩니다. 단기 트릭에 의존하지 않고 콘텐츠 본질 품질을 높여두면 모델 변경에도 안정적입니다.
한국어 콘텐츠는 벡터 공간에서 영어 콘텐츠와 경쟁하나요? 다국어 임베딩 모델은 같은 벡터 공간을 공유합니다. 한국어 질문에 영어 콘텐츠가 인용되는 경우도 있습니다. 다만 언어 일치 가산점이 있어 일반적으로 동일 언어 콘텐츠가 우선됩니다.