Tüm Ürünler
Search
Belge Merkezi

Tablestore:Summary and highlighting

Son Güncelleme:Oct 02, 2026

Tablestore SDK for Python kullanarak eşleşen belirteçleri içeren Text alanlarından parçalar döndürün ve bu belirteçleri işaretleyin.

Önkoşullar

Tablestore SDK for Python yükleyin ve bir istemci başlatın.

Özetleme ve vurgulama özelliği için SDK sürüm 6.0.0 veya üzeri gerekir. En son SDK sürümünü kullanmanızı öneririz.

Arama dizini oluştururken hedef Text alanı için enable_highlighting parametresini True olarak ayarlayın.

Açıklama

Özetleme ve vurgulama, eşleşen belirteçlerin etrafındaki metin parçalarını çıkarır ve bu belirteçleri ön etiketler ile arka etiketler kullanarak işaretler. Bu özellik yalnızca Text alanlarını destekler. Bir sorguda alanları ve parça yapılandırmalarını belirtmek için SearchQuery.highlight kullanın.

Tablestore SDK for Python 6.4.6; TermQuery, TermsQuery, PrefixQuery, WildcardQuery, RangeQuery, BoolQuery, MatchQuery ve MatchPhraseQuery için özetleme ve vurgulamayı destekler. BoolQuery için desteklenen alt sorgu türleri tarafından kullanılan alanları vurgulayabilirsiniz. NestedQuery için eşleşen alt satır vurgularını InnerHits.highlight içinde yapılandırın. Daha fazla bilgi için bkz. İç içe geçmiş sorgu.

Not

MatchQuery veya MatchPhraseQuery kullanırken bir eşleşen belirteç birden fazla ön etiket ve arka etiket çiftiyle işaretlenebilir. MatchPhraseQuery, maksimum anlamsal çözümleyici kullanan bir Text alanı için vurgulamayı desteklemez. Bir parça sınırı eşleşen bir belirteci bölebilir ve belirtecin vurgulanmasını engelleyebilir.

Aşağıdaki örnek description alanında tablestore belirtecini sorgular ve eşleşen belirteçleri parçalar içinde <b> ve </b> ile işaretler.

query = MatchQuery("description", "tablestore")
highlight = Highlight(
    [
        HighlightParameter(
            "description",
            number_of_fragments=1,
            fragment_size=100,
            pre_tag="<b>",
            post_tag="</b>",
        )
    ],
    HighlightEncoder.PLAIN_MODE,
)
response = client.search(
    "example_table",
    "example_index",
    SearchQuery(query, limit=10, highlight=highlight),
)
for hit in response.search_hits:
    for field in hit.highlight_result.highlight_fields:
        print(field.field_name, field.field_fragments)

Parametreler

search_query.highlight öğesinin türü Highlight şeklindedir. Aşağıdaki tabloda Highlight ve HighlightParameter yapılandırmalarının iki düzeyi tam yollar kullanılarak açıklanmaktadır.


Ad


Tür


Açıklama


highlight_parameters (gerekli)


list[HighlightParameter]


Alanlar için vurgulanan parça yapılandırmaları. Her alanın vurgulama özelliği etkinleştirilmiş olmalı ve vurgulamayı destekleyen bir sorgu türüne katılmalıdır.


highlight_encoder (isteğe bağlı)


HighlightEncoder


Parça metni kodlama modu. PLAIN_MODE (varsayılan) metni kodlamaz. HTML_MODE, <, >, ", ' ve / karakterlerini sırasıyla &lt;, &gt;, &quot;, &#x27; ve &#x2F; olarak kaçış karakterlerine dönüştürür; web görüntülemesi için uygundur.


highlight_parameters[].field_name (gerekli)


str


Parçaların ve vurguların döndürüleceği Text alanının adı.


highlight_parameters[].number_of_fragments (isteğe bağlı)


int


Bir alan için döndürülecek maksimum parça sayısı. 1 değerini öneririz.


highlight_parameters[].fragment_size (isteğe bağlı)


int


Hedef parça uzunluğu. Varsayılan değer: 100. Gerçek uzunluk farklılık gösterebilir.


highlight_parameters[].pre_tag (isteğe bağlı)


str


Eşleşen belirteçler için ön etiket. Varsayılan değer: <em>. Bu parametreyi post_tag ile birlikte belirtin. Etiket <, >, ", ', /, a-z, A-Z ve 0-9 karakterlerini içerebilir.


highlight_parameters[].post_tag (isteğe bağlı)


str


Eşleşen belirteçler için arka etiket. Varsayılan değer: </em>. Bu parametreyi pre_tag ile birlikte belirtin. Etiket <, >, ", ', /, a-z, A-Z ve 0-9 karakterlerini içerebilir.


highlight_parameters[].fragments_order (isteğe bağlı)


HighlightFragmentOrder


Parça sıralama düzeni. TEXT_SEQUENCE (varsayılan), orijinal metin konumuna göre sıralar; SCORE ise belirteç alaka puanına göre sıralar.

Yanıt

Vurgulama sonuçları SearchResponse.search_hits[].highlight_result yolunda bulunur ve aşağıdaki yapıya sahiptir.


Alan


Tür


Açıklama


search_hits


list[SearchHit]


Arama eşleşmeleri.


search_hits[].row


Row


Eşleşen satır.


search_hits[].highlight_result


HighlightResult


Satır için özetleme ve vurgulama sonucu. Vurgu döndürülmemişse değer boş olur.


search_hits[].highlight_result.highlight_fields


list[HighlightField]


Satırdaki alanlar için vurgular.


highlight_fields[].field_name


str


Vurgulanan alan adı.


highlight_fields[].field_fragments


list[str]


Vurgulanan parçalar. Eşleşen belirteçler yapılandırılan etiketlerle işaretlenir.

Tuple uyumlu yanıt

Tablestore SDK for Python 5.2.0 sürümünden başlayarak arama API'leri tuple yerine yanıt nesneleri döndürür. Sürüm 5.1.0 ve önceki sürümler doğrudan tuple döndürür. Sürüm 5.2.1 ve sonraki sürümlerde önceki sürümlerle uyumlu bir tuple elde etmek için SearchResponse.v1_response() yöntemini çağırabilirsiniz. Yeni kodlarda yanıt alanları genişletildiğinde paket açma hatalarını önlemek için SearchResponse özniteliklerine doğrudan erişin.

(
    rows,
    next_token,
    total_count,
    is_all_succeed,
    agg_results,
    group_by_results,
    search_hits,
) = response.v1_response()