txtai 인덱싱 가이드
txtai 인덱싱 가이드
txtai로 데이터를 검색하려면 먼저 벡터화하고 인덱싱해야 해요. 여기서는 txtai가 데이터를 색인하고 갱신·삭제하는 방식, embeddings database의 구성 요소를 살펴볼게요.
인덱스 가이드는 데이터를 txtai로 색인하는 방법을 깊이 다뤄요. 벡터화, 데이터 인덱싱·갱신·삭제, 그리고 embeddings database의 여러 구성 요소가 이 범위에 들어와요.
벡터화가 끝나면 계산된 벡터는 ANN(Approximate Nearest Neighbor)에 저장돼요. ANN 백엔드는 여러 가지를 고를 수 있고, Faiss가 기본값이에요.
중요한 옵션 중 하나가 콘텐츠 저장(Content Storage) 이에요. 이를 켜면 입력 콘텐츠가 계산된 벡터 옆 데이터베이스에 저장돼요. 이렇게 하면 추가 필드로 필터링하거나, 검색 결과에서 실제 콘텐츠를 바로 꺼내올 수 있어요.
또 하나는 하위 인덱스(Subindexes) 예요. embeddings 인스턴스에 하위 인덱스를 두면 인덱스 자체도 또 다른 embeddings database가 돼요. 이를 통해 추가 필드를 색인하거나, 서로 다른 벡터 모델을 함께 쓰는 등 확장이 가능해요.
정리하면, txtai의 검색 품질은 '어떤 벡터 모델로, 어떤 ANN 백엔드로, 콘텐츠를 저장할지'에 크게 좌우돼요. 시작할 땐 Faiss 기본값으로 빠르게 만들어 보고, 필요할 때 콘텐츠 저장과 하위 인덱스를 켜는 걸 추천해요.