Azure AI Search 서비스 구축 및 활용 가이드

danbi lee·2025년 4월 21일

Azure

목록 보기
1/8

Azure AI Search를 간단하게 검색해봤다.

Azure AI Search란, Microsoft의 클라우드 기반 검색 서비스로, 다양한 데이터 소스에서 컨텐츠를 인덱싱하고 검색할 수 있게 해주는 서비스를 말한다.

1 Azure AI 검색 개요: 기본 개념과 주요 기능 이해
2 인덱스 생성 및 관리: 검색 인덱스를 만들고 구성하는 방법
3 데이터 인덱싱: 다양한 데이터 소스에서 콘텐츠를 인덱싱하는 방법
4 검색 기능: 기본 검색, 필터링, 패싯 검색 등의 기능
5 AI 기반 검색 기능: 자연어 처리, 이미지 분석 등 AI 기능 통합
6 벡터 검색: 임베딩과 시맨틱 검색 기능

주요 기능

  • 인덱싱(Indexing)
    데이터를 빠르고 효율적으로 검색할 수 있도록 인덱스를 생성한다. Azure AI Search는 다양한 데이터 소스(예: 데이터베이스, blob 스토리지 등)에서 데이터를 추출하여 인덱스를 만든다.
  • 검색 쿼리(Querying)
    인덱스된 데이터를 효율적으로 검색할 수 있도록 다양한 쿼리 기능을 제공한다. 이를 통해 필터링, 정렬, 페이징 등을 할 수 있다.
  • AI 기능
    텍스트 분석, 이미지 분석, 언어 감지 등 다양한 AI 기능을 지원한다.
    자연어 처리 기능을 사용해 데이터의 의미를 이해해 검색 성능을 향상시킬 수 있다.
  • 자동 완성(Autocomplete)
    사용자가 검색어를 입력할 때 실시간으로 자동 완성 기능을 제공한다.
  • 정확성 향상
    검색 결과를 정렬하고 순위를 매기기 위해 머신 러닝 모델을 사용할 수 있다.

기본 구성 요소

  • 검색 인덱스(Index)
    데이터를 검색할 수 있도록 구조화된 형태로 저장하는 공간이다. 인덱스를 생성할 때 검색할 데이터의 속성(필드)과 그 데이터 타입을 정의한다.
  • 검색 서비스(Secvice)
    Azure AI Search를 제공하는 기본 리소스로, 여러 개의 인덱스와 데이터를 관리하는 역할을 한다.
  • 검색 엔드포인트(Endpoint)
    클라이언트 애플리케이션이 Azure AI Search와 통신하기 위한 URL을 말한다.
  • 인덱서(Indexer)
    데이터 소스로부터 정보를 추출하여 검색 인덱스를 자동으로 생성하는 도구이다.

주요 사용처

  1. 대규모 데이터셋에서의 빠른 검색
  2. 고급 검색이 필요한 경우
  3. 자연어 검색과 AI 기반 분석이 필요한 경우
  4. 이미지, 텍스트 및 비디오 데이터에서의 분석
  5. 추천 시스템 구축
  6. 컨텐츠 분류 및 태깅
  7. 다국어 및 지역화된 검색

다양한 검색 기법

전통적인 키워드 기반 검색

like 검색을 말한다.

벡터 유사도 검색

사용자가 레이 자동차 라는 키워드를 검색했을 때
1) 텍스트 벡터화
레이 자동차는 자연어 처리 모델을 통해 벡터(수학적 벡터 형태)로 변환된다.

{
  "keyword": "레이자동차",
  "vector": [0.123, 0.456, 0.789, ...]  // 고차원 벡터
}

2) 인덱싱
데이터가 벡터로 변환되에 검색 인덱스에 저장된다.

[
  {
    "model": "소나타",
    "vector": [0.111, 0.222, 0.333, ...]
  },
  {
    "model": "스포티지",
    "vector": [0.444, 0.555, 0.666, ...]
  },
  {
    "model": "레이자동차",
    "vector": [0.123, 0.456, 0.789, ...]
  },
  // 다른 자동차 모델들
]

3) 유사도 검색
레이 자동차와 인덱스에 저장된 자동차 벡터들 간의 유사도를 계산한다. (벡터 유사성 검증)

4) 결과 반환
유사도가 높은 벡터들을 찾아서 가장 일치하는 항목들을 반환한다.

[
  {
    "model": "레이자동차",
    "similarity_score": 0.98 // -> 1에 가까울수록 더 높은 유사도를 의미
  },
  {
    "model": "소나타",
    "similarity_score": 0.85
  },
  {
    "model": "스포티지",
    "similarity_score": 0.78
  }
]

like 검색과 벡터 유사도 검색을 혼합하여 사용하는 방법이다.
키워드 기반 검색으로 빠르게 초기 필터링을 하고, 벡터 유사도 검색으로 필터링된 결과에 대해 의미 기반 검색을 수행하는 방식이다.

정규 표현식 검색

고급 패턴 매칭을 통해 특정 규칙에 맞는 문자열을 찾을 수 있다.
전화번호, 이메일 주소 등 특정 포맷을 가진 데이터를 검색할 때 유용하다.

필터링

사용자가 정의한 특정 조건을 기준으로 결과를 제한하는 방식이다. 이는 검색 쿼리와 함께 사용되며, 필터링 조건을 추가해 결과를 좁힌다.

추천 시스템

사용자 행동이나 선호도를 분석하여 개인화된 결과를 제공하는 방식이다.

자연어 처리(NLP) 기반 검색

자연어 문장을 분석하여 의미적 관계를 파악하고, 문장 구조와 의도를 이해하며 검색하는 방식이다. 질의응답 시스템이나 챗봇에서 사용된다.

문서 검색

문서 내에서 단어, 문장, 문맥을 검색하는 방식이다.


https://learn.microsoft.com/ko-kr/azure/search/
https://learn.microsoft.com/ko-kr/training/modules/intro-to-azure-search/2-what-is-azure-search

profile
계속해서 보완중

0개의 댓글