SearchClient Klas

Een client voor interactie met een bestaande Azure Search-index.

Overname
azure.search.documents._headers_mixin.HeadersMixin
SearchClient

Constructor

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

Parameters

endpoint
str
Vereist

Het URL-eindpunt van een Azure Search-service

index_name
str
Vereist

De naam van de index waarmee u verbinding wilt maken

credential
AzureKeyCredential of TokenCredential
Vereist

Een referentie voor het autoriseren van zoekclientaanvragen

api_version
str

De search-API-versie die moet worden gebruikt voor aanvragen.

audience
str

stelt de doelgroep in die moet worden gebruikt voor verificatie met Azure Active Directory (AAD). De doelgroep wordt niet meegenomen bij het gebruik van een gedeelde sleutel. Als er geen doelgroep wordt opgegeven, wordt uitgegaan van de doelgroep van de openbare cloud.

Voorbeelden

De SearchClient maken met een API-sleutel.


   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))

Methoden

autocomplete

Resultaten van automatische voltooiing van zoekopdrachten ophalen uit de Azure Search-index.

verzameling die deel uitmaakt van de indexdefinitie. :trefwoordmodus: hiermee geeft u de modus voor Automatisch aanvullen op. De standaardwaarde is 'oneTerm'. Gebruik

'twoTerms' om shingles en 'oneTermWithContext' te krijgen om de huidige context te gebruiken tijdens het produceren van automatisch ingevulde termen. Mogelijke waarden zijn: 'oneTerm', 'twoTerms', 'oneTermWithContext'.

close

Sluit de SearchClient sessie.

delete_documents

Documenten verwijderen uit de Azure Search-index

Met Verwijderen wordt het opgegeven document uit de index verwijderd. Elk veld dat u opgeeft in een verwijderbewerking, behalve het sleutelveld, wordt genegeerd. Als u een afzonderlijk veld uit een document wilt verwijderen, gebruikt u in plaats daarvan merge_documents en stelt u het veld expliciet in op Geen.

Verwijderingsbewerkingen zijn idempotent. Dat wil dat zelfs als er geen documentsleutel in de index bestaat, een verwijderingsbewerking met die sleutel resulteert in een statuscode 200.

get_document

Haal een document op uit de Azure Search-index met de bijbehorende sleutel.

get_document_count

Retourneer het aantal documenten in de Azure Search-index.

index_documents

Geef een documentbewerking op die als batch moet worden uitgevoerd.

:Verhoogt RequestEntityTooLargeError

merge_documents

Voeg documenten samen met bestaande documenten in de Azure Search-index.

Met Samenvoegen wordt een bestaand document bijgewerkt met de opgegeven velden. Als het document niet bestaat, mislukt de samenvoeging. Alle velden die u in een samenvoeging opgeeft, vervangen de bestaande velden in het document, Dit geldt ook voor verzamelingen van primitieve en complexe typen.

merge_or_upload_documents

Voeg documenten samen met bestaande documenten in de Azure Search-index of upload ze als ze nog niet bestaan.

Deze actie gedraagt zich als merge_documents als er al een document met de opgegeven sleutel in de index bestaat. Als het document niet bestaat, gedraagt het zich als upload_documents met een nieuw document.

search

Zoek in de Azure Search-index naar documenten.

suggest

Resultaten van zoeksuggesties ophalen uit de Azure Search-index.

en niet meer dan 100 tekens. :p aram str suggester_name: vereist. De naam van de suggestiefunctie zoals opgegeven in de verzameling suggesters die deel uitmaakt van de indexdefinitie. :keyword str filter: een OData-expressie waarmee de documenten worden gefilterd die in aanmerking komen voor suggesties. :keyword bool use_fuzzy_matching: een waarde die aangeeft of fuzzy matching moet worden gebruikt voor de suggesties

Query. De standaardinstelling is onwaar. Als deze optie is ingesteld op true, vindt de query termen, zelfs als er een vervangend of ontbrekend teken in de zoektekst staat. Hoewel dit in sommige scenario's een betere ervaring biedt, gaat dit gepaard met prestatiekosten omdat fuzzy suggesties query's langzamer zijn en meer resources verbruiken.

upload_documents

Documenten uploaden naar de Azure Search-index.

Een uploadactie is vergelijkbaar met een 'upsert' waarbij het document wordt ingevoegd als het nieuw is en bijgewerkt/vervangen als het bestaat. Alle velden worden vervangen in de updatecase.

autocomplete

Resultaten van automatische voltooiing van zoekopdrachten ophalen uit de Azure Search-index.

verzameling die deel uitmaakt van de indexdefinitie. :trefwoordmodus: hiermee geeft u de modus voor Automatisch aanvullen op. De standaardwaarde is 'oneTerm'. Gebruik

'twoTerms' om shingles en 'oneTermWithContext' te krijgen om de huidige context te gebruiken tijdens het produceren van automatisch ingevulde termen. Mogelijke waarden zijn: '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]

Parameters

filter
str

Een OData-expressie die de documenten filtert die worden gebruikt om voltooide termen te produceren voor het resultaat automatisch aanvullen.

use_fuzzy_matching
bool

Een waarde die aangeeft of fuzzy matching moet worden gebruikt voor de query voor automatisch aanvullen. De standaardinstelling is onwaar. Als de query is ingesteld op true, worden termen gevonden, zelfs als er een vervangend of ontbrekend teken in de zoektekst staat. Hoewel dit in sommige scenario's een betere ervaring biedt, worden er prestatiekosten in rekening gebracht omdat fuzzy query's voor automatisch aanvullen langzamer zijn en meer resources verbruiken.

highlight_post_tag
str

Een tekenreekstag die wordt toegevoegd aan hit-markeringen. Moet worden ingesteld met highlightPreTag. Als u dit weglaat, is markeren van treffers uitgeschakeld.

highlight_pre_tag
str

Een tekenreekstag die is voorbereid om markeringen te raken. Moet worden ingesteld met highlightPostTag. Als u dit weglaat, is markeren van treffers uitgeschakeld.

minimum_coverage
float

Een getal tussen 0 en 100 dat het percentage van de index aangeeft dat moet worden gedekt door een query voor automatisch aanvullen om de query als geslaagd te kunnen rapporteren. Deze parameter kan handig zijn om de beschikbaarheid van zoekopdrachten te garanderen, zelfs voor services met slechts één replica. De standaardwaarde is 80.

search_fields
list[str]

De lijst met veldnamen die moeten worden overwogen bij het uitvoeren van query's op automatisch ingevulde termen. Doelvelden moeten worden opgenomen in de opgegeven suggestiefunctie.

top
int

Het aantal automatisch ingevulde termen dat moet worden opgehaald. Dit moet een waarde zijn tussen 1 en 100. De standaardwaarde is 5.

Retourtype

Voorbeelden

Een automatische voltooiing ophalen.


   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

Sluit de SearchClient sessie.

close() -> None

delete_documents

Documenten verwijderen uit de Azure Search-index

Met Verwijderen wordt het opgegeven document uit de index verwijderd. Elk veld dat u opgeeft in een verwijderbewerking, behalve het sleutelveld, wordt genegeerd. Als u een afzonderlijk veld uit een document wilt verwijderen, gebruikt u in plaats daarvan merge_documents en stelt u het veld expliciet in op Geen.

Verwijderingsbewerkingen zijn idempotent. Dat wil dat zelfs als er geen documentsleutel in de index bestaat, een verwijderingsbewerking met die sleutel resulteert in een statuscode 200.

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

Parameters

documents
list[dict]
Vereist

Een lijst met documenten die u wilt verwijderen.

Retouren

Lijst met IndexingResult

Retourtype

Voorbeelden

Bestaande documenten naar een index verwijderen


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

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

get_document

Haal een document op uit de Azure Search-index met de bijbehorende sleutel.

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

Parameters

key
str
Vereist

De primaire sleutelwaarde voor het document dat moet worden opgehaald

selected_fields
list[str]
Vereist

een acceptatielijst met velden die moeten worden opgenomen in de resultaten

Retouren

Het document zoals opgeslagen in de Azure Search-index

Retourtype

Voorbeelden

Haal een specifiek document op uit de zoekindex.


   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

Retourneer het aantal documenten in de Azure Search-index.

get_document_count(**kwargs: Any) -> int

Retouren

Het aantal documenten in de index

Retourtype

int

index_documents

Geef een documentbewerking op die als batch moet worden uitgevoerd.

:Verhoogt RequestEntityTooLargeError

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

Parameters

batch
IndexDocumentsBatch
Vereist

Een batch met documentbewerkingen die moeten worden uitgevoerd.

Retouren

Lijst met IndexingResult

Retourtype

merge_documents

Voeg documenten samen met bestaande documenten in de Azure Search-index.

Met Samenvoegen wordt een bestaand document bijgewerkt met de opgegeven velden. Als het document niet bestaat, mislukt de samenvoeging. Alle velden die u in een samenvoeging opgeeft, vervangen de bestaande velden in het document, Dit geldt ook voor verzamelingen van primitieve en complexe typen.

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

Parameters

documents
list[dict]
Vereist

Een lijst met samen te voegen documenten.

Retouren

Lijst met IndexingResult

Retourtype

Voorbeelden

Velden in bestaande documenten samenvoegen met een index


   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

Voeg documenten samen met bestaande documenten in de Azure Search-index of upload ze als ze nog niet bestaan.

Deze actie gedraagt zich als merge_documents als er al een document met de opgegeven sleutel in de index bestaat. Als het document niet bestaat, gedraagt het zich als upload_documents met een nieuw document.

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

Parameters

documents
list[dict]
Vereist

Een lijst met documenten die u wilt samenvoegen of uploaden.

Retouren

Lijst met IndexingResult

Retourtype

Zoek in de Azure Search-index naar documenten.

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]

Parameters

search_text
str
Vereist

Een zoekquery-expressie in volledige tekst; Gebruik *of laat deze parameter weg om overeen te komen met alle documenten.

include_total_count
bool

Een waarde die aangeeft of het totale aantal resultaten moet worden opgehaald. De standaardinstelling is onwaar. Het instellen van deze waarde op true kan invloed hebben op de prestaties. Houd er rekening mee dat het geretourneerde aantal een benadering is.

facets
list[str]

De lijst met facetexpressies die moeten worden toegepast op de zoekquery. Elke facetexpressie bevat een veldnaam, eventueel gevolgd door een door komma's gescheiden lijst met naam:waardeparen.

filter
str

De OData-$filter expressie die moet worden toegepast op de zoekquery.

highlight_fields
str

De door komma's gescheiden lijst met veldnamen die moeten worden gebruikt voor treffers. Alleen doorzoekbare velden kunnen worden gebruikt voor het markeren van treffers.

highlight_post_tag
str

Een tekenreekstag die wordt toegevoegd aan hit-markeringen. Moet worden ingesteld met highlightPreTag. De standaardinstelling is .

highlight_pre_tag
str

Een tekenreekstag die is voorbereid om markeringen te raken. Moet worden ingesteld met highlightPostTag. De standaardinstelling is .

minimum_coverage
float

Een getal tussen 0 en 100 dat het percentage van de index aangeeft dat door een zoekquery moet worden gedekt om de query als geslaagd te kunnen rapporteren. Deze parameter kan handig zijn om de beschikbaarheid van zoekopdrachten te garanderen, zelfs voor services met slechts één replica. De standaardwaarde is 100.

order_by
list[str]

De lijst met OData-$orderby expressies waarop de resultaten moeten worden gesorteerd. Elke expressie kan een veldnaam zijn of een aanroep naar de functies geo.distance() of search.score(). Elke expressie kan worden gevolgd door asc om oplopend aan te geven en desc om aflopend aan te geven. De standaardwaarde is oplopende volgorde. Ties worden verbroken door de matchscores van documenten. Als er geen OrderBy is opgegeven, is de standaardsorteervolgorde aflopend op documentmatchscore. Er kunnen maximaal 32 $orderby-componenten zijn.

query_type
str of QueryType

Een waarde die de syntaxis van de zoekquery aangeeft. De standaardwaarde is 'eenvoudig'. Gebruik 'volledig' als uw query gebruikmaakt van de Lucene-querysyntaxis. Mogelijke waarden zijn: 'eenvoudig', 'volledig', 'semantisch'.

scoring_parameters
list[str]

De lijst met parameterwaarden die moeten worden gebruikt in scorefuncties (bijvoorbeeld referencePointParameter) met behulp van de notatie name-values. Als het scoreprofiel bijvoorbeeld een functie definieert met de parameter 'mylocation', wordt de parametertekenreeks 'mylocation-122.2,44.8' (zonder de aanhalingstekens).

scoring_profile
str

De naam van een scoreprofiel voor het evalueren van matchscores voor overeenkomende documenten om de resultaten te sorteren.

search_fields
list[str]

De lijst met veldnamen waarop het bereik van de zoekopdracht in volledige tekst moet worden bereikt. Wanneer u veldzoekopdrachten (fieldName:searchExpression) gebruikt in een volledige Lucene-query, hebben de veldnamen van elke veldzoekexpressie voorrang op alle veldnamen die in deze parameter worden vermeld.

search_mode
str of SearchMode

Een waarde die aangeeft of een of meer zoektermen moeten worden vergeleken om het document als een overeenkomst te kunnen tellen. Mogelijke waarden zijn: 'any', 'all'.

query_answer
str of QueryAnswerType

Deze parameter is alleen geldig als het querytype 'semantisch' is. Als dit is ingesteld, retourneert de query antwoorden die zijn geëxtraheerd uit sleutelpassages in de hoogst gerangschikte documenten. Mogelijke waarden zijn: 'none', 'extractive'.

query_answer_count
int

Deze parameter is alleen geldig als het querytype 'semantisch' is en het queryantwoord 'extractief' is. Hiermee configureert u het aantal geretourneerde antwoorden. Het standaardaantal is 1.

query_answer_threshold
float

Deze parameter is alleen geldig als het querytype 'semantisch' is en het queryantwoord 'extractief' is. Hiermee configureert u het aantal betrouwbaarheidsdrempelwaarden. Het standaardaantal is 0,7.

query_caption
str of QueryCaptionType

Deze parameter is alleen geldig als het querytype 'semantisch' is. Indien ingesteld, retourneert de query bijschriften die zijn geëxtraheerd uit sleutelpassages in de hoogst gerangschikte documenten. De standaardwaarde is 'Geen'. Mogelijke waarden zijn: 'none', 'extractive'.

query_caption_highlight_enabled
bool

Deze parameter is alleen geldig als het querytype 'semantisch' is wanneer query onderschrift is ingesteld op 'extractief'. Bepaalt of markeren is ingeschakeld. De standaardwaarde is 'true'.

semantic_configuration_name
str

De naam van de semantische configuratie die wordt gebruikt bij het verwerken van documenten voor query's van het type semantisch.

select
list[str]

De lijst met velden die moeten worden opgehaald. Als u dit niet hebt opgegeven, worden alle velden die zijn gemarkeerd als ophaalbaar in het schema opgenomen.

skip
int

Het aantal zoekresultaten dat moet worden overgeslagen. Deze waarde mag niet groter zijn dan 100.000. Als u documenten opeenvolgend moet scannen, maar $skip niet kunt gebruiken vanwege deze beperking, kunt u overwegen om $orderby te gebruiken op een volledig geordende sleutel en $filter met een bereikquery.

top
int

Het aantal zoekresultaten dat moet worden opgehaald. Dit kan worden gebruikt in combinatie met $skip om paging aan de clientzijde van zoekresultaten te implementeren. Als de resultaten worden afgekapt vanwege paging aan de serverzijde, bevat het antwoord een vervolgtoken dat kan worden gebruikt om een andere zoekaanvraag uit te voeren voor de volgende pagina met resultaten.

scoring_statistics
str of ScoringStatistics

Een waarde die aangeeft of we scorestatistieken (zoals de documentfrequentie) globaal willen berekenen voor een consistentere score of lokaal voor een lagere latentie. De standaardwaarde is 'lokaal'. Gebruik 'globaal' om scorestatistieken globaal samen te voegen voordat ze worden scoren. Het gebruik van globale scorestatistieken kan de latentie van zoekquery's verhogen. Mogelijke waarden zijn: 'local', 'global'.

session_id
str

Een waarde die moet worden gebruikt om een sticky-sessie te maken, waarmee u consistentere resultaten kunt krijgen. Zolang dezelfde sessionId wordt gebruikt, wordt er een poging gedaan om dezelfde replicaset te targeten. Wees voorzichtig dat het herhaaldelijk opnieuw gebruiken van dezelfde sessionID-waarden de taakverdeling van de aanvragen tussen replica's kan verstoren en de prestaties van de zoekservice nadelig kan beïnvloeden. De waarde die wordt gebruikt als sessionId, kan niet beginnen met een '_'-teken.

semantic_error_mode
str of SemanticErrorMode

Hiermee kan de gebruiker kiezen of een semantische aanroep volledig moet mislukken (standaard/huidig gedrag) of om gedeeltelijke resultaten te retourneren. Bekende waarden zijn: 'gedeeltelijk' en 'mislukt'.

semantic_max_wait_in_milliseconds
int

Hiermee kan de gebruiker een bovengrens instellen voor de hoeveelheid tijd die nodig is voor semantische verrijking om de verwerking te voltooien voordat de aanvraag mislukt.

vector_queries
list[VectorQuery]

De queryparameters voor vector- en hybride zoekquery's.

vector_filter_mode
str of VectorFilterMode

Bepaalt of filters worden toegepast voor of nadat de vectorzoekopdracht is uitgevoerd. De standaardwaarde is 'preFilter'. Bekende waarden zijn: 'postFilter' en 'preFilter'.

Retourtype

Voorbeelden

Facetten van zoekresultaten ophalen.


   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

Resultaten van zoeksuggesties ophalen uit de Azure Search-index.

en niet meer dan 100 tekens. :p aram str suggester_name: vereist. De naam van de suggestiefunctie zoals opgegeven in de verzameling suggesters die deel uitmaakt van de indexdefinitie. :keyword str filter: een OData-expressie waarmee de documenten worden gefilterd die in aanmerking komen voor suggesties. :keyword bool use_fuzzy_matching: een waarde die aangeeft of fuzzy matching moet worden gebruikt voor de suggesties

Query. De standaardinstelling is onwaar. Als deze optie is ingesteld op true, vindt de query termen, zelfs als er een vervangend of ontbrekend teken in de zoektekst staat. Hoewel dit in sommige scenario's een betere ervaring biedt, gaat dit gepaard met prestatiekosten omdat fuzzy suggesties query's langzamer zijn en meer resources verbruiken.

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]

Parameters

highlight_post_tag
str

Een tekenreekstag die wordt toegevoegd aan hit-markeringen. Moet worden ingesteld met highlightPreTag. Als u dit weglaat, is het markeren van suggesties uitgeschakeld.

highlight_pre_tag
str

Een tekenreekstag die is voorbereid om markeringen te raken. Moet worden ingesteld met highlightPostTag. Als u dit weglaat, is het markeren van suggesties uitgeschakeld.

minimum_coverage
float

Een getal tussen 0 en 100 dat het percentage van de index aangeeft dat moet worden gedekt door een suggestiequery om de query als geslaagd te kunnen rapporteren. Deze parameter kan nuttig zijn om de beschikbaarheid van zoekopdrachten te garanderen, zelfs voor services met slechts één replica. De standaardwaarde is 80.

order_by
list[str]

De lijst met OData-$orderby expressies waarop de resultaten moeten worden gesorteerd. Elke expressie kan een veldnaam zijn of een aanroep naar de functies geo.distance() of search.score(). Elke expressie kan worden gevolgd door asc om oplopend aan te geven, of desc om aflopend aan te geven. De standaardwaarde is oplopende volgorde. Bindingen worden verbroken door de matchscores van documenten. Als er geen $orderby is opgegeven, is de standaardsorteervolgorde aflopend op documentmatchscore. Er kunnen maximaal 32 $orderby componenten zijn.

search_fields
list[str]

De lijst met veldnamen om te zoeken naar de opgegeven zoektekst. Doelvelden moeten worden opgenomen in de opgegeven suggestiefunctie.

select
list[str]

De lijst met velden die moeten worden opgehaald. Als u dit niet opgeeft, wordt alleen het sleutelveld opgenomen in de resultaten.

top
int

Het aantal suggesties dat moet worden opgehaald. De waarde moet een getal tussen 1 en 100 zijn. De standaardwaarde is 5.

Retouren

Lijst met documenten.

Retourtype

Voorbeelden

Zoeksuggesties ophalen.


   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

Documenten uploaden naar de Azure Search-index.

Een uploadactie is vergelijkbaar met een 'upsert' waarbij het document wordt ingevoegd als het nieuw is en bijgewerkt/vervangen als het bestaat. Alle velden worden vervangen in de updatecase.

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

Parameters

documents
list[dict]
Vereist

Een lijst met documenten die u wilt uploaden.

Retouren

Lijst met IndexingResult

Retourtype

Voorbeelden

Nieuwe documenten uploaden naar een index


   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))