SearchField Klasse
Stellt ein Feld in einer Indexdefinition dar, die den Namen, den Datentyp und das Suchverhalten eines Felds beschreibt.
Zum Senden an Azure müssen alle erforderlichen Parameter aufgefüllt werden.
- Vererbung
-
azure.search.documents.indexes._generated._serialization.ModelSearchField
Konstruktor
SearchField(**kwargs)
Variablen
Name | Beschreibung |
---|---|
name
|
Der Name des Felds, das innerhalb der Fields-Auflistung des Index- oder übergeordneten Felds eindeutig sein muss. Erforderlich. |
type
|
str oder
<xref:search_service_client.models.SearchFieldDataType>
Der Datentyp des Felds. Erforderlich. Bekannte Werte sind "Edm.String", "Edm.Int32", "Edm.Int64", "Edm.Double", "Edm.Boolean", "Edm.DateTimeOffset", "Edm.GeographyPoint", "Edm.ComplexType" und "Edm.Single". |
key
|
Ein Wert, der angibt, ob das Feld Dokumente im Index eindeutig identifiziert. Es muss genau ein Feld der obersten Ebene in jedem Index als Schlüsselfeld ausgewählt werden, und es muss vom Typ Edm.String sein. Schlüsselfelder können verwendet werden, um Dokumente direkt nachzuschlagen und bestimmte Dokumente zu aktualisieren oder zu löschen. Der Standardwert ist false für einfache Felder und NULL für komplexe Felder. |
searchable
|
Ein Wert, der angibt, ob das Feld volltextsuchbar ist. Es wird während der Indizierung somit Analysen wie etwa der Worttrennung unterzogen. Wenn Sie ein durchsuchbares Feld auf einen Wert wie „sunny day“ festlegen, wird es intern in die einzelnen Token „sunny“ und „day“ unterteilt. Dies ermöglicht die Volltextsuche nach diesen Begriffen. Felder vom Typ Edm.String oder Collection(Edm.String) sind standardmäßig durchsuchbar. Diese Eigenschaft muss für einfache Felder anderer Nichtzeichenfolgendatentypen false sein, und für komplexe Felder muss sie NULL sein. Hinweis: Durchsuchbare Felder verbrauchen zusätzlichen Speicherplatz in Ihrem Index, da Azure Cognitive Search eine zusätzliche tokenisierte Version des Feldwerts für Volltextsuchen speichert. Wenn Sie Speicherplatz in Ihrem Index sparen möchten und kein Feld in Suchvorgänge einbezogen werden muss, legen Sie durchsuchbar auf false fest. |
filterable
|
Ein Wert, der angibt, ob in $filter Abfragen auf das Feld verwiesen werden soll. Filterbar unterscheidet sich von durchsuchbaren in der Behandlung von Zeichenfolgen. Felder vom Typ Edm.String oder Collection(Edm.String), die gefiltert werden können, unterliegen keine Wortbrüche, sodass Vergleiche nur für genaue Übereinstimmungen gelten. Wenn Sie beispielsweise ein solches Feld f auf "sonniger Tag" festlegen, findet $filter=f eq 'sunny' keine Übereinstimmungen, aber $filter=f eq 'sonniger Tag' wird dies. Diese Eigenschaft muss für komplexe Felder NULL sein. Der Standardwert ist true für einfache Felder und NULL für komplexe Felder. |
sortable
|
Ein Wert, der angibt, ob in $orderby Ausdrücken auf das Feld verwiesen werden soll. Standardmäßig sortiert Azure Cognitive Search Ergebnisse nach Bewertung, aber in vielen Umgebungen möchten Benutzer nach Feldern in den Dokumenten sortieren. Ein einfaches Feld kann nur sortiert werden, wenn es sich um einen einzelwertigen Wert handelt (es verfügt über einen einzelnen Wert im Bereich des übergeordneten Dokuments). Einfache Sammlungsfelder können nicht sortiert werden, da sie mehrwertig sind. Einfache Unterfelder komplexer Sammlungen sind ebenfalls mehrwertig und können daher nicht sortiert werden. Dies gilt unabhängig davon, ob es sich um ein unmittelbares übergeordnetes Feld oder ein Vorgängerfeld handelt, das die komplexe Auflistung ist. Komplexe Felder können nicht sortiert werden, und die sortierbare Eigenschaft muss null für solche Felder sein. Der Standardwert für sortierbar ist true für einfache Felder mit einem Wert, false für einfache Felder mit mehreren Werten und NULL für komplexe Felder. |
facetable
|
Ein Wert, der angibt, ob in Facetabfragen auf das Feld verwiesen werden soll. Wird in der Regel in einer Präsentation von Suchergebnissen verwendet, die die Trefferanzahl nach Kategorie enthält (z. B. suchen Sie nach Digitalkameras und sehen Sie Treffer nach Marke, nach Megapixeln, nach Preis usw.). Diese Eigenschaft muss für komplexe Felder NULL sein. Felder vom Typ Edm.GeographyPoint oder Collection(Edm.GeographyPoint) können nicht facetable sein. Der Standardwert ist true für alle anderen einfachen Felder. |
analyzer_name
|
str oder
<xref:search_service_client.models.LexicalAnalyzerName>
Der Name des Analysetools, das für das Feld verwendet werden soll. Diese Option kann nur mit durchsuchbaren Feldern verwendet werden und weder zusammen mit searchAnalyzer noch mit indexAnalyzer festgelegt werden. Eine einmal für ein Feld gewählte Analysemethode kann nicht mehr geändert werden. Für komplexe Felder muss NULL sein. Bekannte Werte sind: "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", "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.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.lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", " Schlüsselwort (keyword)", "pattern", "simple", "stop" und "whitespace". |
search_analyzer_name
|
str oder
<xref:search_service_client.models.LexicalAnalyzerName>
Der Name des Analysetools, der zur Suchzeit für das Feld verwendet wird. Diese Option kann nur mit durchsuchbaren Feldern verwendet werden. Er muss zusammen mit indexAnalyzer festgelegt werden und kann nicht zusammen mit der Analyseoption festgelegt werden. Diese Eigenschaft kann nicht auf den Namen eines Sprachanalysetools festgelegt werden. Verwenden Sie stattdessen die Analyzer-Eigenschaft, wenn Sie ein Sprachanalysetool benötigen. Dieses Analyseprogramm kann für ein vorhandenes Feld aktualisiert werden. Für komplexe Felder muss NULL sein. Bekannte Werte sind: "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", "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.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.lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", " Schlüsselwort (keyword)", "pattern", "simple", "stop" und "whitespace". |
index_analyzer_name
|
str oder
<xref:search_service_client.models.LexicalAnalyzerName>
Der Name des Analysetools, der zur Indizierungszeit für das Feld verwendet wird. Diese Option kann nur mit durchsuchbaren Feldern verwendet werden. Er muss zusammen mit searchAnalyzer festgelegt werden und kann nicht zusammen mit der Analyseoption festgelegt werden. Diese Eigenschaft kann nicht auf den Namen eines Sprachanalysetools festgelegt werden. Verwenden Sie stattdessen die Analyzer-Eigenschaft, wenn Sie ein Sprachanalysetool benötigen. Eine einmal für ein Feld gewählte Analysemethode kann nicht mehr geändert werden. Für komplexe Felder muss NULL sein. Bekannte Werte sind: "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", "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.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.lucene", "ta.microsoft", "te.microsoft", "th.microsoft", "th.lucene", "tr.microsoft", "tr.lucene", "uk.microsoft", "your.microsoft", "vi.microsoft", "standard.lucene", "standardasciifolding.lucene", " Schlüsselwort (keyword)", "pattern", "simple", "stop" und "whitespace". |
vector_search_dimensions
|
Die Dimensionalität des Vektorfelds. |
vector_search_profile_name
|
Der Name des Vektorsuchprofils, das den Algorithmus angibt, der beim Durchsuchen des Vektorfelds verwendet werden soll. |
synonym_map_names
|
Eine Liste der Namen von Synonymzuordnungen, die diesem Feld zugeordnet werden sollen. Diese Option kann nur mit durchsuchbaren Feldern verwendet werden. Derzeit wird nur eine Synonymzuordnung pro Feld unterstützt. Durch Zuweisen einer Synonymzuordnung zu einem Feld wird sichergestellt, dass Abfragebegriffe, die auf dieses Feld abzielen, zur Abfragezeit mithilfe der Regeln in der Synonymzuordnung erweitert werden. Dieses Attribut kann für vorhandene Felder geändert werden. Muss NULL oder eine leere Auflistung für komplexe Felder sein. |
fields
|
list[<xref:search_service_client.models.SearchField>]
Eine Liste von Unterfeldern, wenn es sich um ein Feld vom Typ Edm.ComplexType oder Collection(Edm.ComplexType) handelt. Für einfache Felder muss null oder leer sein. |
Methoden
as_dict |
Gibt ein Diktat zurück, das mithilfe von json.dump serialisiert werden kann. Bei erweiterter Verwendung kann optional ein Rückruf als Parameter verwendet werden: Key ist der Attributname, der in Python verwendet wird. Attr_desc ist ein Dict von Metadaten. Enthält derzeit "type" mit dem msrest-Typ und "key" mit dem RestAPI-codierten Schlüssel. Value ist der aktuelle Wert in diesem Objekt. Die zurückgegebene Zeichenfolge wird verwendet, um den Schlüssel zu serialisieren. Wenn der Rückgabetyp eine Liste ist, wird dies als hierarchisches Ergebnisdikt betrachtet. Sehen Sie sich die drei Beispiele in dieser Datei an:
Wenn Sie die XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben. |
deserialize |
Analysieren Sie einen Str mithilfe der RestAPI-Syntax, und geben Sie ein Modell zurück. |
enable_additional_properties_sending | |
from_dict |
Analysieren eines Diktats mithilfe des angegebenen Schlüsselextraktors gibt ein Modell zurück. Standardmäßig werden Schlüsselextraktoren (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor und last_rest_key_case_insensitive_extractor) berücksichtigt. |
is_xml_model | |
serialize |
Gibt den JSON-Code zurück, der von diesem Modell an den Server gesendet würde. Dies ist ein Alias für as_dict(full_restapi_key_transformer, keep_readonly=False). Wenn Sie die XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben. |
as_dict
Gibt ein Diktat zurück, das mithilfe von json.dump serialisiert werden kann.
Bei erweiterter Verwendung kann optional ein Rückruf als Parameter verwendet werden:
Key ist der Attributname, der in Python verwendet wird. Attr_desc ist ein Dict von Metadaten. Enthält derzeit "type" mit dem msrest-Typ und "key" mit dem RestAPI-codierten Schlüssel. Value ist der aktuelle Wert in diesem Objekt.
Die zurückgegebene Zeichenfolge wird verwendet, um den Schlüssel zu serialisieren. Wenn der Rückgabetyp eine Liste ist, wird dies als hierarchisches Ergebnisdikt betrachtet.
Sehen Sie sich die drei Beispiele in dieser Datei an:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
Wenn Sie die XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.
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]
Parameter
Name | Beschreibung |
---|---|
key_transformer
|
<xref:function>
Eine Schlüsseltransformerfunktion. |
keep_readonly
|
Standardwert: True
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ein JSON-kompatibles Objekt mit Dict |
deserialize
Analysieren Sie einen Str mithilfe der RestAPI-Syntax, und geben Sie ein Modell zurück.
deserialize(data: Any, content_type: str | None = None) -> ModelType
Parameter
Name | Beschreibung |
---|---|
data
Erforderlich
|
Eine Str-Instanz mit RestAPI-Struktur. JSON standardmäßig. |
content_type
|
JSON standardmäßig, legen Sie application/xml if XML fest. Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ein instance dieses Modells |
Ausnahmen
Typ | Beschreibung |
---|---|
DeserializationError if something went wrong
|
enable_additional_properties_sending
enable_additional_properties_sending() -> None
from_dict
Analysieren eines Diktats mithilfe des angegebenen Schlüsselextraktors gibt ein Modell zurück.
Standardmäßig werden Schlüsselextraktoren (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor und last_rest_key_case_insensitive_extractor) berücksichtigt.
from_dict(data: Any, key_extractors: Callable[[str, Dict[str, Any], Any], Any] | None = None, content_type: str | None = None) -> ModelType
Parameter
Name | Beschreibung |
---|---|
data
Erforderlich
|
Ein Diktat mithilfe der RestAPI-Struktur |
content_type
|
JSON standardmäßig, legen Sie application/xml if XML fest. Standardwert: None
|
key_extractors
|
Standardwert: None
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ein instance dieses Modells |
Ausnahmen
Typ | Beschreibung |
---|---|
DeserializationError if something went wrong
|
is_xml_model
is_xml_model() -> bool
serialize
Gibt den JSON-Code zurück, der von diesem Modell an den Server gesendet würde.
Dies ist ein Alias für as_dict(full_restapi_key_transformer, keep_readonly=False).
Wenn Sie die XML-Serialisierung wünschen, können Sie die kwargs is_xml=True übergeben.
serialize(keep_readonly: bool = False, **kwargs: Any) -> MutableMapping[str, Any]
Parameter
Name | Beschreibung |
---|---|
keep_readonly
|
Wenn Sie die schreibgeschützten Attribute serialisieren möchten Standardwert: False
|
Gibt zurück
Typ | Beschreibung |
---|---|
Ein JSON-kompatibles Objekt mit Dict |
Azure SDK for Python