Azure AI 검색 질문과 대답

Azure AI 검색에 대해 질문과 대답에 대한 답변을 찾아보세요.

일반

Azure AI 검색이란?

Azure AI 검색은 전체 텍스트 및 벡터 검색 시나리오를 위한 검색 가능한 콘텐츠의 전용 검색 엔진 및 영구 스토리지를 제공합니다. 여기에는 원시 콘텐츠에서 더 많은 텍스트와 구조를 추출하고, 벡터 검색을 위해 콘텐츠를 청크화 및 벡터화하는 통합 AI도 포함됩니다.

Azure AI 검색을 사용하려면 어떻게 해야 하나요?

기본 워크플로는 인덱스 만들기, 로드 및 쿼리입니다. 대부분의 작업에 포털을 사용할 수 있지만 Azure AI 검색은 프로그래밍 방식으로 클라이언트 코드의 요청을 처리하는 데 사용됩니다. 프로그래밍 방식 지원은 Azure용 .NET, Python, Java 및 JavaScript SDK의 REST API 및 클라이언트 라이브러리를 통해 제공됩니다.

"Azure Search", "Azure Cognitive Search", “Azure AI 검색”은 동일한 제품인가요?

Azure Search는 서비스 작업에서 인식 기술 및 AI 처리의 확장된 사용(아직 선택 사항임)을 반영하기 위해 2019년 10월에 Azure Cognitive Search로 이름이 변경되었습니다. Azure Cognitive Search는 Azure AI 서비스에 맞게 2023년 10월에 Azure AI 검색으로 이름이 변경되었습니다.

어떤 언어가 지원됩니까?

토큰화에 사용되는 기본 분석기는 표준 Lucene이며 언어에 구애받지 않습니다. 그렇지 않으면 언어 지원은 인바운드(인덱스 생성) 및 아웃바운드(검색어) 콘텐츠에 언어 규칙을 적용하는 언어 분석기를 통해 표현됩니다. 맞춤법 검사기 등 일부 기능은 언어의 하위 집합으로 제한됩니다.

내 솔루션에 검색을 어떻게 통합하나요?

클라이언트 코드는 Azure SDK 클라이언트 라이브러리 또는 REST API를 호출하여 검색 인덱스에 연결하고, 쿼리를 수식화하고, 응답을 처리해야 합니다. 인덱스를 빌드하고 새로 고치거나 인덱서를 프로그래밍 방식 또는 스크립트로 실행하는 코드를 빌드할 수도 있습니다.

다양한 API에 기능적 패리티가 있나요?

항상 그런 것은 아닙니다. 미리 보기 API 버전에서 새 기능을 구현하는 첫 번째 항목은 항상 REST API입니다. Azure SDK의 클라이언트 라이브러리는 시간이 지남에 따라 새로운 기능을 선택하지만 자체 일정에 따라 릴리스됩니다.

REST API가 최신 기능과 함께 가장 먼저 나왔지만 Azure SDK는 더 많은 코딩 지원을 제공합니다. 필요한 기능을 사용할 수 없는 경우가 아니면 REST보다 Azure SDK를 사용하는 것이 좋습니다.

서비스를 일시 중지하고 청구를 중지할 수 있나요?

검색 서비스를 일시 중지할 수 없습니다. Azure AI 검색에서는 서비스가 만들어질 때 컴퓨팅 리소스가 할당됩니다. 요청에 따라 이러한 리소스를 해제하고 재청구하는 것은 불가능합니다.

서비스를 업그레이드, 다운그레이드, 이름 변경 또는 이동할 수 있나요?

서비스 계층, 이름 및 지역은 서비스 수명 동안 고정됩니다.

내 검색 서비스를 다른 구독 또는 리소스 그룹으로 마이그레이션하는 경우 작동 중지 시간이 예상되나요?

리소스를 이동하기 전에 검사 목록을 따르고 각 단계가 완료되었는지 확인하는 한 중단 시간이 없어야 합니다.

인덱싱

Azure AI 검색에서 "인덱싱"은 무엇을 의미하나요?

검색 인덱스를 채우는 텍스트 콘텐츠 및 토큰의 수집, 구문 분석 및 저장을 말합니다. 인덱싱은 정보 검색을 지원하는 역 인덱스 및 기타 실제 데이터 구조를 만듭니다.

스키마에 벡터 필드가 포함된 경우 벡터 인덱스를 만듭니다.

인덱스를 이동, 백업 및 복원할 수 있나요?

인덱스 포팅에 대한 기본 지원은 없습니다. 검색 인덱스는 작동 데이터를 수집하는 다른 데이터 원본의 콘텐츠를 허용하는 다운스트림 데이터 구조로 간주됩니다. 따라서 인덱스를 삭제했거나 이동하려는 경우 원본 데이터에서 인덱스를 다시 빌드해야 하므로 인덱스 백업 및 복원에 대한 기본 제공 지원이 없습니다.

그러나 검색 서비스 간에 인덱스를 이동하려는 경우 이 Azure AI 검색 .NET 샘플 저장소에서 index-backup-restore 샘플 코드를 사용해 볼 수 있습니다. 또한 Python 버전의 백업 및 복원도 있습니다.

인덱스나 서비스가 삭제된 후 복원할 수 있나요?

아니요, Azure AI 검색 인덱스 또는 서비스를 삭제하는 경우 복구할 수 없습니다. 검색 서비스를 삭제하면 서비스의 모든 인덱스가 영구적으로 삭제됩니다.

SQL Database 복제본에서 인덱싱할 수 있나요?

Azure SQL Database용 검색 인덱서를 사용하는 경우 처음부터 인덱스를 빌드할 때 기본 또는 보조 복제본을 데이터 원본으로 사용하는 데 제한이 없습니다. 그러나 증분 업데이트(변경된 레코드 기준)를 통해 인덱스를 새로 고칠 때는 주 복제본이 필요합니다. 이것은 주 복제본에서만 변경 추적을 보장하는 SQL Database에 따른 요구 사항입니다. 인덱스 새로 고침 워크로드에 보조 복제본을 사용할 경우 전체 데이터를 확보한다고는 보장할 수 없습니다.

벡터

벡터 검색이란?

벡터 검색은 벡터 표현을 비교하여 가장 유사한 문서를 찾는 기술입니다. 벡터 표현의 목표는 항목의 필수 특성을 숫자 형식으로 캡처하는 것이므로 벡터 쿼리는 키워드 또는 태그를 기반으로 하는 명시적 일치 항목이 없더라도 유사한 콘텐츠를 식별할 수 있습니다. 사용자가 검색을 수행하면 쿼리가 벡터 표현으로 요약되고 벡터 검색 엔진이 가장 유사한 문서를 식별합니다. 대규모 데이터베이스의 효율성을 개선하기 위해 벡터 검색은 쿼리 벡터에 대해 가장 가까운 근사한 인접 항목을 제공하는 경우가 많습니다. Azure AI 검색의 벡터 제품에 대한 자세한 내용은 벡터 검색 개요를 참조하세요.

Azure AI 검색은 벡터 검색을 지원하나요?

Azure AI 검색은 벡터 인덱싱 및 검색을 지원합니다. 미리 보기 및 베타 라이브러리를 사용하는 경우 쿼리 문자열 및 콘텐츠를 벡터화할 수 있습니다.

Azure AI 검색에서 벡터 검색은 어떻게 작동하나요?

독립 실행형 벡터 검색을 사용하면 먼저, 포함 모델을 사용하여 포함 공간 내에서 콘텐츠를 벡터 표현으로 변환합니다. 그런 다음, 인덱싱을 위해 문서 페이로드에서 이러한 벡터를 검색 인덱스에 제공할 수 있습니다. 검색 요청을 제공하려면 인덱싱에서 동일한 DNN을 사용하여 검색 쿼리를 벡터 표현으로 변환하고, 벡터 검색은 가장 유사한 벡터를 찾아 해당 문서를 반환합니다.

Azure AI 검색에서는 텍스트 및 기타 유형의 콘텐츠와 함께 벡터 데이터를 문서의 필드로 인덱싱할 수 있습니다. 벡터 필드의 데이터 형식은 Collection(Edm.Single)입니다.

벡터 쿼리는 독립 실행형 또는 동일한 검색 요청의 용어 쿼리 및 필터를 비롯한 다른 쿼리 형식과 함께 실행할 수 있습니다.

Azure AI 검색에서 내 콘텐츠 또는 쿼리를 벡터화할 수 있나요?

기본 제공 통합 벡터화는 현재 공개 미리 보기로 제공됩니다.

내 검색 서비스에서 벡터 검색을 지원하나요?

대부분의 기존 서비스는 벡터 검색을 지원합니다. 벡터 검색 및 인덱스 생성을 지원하는 패키지 또는 API를 사용하는 경우 기본 검색 서비스가 벡터 검색을 지원하지 않으며 새 서비스를 만들어야 합니다. 이는 2019년 1월 1일 이전에 만든 서비스의 소규모 하위 집합에 대해 발생할 수 있습니다.

기존 인덱스로 벡터 검색을 추가할 수 있나요?

검색 서비스에서 벡터 검색을 지원하는 경우 기존 인덱스와 새 인덱스 모두 벡터 필드를 수용할 수 있습니다.

새 검색 서비스와 기존 검색 서비스 간에 다른 벡터 인덱스 크기 제한이 표시되는 이유는 무엇인가요?

새로운 검색 서비스에 대해 전 세계적으로 향상된 벡터 인덱스 크기 제한을 롤아웃하고 있지만, 특정 지역에서는 여전히 인프라 용량을 구축하는 중입니다. 지원되는 지역에서 만든 새 검색 서비스에는 증가된 벡터 인덱스 크기 제한이 표시됩니다. 아쉽게도 기존 서비스는 새 제한으로 마이그레이션할 수 없습니다.

검색 인덱스에서 벡터 검색을 사용하도록 설정하려면 어떻게 해야 하나요?

인덱스에서 벡터 검색을 사용하도록 설정하려면 다음을 수행해야 합니다.

  • 필드 컬렉션에 하나 이상의 벡터 필드를 추가합니다.

  • HNSW와 등, 사용된 근사값 인접 알고리즘의 매개 변수를 포함하여 벡터 검색 필드에서 사용되는 구성을 지정하는 인덱스 스키마에 "vectorSearch" 섹션을 추가합니다.

  • 2023-11-01 또는 Azure SDK를 사용하여 인덱스를 만들거나 업데이트하고, 문서를 로드하고, 쿼리를 실행합니다.

쿼리

쿼리 실행은 어디에서 발생하나요?

쿼리는 검색 서비스에서 호스트되는 단일 검색 인덱스를 통해 실행됩니다. 여러 인덱스를 조인하여 둘 이상의 인덱스에서 콘텐츠를 쿼리할 수는 없지만 여러 쿼리 서비스에서 동일한 이름의 인덱스를 쿼리할 수 있습니다.

유효하다고 알고 있는 용어에 대해 일치가 0인 이유는 무엇인가요?

가장 일반적인 경우는 각 쿼리 입력이 언어적 분석의 다른 검색 동작과 수준을 지원하는 것을 인지하지 못하기 때문입니다. 핵심 작워크로드인 전체 텍스트 검색에는 용어를 근본 형태로 분석하는 언어 분석 단계가 포함됩니다. 토큰화된 용어는 더 많은 변형 항목과 일치하기 때문에 이 쿼리 구문 분석 단계에는 가능한 일치보다 범위가 더 넓어집니다.

그러나 와일드카드, 유사 항목 및 regex 쿼리는 일반적인 용어 또는 구문 쿼리처럼 분석되지 않으며, 쿼리가 검색 인덱스에 있는 분석된 형태의 단어와 일치하지 않을 경우 제대로 불러올 수 없습니다. 쿼리 구문 분석 및 분석에 대한 자세한 내용은 쿼리 아키텍처를 참조하세요.

내 와일드카드 검색이 느린 이유는 무엇인가요?

접두사, 유사 항목 및 regex와 같은 대부분의 와일드카드 검색 쿼리는 검색 인덱스에서 일치하는 용어를 사용하여 내부적으로 다시 작성됩니다. 이 추가 처리로 대기 시간이 늘어납니다. 나아가, 많은 용어로 다시 작성될 가능성이 큰 a*와 같은 광범위한 검색 쿼리는 느릴 수 있습니다. 고성능 와일드카드 검색을 수행하려면 사용자 지정 분석기를 정의하는 것이 좋습니다.

여러 인덱스에서 검색할 수 있나요?

아니요, 쿼리는 항상 단일 인덱스로 범위가 지정됩니다.

모든 경기에서 검색 점수가 1.0으로 일정하게 유지되는 이유는 무엇인가요?

전체 텍스트 검색어에 대한 검색 점수는 일치하는 용어의 통계적 속성을 기반으로 생성되며 결과 집합에서 높은 순서로 정렬됩니다. 전체 텍스트 쿼리가 아닌 쿼리 형식(와일드카드, 접두사, 정규식)은 관련성 점수로 순위가 매겨지지 않습니다. 이 동작은 의도된 것입니다. 상수 점수를 통해 쿼리 확장을 통해 찾은 일치 항목을 순위에 영향을 주지 않고 결과에 포함할 수 있습니다.

예를 들어, 와일드카드 검색에서 "tour*"를 입력하면 "tours", "tourettes" 및 "tourmaline"이 일치합니다. 이러한 결과의 특성을 감안할 때, 어떤 용어가 더 중요한지 합리적으로 유추할 방법이 없습니다. 이러한 이유로 와일드카드, 접두사 및 정규식 형식의 쿼리에서 결과 점수를 매길 때 용어 빈도는 무시됩니다. 예기치 않은 일치의 가능성에 따른 왜곡을 방지하기 위해 부분 이력 기준 검색 결과에는 일정 점수가 부여됩니다.

보안

Azure AI 검색은 고객 데이터를 어디에 저장하나요?

서비스가 배포되는 모든 위치에 데이터를 저장합니다. Azure AI 검색은 배포 지역 외부에 고객 데이터를 저장하지 않습니다.

Azure AI 검색은 처리를 위해 고객 데이터를 다른 서비스로 전송하나요?

예, Azure AI 검색 기반의 기본 제공 기술을 사용하는 경우 인덱서는 내부 네트워크를 통해 Azure AI 서비스에 요청을 보냅니다. 사용자 지정 기술을 추가하면 인덱서가 공용 네트워크를 통해 사용자 지정 기술에 제공된 URI로 콘텐츠를 보냅니다.

사용자 ID를 기반으로 검색 결과에 대한 액세스를 제어할 수 있나요?

그렇지 않습니다. 일반적으로 애플리케이션을 실행할 수 있는 권한이 있는 사용자는 모든 검색 결과를 볼 수 있는 권한도 있습니다. Azure AI 검색은 행 수준 또는 문서 수준 권한을 기본적으로 지원하지 않지만 해결 방법으로 보안 필터를 구현할 수 있습니다.

사용자 ID를 기반으로 작업에 대한 액세스를 제어할 수 있나요?

예, 콘텐츠에 대한 데이터 평면 작업에 역할 기반 권한 부여를 사용할 수 있습니다.

검색 서비스가 IP 방화벽이나 프라이빗 엔드포인트 뒤에 있는 경우 Azure Portal을 사용하여 검색 콘텐츠를 보고 관리할 수 있나요?

클라이언트 및 포털 액세스를 허용하는 네트워크 예외를 만드는 경우 네트워크 보호 검색 서비스에서 Azure Portal을 사용할 수 있습니다. 자세한 내용은 IP 방화벽을 통해 연결 또는 프라이빗 엔드포인트를 통해 연결을 참조하세요.

다음 단계

질문에 대한 대답이 여기에 없으면 다음 출처에서 추가 질문 및 대답을 참조할 수 있습니다.

스택 오버플로: Azure AI 검색
Azure AI 검색에서 전체 텍스트 검색이 작동하는 방식
Azure AI 검색이란?