SearchClient Sınıf
Mevcut Azure arama diziniyle etkileşime geçmek için bir istemci.
- Devralma
-
azure.search.documents._headers_mixin.HeadersMixinSearchClient
Oluşturucu
SearchClient(endpoint: str, index_name: str, credential: AzureKeyCredential | AsyncTokenCredential, **kwargs: Any)
Parametreler
- credential
- AzureKeyCredential veya AsyncTokenCredential
Arama istemcisi isteklerini yetkilendirmek için bir kimlik bilgisi
- api_version
- str
İstekler için kullanılacak Arama API'sinin sürümü.
- audience
- str
, Azure Active Directory (AAD) ile kimlik doğrulaması için kullanılacak hedef kitleyi ayarlar. Paylaşılan anahtar kullanılırken hedef kitle dikkate alınmaz. Hedef kitle sağlanmazsa genel bulut hedef kitlesi varsayılır.
Örnekler
Api anahtarıyla SearchClient oluşturma.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.aio 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))
Yöntemler
autocomplete |
Azure arama dizininden arama otomatik tamamlama sonuçlarını alın. dizin tanımının parçası olan koleksiyon. :anahtar sözcük modu: Otomatik Tamamlama modunu belirtir. Varsayılan değer 'oneTerm'dir. Kullanın 'twoTerms', otomatik olarak tamamlanan terimleri oluştururken geçerli bağlamı kullanmak için shingle'ları ve 'oneTermWithContext'i alır. Olası değerler şunlardır: 'oneTerm', 'twoTerms', 'oneTermWithContext'. |
close |
SearchClient Oturumu kapatın. |
delete_documents |
Azure arama dizininden belgeleri silme Delete, belirtilen belgeyi dizinden kaldırır. Silme işleminde belirttiğiniz anahtar alanı dışında herhangi bir alan yoksayılır. Belgeden tek bir alanı kaldırmak istiyorsanız, bunun yerine merge_documents kullanın ve alanı açıkça Yok olarak ayarlayın. Silme işlemleri eşgüçlüdür. Başka bir ifadeyle, dizinde bir belge anahtarı olmasa bile, bu anahtarla silme işleminin denenmesi 200 durum koduna neden olur. |
get_document |
Azure arama dizininden anahtarına göre bir belge alın. |
get_document_count |
Azure arama dizinindeki belge sayısını döndürür. |
index_documents |
Toplu işlem olarak gerçekleştirilecek belge işlemlerini belirtin. :Harekete geçiren RequestEntityTooLargeError |
merge_documents |
içindeki belgeleri Azure arama dizinindeki mevcut belgelerle birleştirin. Birleştir, varolan bir belgeyi belirtilen alanlarla güncelleştirir. Belge yoksa birleştirme başarısız olur. Birleştirmede belirttiğiniz herhangi bir alan belgede var olan alanın yerini alır. Bu, ilkel ve karmaşık tür koleksiyonları için de geçerlidir. |
merge_or_upload_documents |
içindeki belgeleri Azure arama dizinindeki mevcut belgelerle birleştirin veya henüz yoksa karşıya yükleyin. Bu eylem, belirtilen anahtara sahip bir belge dizinde zaten varsa merge_documents gibi davranır. Belge yoksa, yeni bir belgeyle upload_documents gibi davranır. |
search |
Azure arama dizininde belgeleri arayın. |
suggest |
Azure arama dizininden arama önerisi sonuçları alın. ve en fazla 100 karakterden oluşur. :p aram str suggester_name: Gerekli. Dizin tanımının parçası olan önerici koleksiyonunda belirtildiği gibi önericinin adı. :keyword str filtresi: Öneriler için göz önünde bulundurulan belgeleri filtreleyen bir OData ifadesi. :keyword bool use_fuzzy_matching: Öneriler için benzer öğe eşleştirmesinin kullanılıp kullanılmayacağını belirten değer Sorgu. Varsayılan değer false’tur. True olarak ayarlandığında, arama metninde yerine başka bir karakter veya eksik karakter olsa bile sorgu terimleri bulur. Bu, bazı senaryolarda daha iyi bir deneyim sağlasa da, benzer öneriler sorguları daha yavaş olduğundan ve daha fazla kaynak tükettiği için performans maliyetine neden olur. |
upload_documents |
Belgeleri Azure arama dizinine yükleyin. Karşıya yükleme eylemi, yeniyse belgenin eklendiği ve varsa güncelleştirildiği/değiştirileceği "upsert" eylemine benzer. Güncelleştirme durumunda tüm alanlar değiştirilir. |
autocomplete
Azure arama dizininden arama otomatik tamamlama sonuçlarını alın.
dizin tanımının parçası olan koleksiyon. :anahtar sözcük modu: Otomatik Tamamlama modunu belirtir. Varsayılan değer 'oneTerm'dir. Kullanın
'twoTerms', otomatik olarak tamamlanan terimleri oluştururken geçerli bağlamı kullanmak için shingle'ları ve 'oneTermWithContext'i alır. Olası değerler şunlardır: 'oneTerm', 'twoTerms', 'oneTermWithContext'.
async 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]
Parametreler
- filter
- str
Otomatik Tamamlama sonucu için tamamlanmış terimler üretmek için kullanılan belgeleri filtreleyen bir OData ifadesi.
- use_fuzzy_matching
- bool
Otomatik tamamlama sorgusu için benzer öğe eşleştirmesinin kullanılıp kullanılmayacağını gösteren değer. Varsayılan değer false’tur. True olarak ayarlandığında, arama metninde yerine başka bir karakter veya eksik karakter olsa bile sorgu terimleri bulur. Bu, bazı senaryolarda daha iyi bir deneyim sağlasa da, benzer otomatik tamamlama sorguları daha yavaş olduğundan ve daha fazla kaynak tükettiği için performans maliyetine neden olur.
- highlight_post_tag
- str
Vurgulananlara isabet etmek için eklenen bir dize etiketi. highlightPreTag ile ayarlanmalıdır. Atlanırsa isabet vurgulama devre dışı bırakılır.
- highlight_pre_tag
- str
Vurgulamalara basmak için önceden eklenen bir dize etiketi. highlightPostTag ile ayarlanmalıdır. Atlanırsa isabet vurgulama devre dışı bırakılır.
- minimum_coverage
- float
0 ile 100 arasında bir sayı, sorgunun başarılı olarak bildirilebilmesi için otomatik tamamlama sorgusunun kapsamına alınması gereken dizinin yüzdesini belirtir. Bu parametre, yalnızca bir çoğaltması olan hizmetler için bile arama kullanılabilirliğini sağlamak için yararlı olabilir. Varsayılan değer 80'dir.
Otomatik olarak tamamlanan terimler sorgulanırken dikkate alınacak alan adlarının listesi. Hedef alanlar belirtilen öneri oluşturucuya eklenmelidir.
- top
- int
Alınacak otomatik olarak tamamlanan terimlerin sayısı. Bu değer 1 ile 100 arasında olmalıdır. Varsayılan değer 5'tir.
Dönüş türü
Örnekler
Otomatik tamamlamalar alın.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.aio import SearchClient
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
async with search_client:
results = await search_client.autocomplete(search_text="bo", suggester_name="sg")
print("Autocomplete suggestions for 'bo'")
for result in results:
print(" Completion: {}".format(result["text"]))
close
delete_documents
Azure arama dizininden belgeleri silme
Delete, belirtilen belgeyi dizinden kaldırır. Silme işleminde belirttiğiniz anahtar alanı dışında herhangi bir alan yoksayılır. Belgeden tek bir alanı kaldırmak istiyorsanız, bunun yerine merge_documents kullanın ve alanı açıkça Yok olarak ayarlayın.
Silme işlemleri eşgüçlüdür. Başka bir ifadeyle, dizinde bir belge anahtarı olmasa bile, bu anahtarla silme işleminin denenmesi 200 durum koduna neden olur.
async delete_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]
Parametreler
Döndürülenler
IndexingResult Listesi
Dönüş türü
Örnekler
Var olan belgeleri dizine silme
result = await search_client.upload_documents(documents=[{"hotelId": "1000"}])
print("Delete new document succeeded: {}".format(result[0].succeeded))
get_document
Azure arama dizininden anahtarına göre bir belge alın.
async get_document(key: str, selected_fields: List[str] | None = None, **kwargs: Any) -> Dict
Parametreler
Döndürülenler
Belirtilen anahtarla eşleşen belge
Dönüş türü
Örnekler
Arama dizininden belirli bir belgeyi alın.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.aio import SearchClient
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
async with search_client:
result = await 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 arama dizinindeki belge sayısını döndürür.
async get_document_count(**kwargs: Any) -> int
Döndürülenler
Dizindeki belge sayısı
Dönüş türü
index_documents
Toplu işlem olarak gerçekleştirilecek belge işlemlerini belirtin.
:Harekete geçiren RequestEntityTooLargeError
async index_documents(batch: IndexDocumentsBatch, **kwargs: Any) -> List[IndexingResult]
Parametreler
Döndürülenler
IndexingResult Listesi
Dönüş türü
merge_documents
içindeki belgeleri Azure arama dizinindeki mevcut belgelerle birleştirin.
Birleştir, varolan bir belgeyi belirtilen alanlarla güncelleştirir. Belge yoksa birleştirme başarısız olur. Birleştirmede belirttiğiniz herhangi bir alan belgede var olan alanın yerini alır. Bu, ilkel ve karmaşık tür koleksiyonları için de geçerlidir.
async merge_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]
Parametreler
Döndürülenler
IndexingResult Listesi
Dönüş türü
Örnekler
Alanları varolan belgelerle dizinle birleştirme
result = await search_client.upload_documents(documents=[{"hotelId": "1000", "rating": 4.5}])
print("Merge into new document succeeded: {}".format(result[0].succeeded))
merge_or_upload_documents
içindeki belgeleri Azure arama dizinindeki mevcut belgelerle birleştirin veya henüz yoksa karşıya yükleyin.
Bu eylem, belirtilen anahtara sahip bir belge dizinde zaten varsa merge_documents gibi davranır. Belge yoksa, yeni bir belgeyle upload_documents gibi davranır.
async merge_or_upload_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]
Parametreler
Döndürülenler
IndexingResult Listesi
Dönüş türü
search
Azure arama dizininde belgeleri arayın.
async 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) -> AsyncSearchItemPaged[Dict]
Parametreler
- search_text
- str
Tam metin arama sorgusu ifadesi; Tüm belgelerle eşleştirmek için "*" kullanın veya bu parametreyi atlayın.
- include_total_count
- bool
Toplam sonuç sayısının getirilip getirilmeyeceğini belirten bir değer. Varsayılan değer false’tur. Bu değeri true olarak ayarlamak performansı etkileyebilir. Döndürülen sayın bir yaklaşık değer olduğunu unutmayın.
Arama sorgusuna uygulanacak model ifadelerinin listesi. Her model ifadesi, isteğe bağlı olarak virgülle ayrılmış ad:değer çiftleri listesi içeren bir alan adı içerir.
- filter
- str
Arama sorgusuna uygulanacak OData $filter ifadesi.
- highlight_fields
- str
İsabet vurguları için kullanılacak alan adlarının virgülle ayrılmış listesi. Yalnızca aranabilir alanlar isabet vurgulama için kullanılabilir.
- highlight_post_tag
- str
Vurgulananlara isabet etmek için eklenen bir dize etiketi. highlightPreTag ile ayarlanmalıdır. varsayılan değerdir.
- highlight_pre_tag
- str
Vurgulamalara basmak için önceden eklenen bir dize etiketi. highlightPostTag ile ayarlanmalıdır. varsayılan değerdir.
- minimum_coverage
- float
0 ile 100 arasında bir sayı, sorgunun başarılı olarak bildirilebilmesi için bir arama sorgusunun kapsamına alınması gereken dizinin yüzdesini belirtir. Bu parametre, yalnızca bir çoğaltması olan hizmetler için bile arama kullanılabilirliğini sağlamak için yararlı olabilir. Varsayılan değer 100'dür.
Sonuçların sıralandığı OData $orderby ifadelerinin listesi. Her ifade bir alan adı veya geo.distance() veya search.score() işlevlerine yapılan bir çağrı olabilir. Her ifadeyi artanı belirtmek için asc, azalanı belirtmek için desc takip edebilir. Varsayılan değer artan düzendir. Bağlantılar, belgelerin eşleşme puanları tarafından kırılır. OrderBy belirtilmezse, varsayılan sıralama düzeni belge eşleştirme puanına göre azalan düzendedir. En fazla 32 $orderby yan tümcesi olabilir.
Arama sorgusunun söz dizimini belirten bir değer. Varsayılan değer 'basit'tir. Sorgunuz Lucene sorgu söz dizimini kullanıyorsa 'tam' kullanın. Olası değerler şunlardır: 'simple', 'full', "semantic".
Ad-değerleri biçimi kullanılarak puanlama işlevlerinde (örneğin, referencePointParameter) kullanılacak parametre değerlerinin listesi. Örneğin, puanlama profili 'mylocation' adlı bir parametreye sahip bir işlev tanımlarsa, parametre dizesi "mylocation–122.2,44.8" (tırnak işaretleri olmadan) olur.
- scoring_profile
- str
Sonuçları sıralamak için eşleşen belgeler için eşleşme puanlarını değerlendirmek için bir puanlama profilinin adı.
Tam metin aramasının kapsamının ne olduğu alan adlarının listesi. Tam Lucene sorgusunda alanlı arama (fieldName:searchExpression) kullanılırken, her alanlı arama ifadesinin alan adları bu parametrede listelenen alan adlarından önceliklidir.
- search_mode
- str veya SearchMode
Belgeyi eşleşme olarak saymak için arama terimlerinin herhangi birinin veya tümünün eşleştirilip eşleştirilmeyeceğini belirten bir değer. Olası değerler şunlardır: 'any', 'all'.
- query_answer
- str veya QueryAnswerType
Bu parametre yalnızca sorgu türü 'semantik' ise geçerlidir. Ayarlanırsa, sorgu en yüksek dereceli belgelerdeki anahtar metinlerden ayıklanan yanıtları döndürür. Olası değerler şunlardır: "none", "extractive".
- query_answer_count
- int
Bu parametre yalnızca sorgu türü 'semantik' ve sorgu yanıtı 'ayıklayıcı' olduğunda geçerlidir. Döndürülen yanıt sayısını yapılandırıyor. Varsayılan sayı 1'dir.
- query_answer_threshold
- float
Bu parametre yalnızca sorgu türü 'semantik' ve sorgu yanıtı 'ayıklayıcı' olduğunda geçerlidir. Güvenilirlik eşiği sayısını yapılandırıyor. Varsayılan sayı 0,7'dir.
- query_caption
- str veya QueryCaptionType
Bu parametre yalnızca sorgu türü 'semantik' ise geçerlidir. Ayarlanırsa, sorgu en yüksek dereceli belgelerdeki anahtar metinlerden ayıklanan resim yazılarını döndürür. Varsayılan olarak 'Yok' değeri gösterilir. Olası değerler şunlardır: "none", "extractive".
- query_caption_highlight_enabled
- bool
Bu parametre yalnızca sorgu başlık 'ayıklayıcı' olarak ayarlandığında sorgu türü 'semantik' olduğunda geçerlidir. Vurgulamanın etkinleştirilip etkinleştirilmediğini belirler. Varsayılan değer 'true' olarak ayarlanır.
- semantic_configuration_name
- str
Semantik türündeki sorgular için belgeleri işlerken kullanılacak semantik yapılandırmanın adı.
Alınacak alanların listesi. Belirtilmemişse, şemada alınabilir olarak işaretlenmiş tüm alanlar eklenir.
- skip
- int
Atlana arama sonuçlarının sayısı. Bu değer 100.000'den büyük olamaz. Belgeleri sırayla taramanız gerekiyorsa ancak bu sınırlama nedeniyle $skip kullanamıyorsanız, tamamen sıralı bir anahtarda $orderby kullanmayı ve bunun yerine aralık sorgusuyla $filter düşünün.
- top
- int
Alınacak arama sonuçlarının sayısı. Bu, arama sonuçlarının istemci tarafı disk belleğini uygulamak için $skip ile birlikte kullanılabilir. Sonuçlar sunucu tarafı sayfalama nedeniyle kesilirse, yanıt bir sonraki sonuç sayfası için başka bir Arama isteği göndermek için kullanılabilecek bir devamlılık belirteci içerir.
- scoring_statistics
- str veya ScoringStatistics
Daha tutarlı puanlama için puanlama istatistiklerini (belge sıklığı gibi) genel olarak mı yoksa daha düşük gecikme süresi için yerel olarak mı hesaplamak istediğimizi belirten bir değer. Varsayılan değer 'yerel'dir. Puanlamadan önce puanlama istatistiklerini genel olarak toplamak için 'genel' kullanın. Genel puanlama istatistiklerinin kullanılması, arama sorgularının gecikme süresini artırabilir. Olası değerler şunlardır: "local", "global".
- session_id
- str
Daha tutarlı sonuçlar elde etmeye yardımcı olabilecek, yapışkan bir oturum oluşturmak için kullanılacak bir değer. Aynı sessionId kullanıldığı sürece, aynı çoğaltma kümesini hedeflemek için en iyi çabayı gösterilecektir. Aynı sessionID değerlerini tekrar tekrar yeniden kullanmanın çoğaltmalar arasında isteklerin yük dengelemesini engelleyeceğine ve arama hizmetinin performansını olumsuz etkileyebileceğine dikkat edin. sessionId olarak kullanılan değer '_' karakteriyle başlayamaz.
- semantic_error_mode
- str veya SemanticErrorMode
Kullanıcının bir semantik çağrının tamamen başarısız olup olmayacağını (varsayılan / geçerli davranış) veya kısmi sonuçlar döndürmeyi seçmesine izin verir. Bilinen değerler şunlardır: "partial" ve "fail".
- semantic_max_wait_in_milliseconds
- int
Kullanıcının istek başarısız olmadan önce anlam zenginleştirme işleminin tamamlanması için gereken süreye göre bir üst sınır ayarlamasına izin verir.
- vector_queries
- list[VectorQuery]
Vektör ve karma arama sorguları için sorgu parametreleri.
- vector_filter_mode
- str veya VectorFilterMode
Vektör araması gerçekleştirilmeden önce veya sonra filtrelerin uygulanıp uygulanmayacağını belirler. Varsayılan değer 'preFilter'dır. Bilinen değerler şunlardır: "postFilter" ve "preFilter".
Döndürülenler
Belirtilen arama ölçütleriyle eşleşen belgelerin (dikte) listesi.
Dönüş türü
Örnekler
Arama sonucu modellerini alın.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.aio import SearchClient
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
async with search_client:
results = await search_client.search(search_text="WiFi", facets=["category,count:3", "parkingIncluded"])
facets: Dict[str, List[str]] = cast(Dict[str, List[str]], await results.get_facets())
print("Catgory facet counts for hotels:")
for facet in facets["category"]:
print(" {}".format(facet))
suggest
Azure arama dizininden arama önerisi sonuçları alın.
ve en fazla 100 karakterden oluşur. :p aram str suggester_name: Gerekli. Dizin tanımının parçası olan önerici koleksiyonunda belirtildiği gibi önericinin adı. :keyword str filtresi: Öneriler için göz önünde bulundurulan belgeleri filtreleyen bir OData ifadesi. :keyword bool use_fuzzy_matching: Öneriler için benzer öğe eşleştirmesinin kullanılıp kullanılmayacağını belirten değer
Sorgu. Varsayılan değer false’tur. True olarak ayarlandığında, arama metninde yerine başka bir karakter veya eksik karakter olsa bile sorgu terimleri bulur. Bu, bazı senaryolarda daha iyi bir deneyim sağlasa da, benzer öneriler sorguları daha yavaş olduğundan ve daha fazla kaynak tükettiği için performans maliyetine neden olur.
async 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]
Parametreler
- highlight_post_tag
- str
Vurgulananlara isabet etmek için eklenen bir dize etiketi. highlightPreTag ile ayarlanmalıdır. Belirtilmezse, önerilerin isabet vurgulanması devre dışı bırakılır.
- highlight_pre_tag
- str
Vurgulamalara basmak için önceden eklenen bir dize etiketi. highlightPostTag ile ayarlanmalıdır. Belirtilmezse, önerilerin isabet vurgulanması devre dışı bırakılır.
- minimum_coverage
- float
0 ile 100 arasında bir sayı, sorgunun başarılı olarak bildirilebilmesi için bir öneri sorgusunun kapsamına alınması gereken dizinin yüzdesini belirtir. Bu parametre, yalnızca bir çoğaltması olan hizmetler için bile arama kullanılabilirliğini sağlamak için yararlı olabilir. Varsayılan değer 80'dir.
Sonuçların sıralandığı OData $orderby ifadelerinin listesi. Her ifade bir alan adı veya geo.distance() veya search.score() işlevlerine yapılan bir çağrı olabilir. Her ifadeyi artanı belirtmek için asc, azalanı belirtmek için desc takip edebilir. Varsayılan değer artan düzendir. Bağlantılar, belgelerin eşleşme puanları tarafından kırılır. $orderby belirtilmezse, varsayılan sıralama düzeni belge eşleştirme puanına göre azalan düzendedir. En fazla 32 $orderby yan tümcesi olabilir.
Belirtilen arama metni için aranacak alan adlarının listesi. Hedef alanlar belirtilen öneri oluşturucuya eklenmelidir.
Alınacak alanların listesi. Belirtilmemişse, sonuçlara yalnızca anahtar alanı eklenir.
- top
- int
Alınacak öneri sayısı. Değer 1 ile 100 arasında bir sayı olmalıdır. Varsayılan değer 5'tir.
Döndürülenler
Belge listesi.
Dönüş türü
Örnekler
Arama önerileri alın.
from azure.core.credentials import AzureKeyCredential
from azure.search.documents.aio import SearchClient
search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key))
async with search_client:
results = await search_client.suggest(search_text="coffee", suggester_name="sg")
print("Search suggestions for 'coffee'")
for result in results:
hotel = await search_client.get_document(key=result["hotelId"])
print(" Text: {} for Hotel: {}".format(repr(result["text"]), hotel["hotelName"]))
upload_documents
Belgeleri Azure arama dizinine yükleyin.
Karşıya yükleme eylemi, yeniyse belgenin eklendiği ve varsa güncelleştirildiği/değiştirileceği "upsert" eylemine benzer. Güncelleştirme durumunda tüm alanlar değiştirilir.
async upload_documents(documents: List[Dict], **kwargs: Any) -> List[IndexingResult]
Parametreler
Döndürülenler
IndexingResult Listesi
Dönüş türü
Örnekler
Dizine yeni belgeler yükleme
DOCUMENT = {
"category": "Hotel",
"hotelId": "1000",
"rating": 4.0,
"rooms": [],
"hotelName": "Azure Inn",
}
result = await search_client.upload_documents(documents=[DOCUMENT])
print("Upload of new document succeeded: {}".format(result[0].succeeded))
Azure SDK for Python
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin