SearchField Klass

Representerar ett fält i en indexdefinition som beskriver namn, datatyp och sökbeteende för ett fält.

Alla obligatoriska parametrar måste fyllas i för att kunna skickas till Azure.

Arv
azure.search.documents.indexes._generated._serialization.Model
SearchField

Konstruktor

SearchField(**kwargs)

Variabler

Name Description
name
str

Namnet på fältet, som måste vara unikt i fältsamlingen för indexet eller det överordnade fältet. Krävs.

type
str eller <xref:search_service_client.models.SearchFieldDataType>

Fältets datatyp. Krävs. Kända värden är: "Edm.String", "Edm.Int32", "Edm.Int64", "Edm.Double", "Edm.Boolean", "Edm.DateTimeOffset", "Edm.GeographyPoint", "Edm.ComplexType" och "Edm.Single".

key

Ett värde som anger om fältet unikt identifierar dokument i indexet. Exakt ett fält på den översta nivån i varje index måste väljas som nyckelfält och det måste vara av typen Edm.String. Nyckelfält kan användas för att söka efter dokument direkt och uppdatera eller ta bort specifika dokument. Standardvärdet är falskt för enkla fält och null för komplexa fält.

searchable

Ett värde som anger om fältet är sökbart i fulltext. Det innebär att den kommer att genomgå en analys, till exempel ordbrytning under indexeringen. Om du anger ett sökbart fält till ett värde som ”solig dag” delas det upp internt i två enskilda token, ”solig” och ”dag”. Detta möjliggör fulltextsökningar för dessa termer. Fält av typen Edm.String eller Collection(Edm.String) är sökbara som standard. Den här egenskapen måste vara false för enkla fält med andra datatyper som inte är strängar och måste vara null för komplexa fält. Obs! Sökbara fält förbrukar extra utrymme i indexet eftersom Azure Cognitive Search lagrar ytterligare en tokeniserad version av fältvärdet för fulltextsökningar. Om du vill spara utrymme i indexet och du inte behöver ett fält som ska inkluderas i sökningar anger du sökbart till falskt.

filterable

Ett värde som anger om fältet ska kunna refereras till i $filter frågor. filterable skiljer sig från sökbara i hur strängar hanteras. Fält av typen Edm.String eller Collection(Edm.String) som är filterbara genomgår inte ordbrytning, så jämförelser är endast för exakta matchningar. Om du till exempel ställer in ett sådant fält f på "solig dag" hittar $filter=f eq "soligt" inga matchningar, men $filter=f eq "solig dag" kommer att göra det. Den här egenskapen måste vara null för komplexa fält. Standardvärdet är sant för enkla fält och null för komplexa fält.

sortable

Ett värde som anger om fältet ska kunna refereras till i $orderby uttryck. Som standard sorterar Azure Cognitive Search resultat efter poäng, men i många fall vill användarna sortera efter fält i dokumenten. Ett enkelt fält kan bara sorteras om det är envärdesvärde (det har ett enda värde i det överordnade dokumentets omfång). Enkla samlingsfält kan inte sorteras eftersom de är flervärdesfält. Enkla delfält i komplexa samlingar är också flervärdesbaserade och kan därför inte sorteras. Detta gäller oavsett om det är ett omedelbart överordnat fält, eller ett överordnat fält, som är den komplexa samlingen. Komplexa fält kan inte sorteras och den sorterbara egenskapen måste vara null för sådana fält. Standardvärdet för sorterbar är sant för enkla enkelfält med en enda värde, falskt för enkla flervärdesfält och null för komplexa fält.

facetable

Ett värde som anger om fältet ska kunna refereras till i fasetterade frågor. Används vanligtvis i en presentation av sökresultat som innehåller antal träffar per kategori (till exempel söka efter digitalkameror och se träffar efter varumärke, megapixlar, pris och så vidare). Den här egenskapen måste vara null för komplexa fält. Fält av typen Edm.GeographyPoint eller Collection(Edm.GeographyPoint) kan inte vara fasettbara. Standardvärdet är sant för alla andra enkla fält.

analyzer_name
str eller <xref:search_service_client.models.LexicalAnalyzerName>

Namnet på analysatorn som ska användas för fältet. Det här alternativet kan endast användas med sökbara fält och kan inte ställas in tillsammans med antingen searchAnalyzer eller indexAnalyzer. När analysatorn har valts kan den inte ändras för fältet. Måste vara null för komplexa fält. Kända värden är: "ar.microsoft", "ar.lucene", "hy.lucene", "bn.microsoft", "eu.lucene", "bg.microsoft", "bg.lucene", "ca.microsoft", "ca.lucene", "zh-Hans.microsoft", "zh-Hans.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "zh-Hant.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "hr.microsoft", "cs.microsoft", "cs.lucene", "da.microsoft", "da.lucene", "nl.microsoft", "nl.lucene", "en.microsoft", "en.lucene", "et.microsoft", "fi.microsoft", "fi.lucene", "fr.microsoft", "fr.lucene", "gl.lucene", "de.microsoft", "de.lucene", " el.microsoft", "el.lucene", "gu.microsoft", "he.microsoft", "hi.microsoft", "hi.lucene", "hu.microsoft", "hu.lucene", "is.microsoft", "id.microsoft", "id.lucene", "ga.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", microsoft", "ko.microsoft", "ko.lucene", "lv.microsoft", "lv.lucene", "lt.microsoft", "ml.microsoft", "ms.microsoft", "mr.microsoft", "nb.microsoft", "no.lucene", "fa.lucene", "pl.microsoft", "pl.lucene", "pt-BR.microsoft", "pt-BR.lucene", " pt-PT.microsoft", "pt-PT.lucene", "pa.microsoft", "ro.microsoft", "ro.lucene", "ru.microsoft", "ru.lucene", "sr-cyrillic.microsoft", "sr-latin.microsoft", "sk.microsoft", "sl.microsoft", "es.microsoft", "es.lucene", "sv.microsoft", "sv.microsoft", "sv.microsoft" lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", "keyword", "pattern", "simple", "stop" och " tomt utrymme".

search_analyzer_name
str eller <xref:search_service_client.models.LexicalAnalyzerName>

Namnet på analysatorn som används vid söktillfället för fältet. Det här alternativet kan endast användas med sökbara fält. Den måste anges tillsammans med indexAnalyzer och den kan inte ställas in tillsammans med analysalternativet. Den här egenskapen kan inte anges till namnet på ett språkanalysverktyg. använd egenskapen analyzer i stället om du behöver ett språkanalysverktyg. Den här analysatorn kan uppdateras i ett befintligt fält. Måste vara null för komplexa fält. Kända värden är: "ar.microsoft", "ar.lucene", "hy.lucene", "bn.microsoft", "eu.lucene", "bg.microsoft", "bg.lucene", "ca.microsoft", "ca.lucene", "zh-Hans.microsoft", "zh-Hans.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "zh-Hant.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "hr.microsoft", "cs.microsoft", "cs.lucene", "da.microsoft", "da.lucene", "nl.microsoft", "nl.lucene", "en.microsoft", "en.lucene", "et.microsoft", "fi.microsoft", "fi.lucene", "fr.microsoft", "fr.lucene", "gl.lucene", "de.microsoft", "de.lucene", " el.microsoft", "el.lucene", "gu.microsoft", "he.microsoft", "hi.microsoft", "hi.lucene", "hu.microsoft", "hu.lucene", "is.microsoft", "id.microsoft", "id.lucene", "ga.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", microsoft", "ko.microsoft", "ko.lucene", "lv.microsoft", "lv.lucene", "lt.microsoft", "ml.microsoft", "ms.microsoft", "mr.microsoft", "nb.microsoft", "no.lucene", "fa.lucene", "pl.microsoft", "pl.lucene", "pt-BR.microsoft", "pt-BR.lucene", " pt-PT.microsoft", "pt-PT.lucene", "pa.microsoft", "ro.microsoft", "ro.lucene", "ru.microsoft", "ru.lucene", "sr-cyrillic.microsoft", "sr-latin.microsoft", "sk.microsoft", "sl.microsoft", "es.microsoft", "es.lucene", "sv.microsoft", "sv.microsoft", "sv.microsoft" lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", "keyword", "pattern", "simple", "stop" och " tomt utrymme".

index_analyzer_name
str eller <xref:search_service_client.models.LexicalAnalyzerName>

Namnet på analysatorn som används vid indexeringstiden för fältet. Det här alternativet kan endast användas med sökbara fält. Den måste anges tillsammans med searchAnalyzer och kan inte ställas in tillsammans med analysalternativet. Den här egenskapen kan inte anges till namnet på ett språkanalysverktyg. använd egenskapen analyzer i stället om du behöver ett språkanalysverktyg. När analysatorn har valts kan den inte ändras för fältet. Måste vara null för komplexa fält. Kända värden är: "ar.microsoft", "ar.lucene", "hy.lucene", "bn.microsoft", "eu.lucene", "bg.microsoft", "bg.lucene", "ca.microsoft", "ca.lucene", "zh-Hans.microsoft", "zh-Hans.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "zh-Hant.lucene", "zh-Hant.microsoft", "zh-Hant.lucene", "hr.microsoft", "cs.microsoft", "cs.lucene", "da.microsoft", "da.lucene", "nl.microsoft", "nl.lucene", "en.microsoft", "en.lucene", "et.microsoft", "fi.microsoft", "fi.lucene", "fr.microsoft", "fr.lucene", "gl.lucene", "de.microsoft", "de.lucene", " el.microsoft", "el.lucene", "gu.microsoft", "he.microsoft", "hi.microsoft", "hi.lucene", "hu.microsoft", "hu.lucene", "is.microsoft", "id.microsoft", "id.lucene", "ga.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "it.microsoft", "it.lucene", "ja.microsoft", "ja.lucene", "kn.lucene", "kn.lucene", microsoft", "ko.microsoft", "ko.lucene", "lv.microsoft", "lv.lucene", "lt.microsoft", "ml.microsoft", "ms.microsoft", "mr.microsoft", "nb.microsoft", "no.lucene", "fa.lucene", "pl.microsoft", "pl.lucene", "pt-BR.microsoft", "pt-BR.lucene", " pt-PT.microsoft", "pt-PT.lucene", "pa.microsoft", "ro.microsoft", "ro.lucene", "ru.microsoft", "ru.lucene", "sr-cyrillic.microsoft", "sr-latin.microsoft", "sk.microsoft", "sl.microsoft", "es.microsoft", "es.lucene", "sv.microsoft", "sv.microsoft", "sv.microsoft" lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", "keyword", "pattern", "simple", "stop" och " tomt utrymme".

vector_search_dimensions
int

Vektorfältets dimensionalitet.

vector_search_profile_name
str

Namnet på den vektorsökningsprofil som anger vilken algoritm som ska användas vid sökning i vektorfältet.

synonym_map_names

En lista över namnen på synonymmappningar som ska associeras med det här fältet. Det här alternativet kan endast användas med sökbara fält. För närvarande stöds endast en synonymkarta per fält. Genom att tilldela en synonymmappning till ett fält ser du till att frågetermerna för det fältet utökas vid frågetiden med hjälp av reglerna i synonymmappningen. Det här attributet kan ändras i befintliga fält. Måste vara null eller en tom samling för komplexa fält.

fields
list[<xref:search_service_client.models.SearchField>]

En lista över underfält om det här är ett fält av typen Edm.ComplexType eller Collection(Edm.ComplexType). Måste vara null eller tomt för enkla fält.

Metoder

as_dict

Returnera en diktamen som kan serialiseras med json.dump.

Avancerad användning kan också använda ett återanrop som parameter:

Nyckeln är det attributnamn som används i Python. Attr_desc är en diktering av metadata. Innehåller för närvarande "typ" med msrest-typen och "nyckel" med den RestAPI-kodade nyckeln. Värde är det aktuella värdet i det här objektet.

Strängen som returneras används för att serialisera nyckeln. Om returtypen är en lista anses detta vara hierarkisk resultatdikt.

Se de tre exemplen i den här filen:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Om du vill ha XML-serialisering kan du skicka kwargs-is_xml=True.

deserialize

Parsa en str med hjälp av RestAPI-syntaxen och returnera en modell.

enable_additional_properties_sending
from_dict

Parsa en diktamen med hjälp av den angivna nyckelextraktorn returnerar en modell.

Som standard bör du överväga nyckelextraktorer (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor och last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Returnera den JSON som skulle skickas till servern från den här modellen.

Det här är ett alias för as_dict(full_restapi_key_transformer, keep_readonly=False).

Om du vill ha XML-serialisering kan du skicka kwargs-is_xml=True.

as_dict

Returnera en diktamen som kan serialiseras med json.dump.

Avancerad användning kan också använda ett återanrop som parameter:

Nyckeln är det attributnamn som används i Python. Attr_desc är en diktering av metadata. Innehåller för närvarande "typ" med msrest-typen och "nyckel" med den RestAPI-kodade nyckeln. Värde är det aktuella värdet i det här objektet.

Strängen som returneras används för att serialisera nyckeln. Om returtypen är en lista anses detta vara hierarkisk resultatdikt.

Se de tre exemplen i den här filen:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Om du vill ha XML-serialisering kan du skicka kwargs-is_xml=True.

as_dict(keep_readonly: bool = True, key_transformer: ~typing.Callable[[str, ~typing.Dict[str, ~typing.Any], ~typing.Any], ~typing.Any] = <function attribute_transformer>, **kwargs: ~typing.Any) -> MutableMapping[str, Any]

Parametrar

Name Description
key_transformer
<xref:function>

En nyckeltransformatorfunktion.

keep_readonly
standardvärde: True

Returer

Typ Description

Ett dict JSON-kompatibelt objekt

deserialize

Parsa en str med hjälp av RestAPI-syntaxen och returnera en modell.

deserialize(data: Any, content_type: str | None = None) -> ModelType

Parametrar

Name Description
data
Obligatorisk
str

En str som använder RestAPI-struktur. JSON som standard.

content_type
str

JSON anger som standard application/xml om XML.

standardvärde: None

Returer

Typ Description

En instans av den här modellen

Undantag

Typ Description
DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending() -> None

from_dict

Parsa en diktamen med hjälp av den angivna nyckelextraktorn returnerar en modell.

Som standard bör du överväga nyckelextraktorer (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor och last_rest_key_case_insensitive_extractor)

from_dict(data: Any, key_extractors: Callable[[str, Dict[str, Any], Any], Any] | None = None, content_type: str | None = None) -> ModelType

Parametrar

Name Description
data
Obligatorisk

En diktamen som använder RestAPI-struktur

content_type
str

JSON anger som standard application/xml om XML.

standardvärde: None
key_extractors
standardvärde: None

Returer

Typ Description

En instans av den här modellen

Undantag

Typ Description
DeserializationError if something went wrong

is_xml_model

is_xml_model() -> bool

serialize

Returnera den JSON som skulle skickas till servern från den här modellen.

Det här är ett alias för as_dict(full_restapi_key_transformer, keep_readonly=False).

Om du vill ha XML-serialisering kan du skicka kwargs-is_xml=True.

serialize(keep_readonly: bool = False, **kwargs: Any) -> MutableMapping[str, Any]

Parametrar

Name Description
keep_readonly

Om du vill serialisera skrivskyddade attribut

standardvärde: False

Returer

Typ Description

Ett dict JSON-kompatibelt objekt