다음을 통해 공유


SearchIndexClient 클래스

Azure Search Service 인덱스와 상호 작용하는 클라이언트입니다.

상속
azure.search.documents._headers_mixin.HeadersMixin
SearchIndexClient

생성자

SearchIndexClient(endpoint: str, credential: AzureKeyCredential | TokenCredential, **kwargs: Any)

매개 변수

endpoint
str
필수

Azure Search 서비스의 URL 엔드포인트

credential
AzureKeyCredential 또는 TokenCredential
필수

검색 클라이언트 요청에 권한을 부여하는 자격 증명

api_version
str

요청에 사용할 Search API 버전입니다.

audience
str

는 AAD(Azure Active Directory)를 사용하여 인증에 사용할 대상 그룹을 설정합니다. 공유 키를 사용할 때 대상 그룹은 고려되지 않습니다. 대상 그룹이 제공되지 않으면 퍼블릭 클라우드 대상 그룹이 가정됩니다.

메서드

analyze_text

분석기가 텍스트를 토큰으로 나누는 방법을 보여 줍니다.

close

세션을 닫습니다 SearchIndexClient .

create_index

새 검색 인덱스 만들기

create_or_update_index

새 검색 인덱스를 만들거나 인덱스가 이미 있는 경우 인덱스를 업데이트합니다.

create_or_update_synonym_map

Azure Search Service 새 동의어 맵을 만들거나 기존 동의어 맵을 업데이트합니다.

create_synonym_map

Azure Search Service 새 동의어 맵 만들기

delete_index

검색 인덱스와 검색 인덱스에 포함된 모든 문서를 삭제합니다. 액세스 조건을 사용하려면 이름 대신 모델을 제공해야 합니다.

delete_synonym_map

Azure Search Service 명명된 동의어 맵을 삭제합니다. 액세스 조건을 사용하려면 이름 대신 SynonymMap 모델을 제공해야 합니다. 동의어 맵의 이름을 제공하여 무조건 삭제하기에 충분합니다.

get_index
get_index_statistics

문서 수 및 스토리지 사용량을 포함하여 지정된 인덱스에 대한 통계를 반환합니다.

get_search_client

검색에서 작업을 수행할 클라이언트 반환

get_service_statistics

검색 서비스에 대한 서비스 수준 통계를 가져옵니다.

get_synonym_map

Azure Search Service 명명된 동의어 맵 검색

get_synonym_map_names

Azure Search Service 동의어 맵 이름을 나열합니다.

get_synonym_maps

Azure Search Service 동의어 맵을 나열합니다.

list_index_names

Azure Search Service 인덱스 이름을 나열합니다.

list_indexes

Azure Search Service 인덱스를 나열합니다.

analyze_text

분석기가 텍스트를 토큰으로 나누는 방법을 보여 줍니다.

analyze_text(index_name: str, analyze_request: AnalyzeTextOptions, **kwargs: Any) -> AnalyzeResult

매개 변수

index_name
str
필수

분석기를 테스트할 인덱스의 이름입니다.

analyze_request
AnalyzeTextOptions
필수

테스트할 텍스트 및 분석기 또는 분석 구성 요소입니다.

반환

AnalyzeResult

반환 형식

예외

예제

텍스트 분석


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents.indexes import SearchIndexClient
   from azure.search.documents.indexes.models import AnalyzeTextOptions

   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))

   analyze_request = AnalyzeTextOptions(text="One's <two/>", analyzer_name="standard.lucene")

   result = client.analyze_text(index_name, analyze_request)
   print(result.as_dict())

close

세션을 닫습니다 SearchIndexClient .

close() -> None

예외

create_index

새 검색 인덱스 만들기

create_index(index: SearchIndex, **kwargs: Any) -> SearchIndex

매개 변수

index
SearchIndex
필수

index 개체입니다.

반환

만든 인덱스

반환 형식

예외

예제

새 인덱스 만들기


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   fields = [
       SimpleField(name="hotelId", type=SearchFieldDataType.String, key=True),
       SimpleField(name="baseRate", type=SearchFieldDataType.Double),
       SearchableField(name="description", type=SearchFieldDataType.String, collection=True),
       ComplexField(
           name="address",
           fields=[
               SimpleField(name="streetAddress", type=SearchFieldDataType.String),
               SimpleField(name="city", type=SearchFieldDataType.String),
           ],
           collection=True,
       ),
   ]
   cors_options = CorsOptions(allowed_origins=["*"], max_age_in_seconds=60)
   scoring_profiles: List[ScoringProfile] = []
   index = SearchIndex(name=name, fields=fields, scoring_profiles=scoring_profiles, cors_options=cors_options)

   result = client.create_index(index)

create_or_update_index

새 검색 인덱스를 만들거나 인덱스가 이미 있는 경우 인덱스를 업데이트합니다.

create_or_update_index(index: SearchIndex, allow_index_downtime: bool | None = None, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> SearchIndex

매개 변수

index
SearchIndex
필수

index 개체입니다.

allow_index_downtime
bool
필수

인덱스를 몇 초 이상 오프라인으로 전환하여 새 분석기, 토큰라이저, 토큰 필터 또는 char 필터를 인덱스에 추가할 수 있습니다. 이로 인해 일시적으로 인덱싱 및 쿼리 요청이 실패합니다. 인덱스의 성능 및 쓰기 가용성은 인덱스를 업데이트한 후 몇 분 동안, 인덱스가 아주 큰 경우에는 더 긴 시간 동안 제대로 작동하지 않을 수 있습니다.

match_condition
MatchConditions

etag에 사용할 일치 조건

반환

생성되거나 업데이트된 인덱스

반환 형식

예외

예제

인덱스 업데이트


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   fields = [
       SimpleField(name="hotelId", type=SearchFieldDataType.String, key=True),
       SimpleField(name="baseRate", type=SearchFieldDataType.Double),
       SearchableField(name="description", type=SearchFieldDataType.String, collection=True),
       SearchableField(name="hotelName", type=SearchFieldDataType.String),
       ComplexField(
           name="address",
           fields=[
               SimpleField(name="streetAddress", type=SearchFieldDataType.String),
               SimpleField(name="city", type=SearchFieldDataType.String),
               SimpleField(name="state", type=SearchFieldDataType.String),
           ],
           collection=True,
       ),
   ]
   cors_options = CorsOptions(allowed_origins=["*"], max_age_in_seconds=60)
   scoring_profile = ScoringProfile(name="MyProfile")
   scoring_profiles = []
   scoring_profiles.append(scoring_profile)
   index = SearchIndex(name=name, fields=fields, scoring_profiles=scoring_profiles, cors_options=cors_options)

   result = client.create_or_update_index(index=index)

create_or_update_synonym_map

Azure Search Service 새 동의어 맵을 만들거나 기존 동의어 맵을 업데이트합니다.

create_or_update_synonym_map(synonym_map: SynonymMap, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> SynonymMap

매개 변수

synonym_map
SynonymMap
필수

동의어 Map 개체

match_condition
MatchConditions

etag에 사용할 일치 조건

반환

생성되거나 업데이트된 동의어 맵

반환 형식

예외

create_synonym_map

Azure Search Service 새 동의어 맵 만들기

create_synonym_map(synonym_map: SynonymMap, **kwargs: Any) -> SynonymMap

매개 변수

synonym_map
SynonymMap
필수

동의어 Map 개체

반환

만든 동의어 맵

반환 형식

예외

예제

동의어 맵 만들기


   synonyms = [
       "USA, United States, United States of America",
       "Washington, Wash. => WA",
   ]
   synonym_map = SynonymMap(name="test-syn-map", synonyms=synonyms)
   result = client.create_synonym_map(synonym_map)
   print("Create new Synonym Map 'test-syn-map succeeded")

delete_index

검색 인덱스와 검색 인덱스에 포함된 모든 문서를 삭제합니다. 액세스 조건을 사용하려면 이름 대신 모델을 제공해야 합니다.

delete_index(index: str | SearchIndex, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> None

매개 변수

index
str 또는 SearchIndex
필수

삭제할 인덱스 이름 또는 개체입니다.

match_condition
MatchConditions

etag에 사용할 일치 조건

예외

예제

인덱스를 삭제합니다.


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   client.delete_index(name)

delete_synonym_map

Azure Search Service 명명된 동의어 맵을 삭제합니다. 액세스 조건을 사용하려면 이름 대신 SynonymMap 모델을 제공해야 합니다. 동의어 맵의 이름을 제공하여 무조건 삭제하기에 충분합니다.

delete_synonym_map(synonym_map: str | SynonymMap, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> None

매개 변수

name
str 또는 SynonymMap
필수

삭제할 동의어 맵 이름 또는 개체

match_condition
MatchConditions

etag에 사용할 일치 조건

반환

없음

반환 형식

예외

예제

동의어 맵 삭제


   client.delete_synonym_map("test-syn-map")
   print("Synonym Map 'test-syn-map' deleted")

get_index

get_index(name: str, **kwargs: Any) -> SearchIndex

매개 변수

name
str
필수

검색할 인덱스의 이름입니다.

반환

SearchIndex 개체

반환 형식

예외

예제

인덱스 가져오기


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   result = client.get_index(name)

get_index_statistics

문서 수 및 스토리지 사용량을 포함하여 지정된 인덱스에 대한 통계를 반환합니다.

get_index_statistics(index_name: str, **kwargs: Any) -> MutableMapping[str, Any]

매개 변수

index_name
str
필수

검색할 인덱스의 이름입니다.

반환

문서 수 및 스토리지 사용량을 포함하여 지정된 인덱스에 대한 통계입니다.

반환 형식

예외

get_search_client

검색에서 작업을 수행할 클라이언트 반환

get_search_client(index_name: str, **kwargs: Any) -> SearchClient

매개 변수

index_name
str
필수

검색 인덱스의 이름

반환

SearchClient 개체

반환 형식

예외

get_service_statistics

검색 서비스에 대한 서비스 수준 통계를 가져옵니다.

get_service_statistics(**kwargs: Any) -> MutableMapping[str, Any]

반환

서비스 통계 결과입니다.

반환 형식

예외

get_synonym_map

Azure Search Service 명명된 동의어 맵 검색

get_synonym_map(name: str, **kwargs: Any) -> SynonymMap

매개 변수

name
str
필수

가져올 동의어 맵의 이름

반환

검색된 동의어 맵

반환 형식

예외

예제

동의어 맵 가져오기


   result = client.get_synonym_map("test-syn-map")
   print("Retrived Synonym Map 'test-syn-map' with synonyms")
   for syn in result.synonyms:
       print("    {}".format(syn))

get_synonym_map_names

Azure Search Service 동의어 맵 이름을 나열합니다.

get_synonym_map_names(**kwargs: Any) -> List[str]

반환

동의어 맵 목록

반환 형식

예외

get_synonym_maps

Azure Search Service 동의어 맵을 나열합니다.

get_synonym_maps(*, select: List[str] | None = None, **kwargs) -> List[SynonymMap]

매개 변수

select
list[str]

검색할 기술 세트의 최상위 속성을 선택합니다. JSON 속성 이름 목록으로 지정되거나 모든 속성에 대해 '*'로 지정됩니다. 기본값은 모든 속성입니다.

반환

동의어 맵 목록

반환 형식

예외

예제

동의어 맵 나열


   result = client.get_synonym_maps()
   names = [x.name for x in result]
   print("Found {} Synonym Maps in the service: {}".format(len(result), ", ".join(names)))

list_index_names

Azure Search Service 인덱스 이름을 나열합니다.

list_index_names(**kwargs: Any) -> ItemPaged[str]

반환

인덱스 이름 목록

반환 형식

예외

list_indexes

Azure Search Service 인덱스를 나열합니다.

list_indexes(*, select: List[str] | None = None, **kwargs: Any) -> ItemPaged[SearchIndex]

매개 변수

select
list[str]

검색할 기술 세트의 최상위 속성을 선택합니다. JSON 속성 이름 목록으로 지정되거나 모든 속성에 대해 '*'로 지정됩니다. 기본값은 모든 속성입니다.

반환

인덱스 목록

반환 형식

예외