다음을 통해 공유


SearchClient 클래스

기존 Azure 검색 인덱스와 상호 작용하는 클라이언트입니다.

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

생성자

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

매개 변수

endpoint
str
필수

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

index_name
str
필수

연결할 인덱스의 이름입니다.

credential
AzureKeyCredential 또는 TokenCredential
필수

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

api_version
str

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

audience
str

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

예제

API 키를 사용하여 SearchClient 만들기


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents import SearchClient

   service_endpoint = os.environ["AZURE_SEARCH_SERVICE_ENDPOINT"]
   index_name = os.environ["AZURE_SEARCH_INDEX_NAME"]
   key = os.environ["AZURE_SEARCH_API_KEY"]

   search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))

메서드

autocomplete

Azure Search 인덱스에서 검색 자동 완성 결과를 가져옵니다.

인덱스 정의의 일부인 컬렉션입니다. :키워드(keyword) 모드: 자동 완성 모드를 지정합니다. 기본값은 'oneTerm'입니다. 사용

대상 포진을 가져오는 'twoTerms'와 자동 완성 용어를 생성하는 동안 현재 컨텍스트를 사용하는 'oneTermWithContext'. 가능한 값으로는 'oneTerm', 'twoTerms', 'oneTermWithContext'가 있습니다.

close

세션을 닫습니다 SearchClient .

delete_documents

Azure 검색 인덱스에서 문서 삭제

삭제는 인덱스에서 지정된 문서를 제거합니다. 키 필드 이외의 삭제 작업에서 지정한 모든 필드는 무시됩니다. 문서에서 개별 필드를 제거하려면 대신 merge_documents 사용하고 필드를 명시적으로 없음으로 설정합니다.

삭제 작업은 idempotent입니다. 즉, 문서 키가 인덱스에 없더라도 해당 키로 삭제 작업을 시도하면 200 상태 코드가 발생합니다.

get_document

Azure 검색 인덱스에서 해당 키로 문서를 검색합니다.

get_document_count

Azure 검색 인덱스의 문서 수를 반환합니다.

index_documents

일괄 처리로 수행할 문서 작업을 지정합니다.

:발생 시킵니다 RequestEntityTooLargeError

merge_documents

의 문서를 Azure 검색 인덱스에서 기존 문서에 병합합니다.

병합에서는 기존 문서를 지정한 필드로 업데이트합니다. 문서가 없으면 병합하지 못합니다. 문서의 기존 필드는 병합에서 지정하는 필드로 바뀝니다. 이는 기본 형식 및 복합 형식의 컬렉션에도 적용됩니다.

merge_or_upload_documents

의 문서를 Azure 검색 인덱스에서 기존 문서에 병합하거나 아직 없는 경우 업로드합니다.

이 작업은 지정된 키가 있는 문서가 인덱스에 이미 있는 경우 merge_documents 것처럼 동작합니다. 문서가 없으면 새 문서가 있는 upload_documents 것처럼 동작합니다.

search

Azure 검색 인덱스에서 문서를 검색합니다.

suggest

Azure 검색 인덱스에서 검색 제안 결과를 가져옵니다.

문자가 100자를 넘지 않습니다. :p aram str suggester_name: 필수입니다. 인덱스 정의의 일부인 제안기 컬렉션에 지정된 제안기의 이름입니다. :키워드(keyword) str filter: 제안으로 간주되는 문서를 필터링하는 OData 식입니다. :키워드(keyword) bool use_fuzzy_matching: 제안에 유사 항목 일치를 사용할지 여부를 나타내는 값입니다.

쿼리를 만듭니다. 기본값은 false입니다. true로 설정하면 검색 텍스트에 대체되거나 누락된 문자가 있더라도 쿼리에서 용어를 찾습니다. 이는 일부 시나리오에서 더 나은 환경을 제공하지만 유사 제안 쿼리가 느리고 더 많은 리소스를 사용하므로 성능 비용이 발생합니다.

upload_documents

Azure 검색 인덱스로 문서를 업로드합니다.

업로드 작업은 문서가 새로 추가된 경우 삽입되고 문서가 있는 경우 업데이트/교체되는 "upsert"와 유사합니다. 업데이트 사례에서 모든 필드가 대체됩니다.

autocomplete

Azure Search 인덱스에서 검색 자동 완성 결과를 가져옵니다.

인덱스 정의의 일부인 컬렉션입니다. :키워드(keyword) 모드: 자동 완성 모드를 지정합니다. 기본값은 'oneTerm'입니다. 사용

대상 포진을 가져오는 'twoTerms'와 자동 완성 용어를 생성하는 동안 현재 컨텍스트를 사용하는 'oneTermWithContext'. 가능한 값으로는 'oneTerm', 'twoTerms', 'oneTermWithContext'가 있습니다.

autocomplete(search_text: str, suggester_name: str, *, mode: str | AutocompleteMode | None = None, use_fuzzy_matching: bool | None = None, highlight_post_tag: str | None = None, highlight_pre_tag: str | None = None, minimum_coverage: float | None = None, search_fields: List[str] | None = None, top: int | None = None, **kwargs) -> List[Dict]

매개 변수

filter
str

자동 완성 결과에 대해 완료된 용어를 생성하는 데 사용되는 문서를 필터링하는 OData 식입니다.

use_fuzzy_matching
bool

자동 완성 쿼리에 유사 항목 일치를 사용할지 여부를 나타내는 값입니다. 기본값은 false입니다. true로 설정하면 검색 텍스트에 대체되거나 누락된 문자가 있더라도 쿼리에서 용어를 찾습니다. 이는 일부 시나리오에서 더 나은 환경을 제공하지만 유사 항목 자동 완성 쿼리가 느리고 더 많은 리소스를 사용하므로 성능 비용이 발생합니다.

highlight_post_tag
str

강조 표시에 추가되는 문자열 태그입니다. highlightPreTag를 사용하여 설정해야 합니다. 생략하면 적중 강조 표시가 비활성화됩니다.

highlight_pre_tag
str

강조 표시 앞에 추가되는 문자열 태그입니다. highlightPostTag를 사용하여 설정해야 합니다. 생략하면 적중 강조 표시가 비활성화됩니다.

minimum_coverage
float

쿼리가 성공으로 보고되려면 자동 완성 쿼리에서 다루어야 하는 인덱스의 백분율을 나타내는 0에서 100 사이의 숫자입니다. 이 매개 변수는 복제본(replica) 하나만 있는 서비스에서도 검색 가용성을 보장하는 데 유용할 수 있습니다. 기본값은 80입니다.

search_fields
list[str]

자동 완성 용어를 쿼리할 때 고려해야 할 필드 이름 목록입니다. 대상 필드는 지정된 제안자에 포함되어야 합니다.

top
int

검색할 자동 완성 용어 수입니다. 1에서 100 사이의 값이어야 합니다. 기본값은 5입니다.

반환 형식

예제

자동 완성을 가져옵니다.


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents import SearchClient

   search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))

   results = search_client.autocomplete(search_text="bo", suggester_name="sg")

   print("Autocomplete suggestions for 'bo'")
   for result in results:
       print("    Completion: {}".format(result["text"]))

close

세션을 닫습니다 SearchClient .

close() -> None

delete_documents

Azure 검색 인덱스에서 문서 삭제

삭제는 인덱스에서 지정된 문서를 제거합니다. 키 필드 이외의 삭제 작업에서 지정한 모든 필드는 무시됩니다. 문서에서 개별 필드를 제거하려면 대신 merge_documents 사용하고 필드를 명시적으로 없음으로 설정합니다.

삭제 작업은 idempotent입니다. 즉, 문서 키가 인덱스에 없더라도 해당 키로 삭제 작업을 시도하면 200 상태 코드가 발생합니다.

delete_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]

매개 변수

documents
list[dict]
필수

삭제할 문서 목록입니다.

반환

IndexingResult 목록

반환 형식

예제

인덱스로 기존 문서 삭제


   result = search_client.delete_documents(documents=[{"hotelId": "1000"}])

   print("Delete new document succeeded: {}".format(result[0].succeeded))

get_document

Azure 검색 인덱스에서 해당 키로 문서를 검색합니다.

get_document(key: str, selected_fields: List[str] | None = None, **kwargs: Any) -> Dict

매개 변수

key
str
필수

검색할 문서의 기본 키 값입니다.

selected_fields
list[str]
필수

결과에 포함할 필드의 허용 목록

반환

Azure 검색 인덱스로 저장된 문서

반환 형식

예제

검색 인덱스에서 특정 문서를 가져옵니다.


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents import SearchClient

   search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))

   result = search_client.get_document(key="23")

   print("Details for hotel '23' are:")
   print("        Name: {}".format(result["hotelName"]))
   print("      Rating: {}".format(result["rating"]))
   print("    Category: {}".format(result["category"]))

get_document_count

Azure 검색 인덱스의 문서 수를 반환합니다.

get_document_count(**kwargs: Any) -> int

반환

인덱스의 문서 수

반환 형식

int

index_documents

일괄 처리로 수행할 문서 작업을 지정합니다.

:발생 시킵니다 RequestEntityTooLargeError

index_documents(batch: IndexDocumentsBatch, **kwargs: Any) -> List[IndexingResult]

매개 변수

batch
IndexDocumentsBatch
필수

수행할 문서 작업의 일괄 처리입니다.

반환

IndexingResult 목록

반환 형식

merge_documents

의 문서를 Azure 검색 인덱스에서 기존 문서에 병합합니다.

병합에서는 기존 문서를 지정한 필드로 업데이트합니다. 문서가 없으면 병합하지 못합니다. 문서의 기존 필드는 병합에서 지정하는 필드로 바뀝니다. 이는 기본 형식 및 복합 형식의 컬렉션에도 적용됩니다.

merge_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]

매개 변수

documents
list[dict]
필수

병합할 문서 목록입니다.

반환

IndexingResult 목록

반환 형식

예제

필드를 기존 문서에 인덱스로 병합


   result = search_client.merge_documents(documents=[{"hotelId": "1000", "rating": 4.5}])

   print("Merge into new document succeeded: {}".format(result[0].succeeded))

merge_or_upload_documents

의 문서를 Azure 검색 인덱스에서 기존 문서에 병합하거나 아직 없는 경우 업로드합니다.

이 작업은 지정된 키가 있는 문서가 인덱스에 이미 있는 경우 merge_documents 것처럼 동작합니다. 문서가 없으면 새 문서가 있는 upload_documents 것처럼 동작합니다.

merge_or_upload_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]

매개 변수

documents
list[dict]
필수

병합하거나 업로드할 문서 목록입니다.

반환

IndexingResult 목록

반환 형식

Azure 검색 인덱스에서 문서를 검색합니다.

search(search_text: str | None = None, *, include_total_count: bool | None = None, facets: List[str] | None = None, filter: str | None = None, highlight_fields: str | None = None, highlight_post_tag: str | None = None, highlight_pre_tag: str | None = None, minimum_coverage: float | None = None, order_by: List[str] | None = None, query_type: str | QueryType | None = None, scoring_parameters: List[str] | None = None, scoring_profile: str | None = None, search_fields: List[str] | None = None, search_mode: str | SearchMode | None = None, query_answer: str | QueryAnswerType | None = None, query_answer_count: int | None = None, query_answer_threshold: float | None = None, query_caption: str | QueryCaptionType | None = None, query_caption_highlight_enabled: bool | None = None, semantic_configuration_name: str | None = None, select: List[str] | None = None, skip: int | None = None, top: int | None = None, scoring_statistics: str | ScoringStatistics | None = None, session_id: str | None = None, vector_queries: List[VectorQuery] | None = None, vector_filter_mode: str | VectorFilterMode | None = None, semantic_error_mode: str | SemanticErrorMode | None = None, semantic_max_wait_in_milliseconds: int | None = None, **kwargs: Any) -> SearchItemPaged[Dict]

매개 변수

search_text
str
필수

전체 텍스트 검색 쿼리 식입니다. 모든 문서와 일치하려면 "*"를 사용하거나 이 매개 변수를 생략합니다.

include_total_count
bool

결과의 총 수를 가져올지 여부를 지정하는 값입니다. 기본값은 false입니다. 이 값을 true로 설정하면 성능에 영향을 미칠 수 있습니다. 반환되는 개수는 근사값입니다.

facets
list[str]

검색 쿼리에 적용할 패싯 식 목록입니다. 각 패싯 식에는 필드 이름이 포함되며, 필요에 따라 이름:값 쌍의 쉼표로 구분된 목록이 옵니다.

filter
str

검색 쿼리에 적용할 OData $filter 식입니다.

highlight_fields
str

적중 하이라이트에 사용할 필드 이름의 쉼표로 구분된 목록입니다. 검색 가능한 필드만 적중 항목 강조 표시에 사용할 수 있습니다.

highlight_post_tag
str

강조 표시에 추가되는 문자열 태그입니다. highlightPreTag를 사용하여 설정해야 합니다. 기본값은 입니다.

highlight_pre_tag
str

강조 표시 앞에 추가되는 문자열 태그입니다. highlightPostTag를 사용하여 설정해야 합니다. 기본값은 입니다.

minimum_coverage
float

쿼리가 성공으로 보고되려면 검색 쿼리에서 다루어야 하는 인덱스의 백분율을 나타내는 0에서 100 사이의 숫자입니다. 이 매개 변수는 복제본(replica) 하나만 있는 서비스에서도 검색 가용성을 보장하는 데 유용할 수 있습니다. 기본값은 100입니다.

order_by
list[str]

결과를 정렬할 OData $orderby 식 목록입니다. 각 식은 field name 또는 geo.distance() 또는 search.score() 함수에 대한 호출일 수 있습니다. 각 식 뒤에 asc를 추가하여 오름차순을 나타내고 내림차순을 나타내도록 desc할 수 있습니다. 기본값은 오름차순입니다. 동률은 문서의 일치 점수로 구분됩니다. OrderBy가 지정되지 않은 경우 기본 정렬 순서는 문서 일치 점수별로 내림차순입니다. 최대 32개의 $orderby 절이 있을 수 있습니다.

query_type
str 또는 QueryType

검색 쿼리의 구문을 지정하는 값입니다. 기본값은 'simple'입니다. 쿼리에서 Lucene 쿼리 구문을 사용하는 경우 'full'을 사용합니다. 가능한 값은 'simple', 'full', "semantic"입니다.

scoring_parameters
list[str]

name-values 형식을 사용하여 점수 매기기 함수(예: referencePointParameter)에 사용할 매개 변수 값 목록입니다. 예를 들어 점수 매기기 프로필이 'mylocation'이라는 매개 변수를 사용하여 함수를 정의하는 경우 매개 변수 문자열은 따옴표 없이 "mylocation–122.2,44.8"입니다.

scoring_profile
str

결과를 정렬하기 위해 일치하는 문서의 일치 점수를 계산하는 점수 매기기 프로필의 이름입니다.

search_fields
list[str]

전체 텍스트 검색을 scope 필드 이름 목록입니다. 전체 Lucene 쿼리에서 필드 검색(fieldName:searchExpression)을 사용하는 경우 필드가 있는 각 검색 식의 필드 이름이 이 매개 변수에 나열된 필드 이름보다 우선합니다.

search_mode
str 또는 SearchMode

문서를 일치 항목으로 계산하기 위해 검색어 중 하나 또는 전부를 일치시켜야 하는지 여부를 지정하는 값입니다. 가능한 값은 'any', 'all'입니다.

query_answer
str 또는 QueryAnswerType

이 매개 변수는 쿼리 형식이 '의미 체계'인 경우에만 유효합니다. 설정된 경우 쿼리는 가장 높은 순위의 문서의 주요 구절에서 추출된 답변을 반환합니다. 가능한 값은 "none", "extractive"입니다.

query_answer_count
int

이 매개 변수는 쿼리 형식이 '의미 체계'이고 쿼리 답변이 '추출'인 경우에만 유효합니다. 반환된 답변 수를 구성합니다. 기본 개수는 1입니다.

query_answer_threshold
float

이 매개 변수는 쿼리 형식이 '의미 체계'이고 쿼리 답변이 '추출'인 경우에만 유효합니다. 신뢰도 임계값 수를 구성합니다. 기본값은 0.7입니다.

query_caption
str 또는 QueryCaptionType

이 매개 변수는 쿼리 형식이 '의미 체계'인 경우에만 유효합니다. 설정된 경우 쿼리는 가장 높은 순위의 문서의 주요 구절에서 추출된 캡션을 반환합니다. 기본값은 'None'입니다. 가능한 값은 "none", "extractive"입니다.

query_caption_highlight_enabled
bool

이 매개 변수는 쿼리 캡션 '추출'으로 설정된 경우 쿼리 형식이 '의미 체계'인 경우에만 유효합니다. 강조 표시를 사용할지 여부를 결정합니다. 기본값은 'true'입니다.

semantic_configuration_name
str

형식 의미 체계의 쿼리에 대한 문서를 처리할 때 사용할 의미 체계 구성의 이름입니다.

select
list[str]

검색할 필드 목록입니다. 지정하지 않으면 스키마에서 검색 가능으로 표시된 모든 필드가 포함됩니다.

skip
int

건너뛸 검색 결과의 수입니다. 이 값은 100,000보다 클 수 없습니다. 문서를 순서대로 검사해야 하지만 이 제한으로 인해 $skip 사용할 수 없는 경우 완전히 정렬된 키에 $orderby 사용하고 범위 쿼리를 사용하여 $filter 것이 좋습니다.

top
int

검색할 검색 결과의 수입니다. $skip 함께 사용하여 검색 결과의 클라이언트 쪽 페이징을 구현할 수 있습니다. 서버 쪽 페이징으로 인해 결과가 잘리는 경우 응답에는 결과의 다음 페이지에 대한 다른 검색 요청을 발급하는 데 사용할 수 있는 연속 토큰이 포함됩니다.

scoring_statistics
str 또는 ScoringStatistics

더 일관된 채점을 위해 점수 매기기 통계(예: 문서 빈도)를 전역적으로 계산할지, 아니면 대기 시간을 낮추기 위해 로컬로 계산할지를 지정하는 값입니다. 기본값은 'local'입니다. 채점하기 전에 'global'을 사용하여 점수 매기기 통계를 전역적으로 집계합니다. 전역 점수 매기기 통계를 사용하면 검색 쿼리의 대기 시간을 늘릴 수 있습니다. 가능한 값은 "local", "global"입니다.

session_id
str

더 일관된 결과를 얻는 데 도움이 될 수 있는 고정 세션을 만드는 데 사용할 값입니다. 동일한 sessionId를 사용하는 한 동일한 복제본(replica) 집합을 대상으로 하여 최선의 노력을 기울입니다. 동일한 sessionID 값을 반복적으로 다시 사용하면 복제본 간에 요청의 부하 분산을 방해하고 검색 서비스의 성능에 부정적인 영향을 줄 수 있습니다. sessionId로 사용된 값은 '_' 문자로 시작할 수 없습니다.

semantic_error_mode
str 또는 SemanticErrorMode

사용자가 의미 체계 호출이 완전히 실패할지(기본/현재 동작) 또는 부분 결과를 반환할지 선택할 수 있습니다. 알려진 값은 "partial" 및 "fail"입니다.

semantic_max_wait_in_milliseconds
int

사용자가 요청이 실패하기 전에 의미 체계 보강이 처리를 완료하는 데 걸리는 시간에 상한을 설정할 수 있습니다.

vector_queries
list[VectorQuery]

벡터 및 하이브리드 검색 쿼리에 대한 쿼리 매개 변수입니다.

vector_filter_mode
str 또는 VectorFilterMode

벡터 검색이 수행되기 전이나 후에 필터가 적용되는지 여부를 결정합니다. 기본값은 'preFilter'입니다. 알려진 값은 "postFilter" 및 "preFilter"입니다.

반환 형식

예제

검색 결과 패싯을 가져옵니다.


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents import SearchClient

   search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))

   results = search_client.search(search_text="WiFi", facets=["category,count:3", "parkingIncluded"])

   facets: Dict[str, List[str]] = cast(Dict[str, List[str]], results.get_facets())

   print("Catgory facet counts for hotels:")
   for facet in facets["category"]:
       print("    {}".format(facet))

suggest

Azure 검색 인덱스에서 검색 제안 결과를 가져옵니다.

문자가 100자를 넘지 않습니다. :p aram str suggester_name: 필수입니다. 인덱스 정의의 일부인 제안기 컬렉션에 지정된 제안기의 이름입니다. :키워드(keyword) str filter: 제안으로 간주되는 문서를 필터링하는 OData 식입니다. :키워드(keyword) bool use_fuzzy_matching: 제안에 유사 항목 일치를 사용할지 여부를 나타내는 값입니다.

쿼리를 만듭니다. 기본값은 false입니다. true로 설정하면 검색 텍스트에 대체되거나 누락된 문자가 있더라도 쿼리에서 용어를 찾습니다. 이는 일부 시나리오에서 더 나은 환경을 제공하지만 유사 제안 쿼리가 느리고 더 많은 리소스를 사용하므로 성능 비용이 발생합니다.

suggest(search_text: str, suggester_name: str, *, use_fuzzy_matching: bool | None = None, highlight_post_tag: str | None = None, highlight_pre_tag: str | None = None, minimum_coverage: float | None = None, order_by: List[str] | None = None, search_fields: List[str] | None = None, select: List[str] | None = None, top: int | None = None, **kwargs) -> List[Dict]

매개 변수

highlight_post_tag
str

강조 표시에 추가되는 문자열 태그입니다. highlightPreTag를 사용하여 설정해야 합니다. 생략하면 추천 항목의 적중 강조 표시가 비활성화됩니다.

highlight_pre_tag
str

강조 표시 앞에 추가되는 문자열 태그입니다. highlightPostTag를 사용하여 설정해야 합니다. 생략하면 추천 항목의 적중 강조 표시가 비활성화됩니다.

minimum_coverage
float

쿼리가 성공으로 보고되려면 제안 쿼리에서 다루어야 하는 인덱스의 백분율을 나타내는 0에서 100 사이의 숫자입니다. 이 매개 변수는 복제본(replica) 하나만 있는 서비스에서도 검색 가용성을 보장하는 데 유용할 수 있습니다. 기본값은 80입니다.

order_by
list[str]

결과를 정렬할 OData $orderby 식 목록입니다. 각 식은 field name 또는 geo.distance() 또는 search.score() 함수에 대한 호출일 수 있습니다. 각 식 뒤에 asc를 추가하여 오름차순을 나타내거나 내림차순을 나타내는 desc를 사용할 수 있습니다. 기본값은 오름차순입니다. 동률은 문서의 일치 점수로 구분됩니다. $orderby 지정하지 않으면 기본 정렬 순서가 문서 일치 점수별로 내림차순입니다. 최대 32개의 $orderby 절이 있을 수 있습니다.

search_fields
list[str]

지정된 검색 텍스트를 검색할 필드 이름 목록입니다. 대상 필드는 지정된 제안자에 포함되어야 합니다.

select
list[str]

검색할 필드 목록입니다. 지정되지 않은 경우 키 필드만 결과에 포함됩니다.

top
int

검색할 제안 수입니다. 값은 1에서 100 사이의 숫자여야 합니다. 기본값은 5입니다.

반환

문서 목록입니다.

반환 형식

예제

검색 제안을 가져옵니다.


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents import SearchClient

   search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))

   results = search_client.suggest(search_text="coffee", suggester_name="sg")

   print("Search suggestions for 'coffee'")
   for result in results:
       hotel = search_client.get_document(key=result["hotelId"])
       print("    Text: {} for Hotel: {}".format(repr(result["text"]), hotel["hotelName"]))

upload_documents

Azure 검색 인덱스로 문서를 업로드합니다.

업로드 작업은 문서가 새로 추가된 경우 삽입되고 문서가 있는 경우 업데이트/교체되는 "upsert"와 유사합니다. 업데이트 사례에서 모든 필드가 대체됩니다.

upload_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]

매개 변수

documents
list[dict]
필수

업로드할 문서 목록입니다.

반환

IndexingResult 목록

반환 형식

예제

인덱스로 새 문서 업로드


   DOCUMENT = {
       "category": "Hotel",
       "hotelId": "1000",
       "rating": 4.0,
       "rooms": [],
       "hotelName": "Azure Inn",
   }

   result = search_client.upload_documents(documents=[DOCUMENT])

   print("Upload of new document succeeded: {}".format(result[0].succeeded))