SearchField Clase

Representa un campo en una definición de índice, que describe el nombre, el tipo de datos y el comportamiento de búsqueda de un campo.

Todos los parámetros necesarios deben rellenarse para enviarlos a Azure.

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

Constructor

SearchField(**kwargs)

Variables

Nombre Description
name
str

Nombre del campo, que debe ser único dentro de la colección de campos del índice o el campo primario. Necesario.

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

Tipo de datos del campo. Necesario. Los valores conocidos son: "Edm.String", "Edm.Int32", "Edm.Int64", "Edm.Double", "Edm.Boolean", "Edm.DateTimeOffset", "Edm.GeographyPoint", "Edm.ComplexType" y "Edm.Single".

key

Valor que indica si el campo identifica de forma única documentos en el índice. Se debe elegir exactamente un campo de nivel superior en cada índice como campo clave y debe ser de tipo Edm.String. Los campos clave se pueden usar para buscar documentos directamente y actualizar o eliminar documentos específicos. El valor predeterminado es false para campos simples y null para campos complejos.

searchable

Valor que indica si el campo es de texto completo que se puede buscar. Esto significa que se someterá a análisis como la separación de palabras durante la indexación. Si establece un campo buscable en un valor como "día soleado", internamente se dividirá en los tokens individuales "soleado" y "día". Esto permite realizar búsquedas de texto completo de estos términos. Los campos de tipo Edm.String o Collection(Edm.String) se pueden buscar de forma predeterminada. Esta propiedad debe ser false para campos simples de otros tipos de datos que no son de cadena y debe ser null para campos complejos. Nota: Los campos que se pueden buscar consumen espacio adicional en el índice, ya que Azure Cognitive Search almacenará una versión tokenizada adicional del valor del campo para las búsquedas de texto completo. Si desea ahorrar espacio en el índice y no necesita incluir un campo en las búsquedas, establezca searchable en false.

filterable

Valor que indica si se debe hacer referencia al campo en $filter consultas. filterable difiere de lo que se puede buscar en cómo se controlan las cadenas. Los campos de tipo Edm.String o Collection(Edm.String) que se pueden filtrar no se someten a separación de palabras, por lo que las comparaciones son solo para coincidencias exactas. Por ejemplo, si establece este campo f en "sunny day", $filter=f eq "sunny" no encontrará coincidencias, pero $filter=f eq "sunny day". Esta propiedad debe ser null para campos complejos. El valor predeterminado es true para campos simples y null para campos complejos.

sortable

Valor que indica si se debe hacer referencia al campo en $orderby expresiones. De forma predeterminada, Azure Cognitive Search ordena los resultados por puntuación, pero en muchas experiencias los usuarios querrán ordenar por campos de los documentos. Un campo simple solo se puede ordenar si es de un solo valor (tiene un único valor en el ámbito del documento primario). Los campos de colección simples no se pueden ordenar, ya que son multivalor. Los subcarpetas simples de colecciones complejas también tienen varios valores y, por tanto, no se pueden ordenar. Esto es cierto si es un campo primario inmediato o un campo antecesor, que es la colección compleja. Los campos complejos no se pueden ordenar y la propiedad ordenable debe ser null para dichos campos. El valor predeterminado para ordenar es true para los campos simples con un solo valor, false para los campos simples con varios valores y null para campos complejos.

facetable

Valor que indica si se va a permitir que se haga referencia al campo en las consultas de faceta. Normalmente se usa en una presentación de resultados de búsqueda que incluye el recuento de llamadas por categoría (por ejemplo, buscar cámaras digitales y ver visitas por marca, por megapíxeles, por precio, etc.). Esta propiedad debe ser null para campos complejos. Los campos de tipo Edm.GeographyPoint o Collection(Edm.GeographyPoint) no pueden ser facetables. El valor predeterminado es true para todos los demás campos simples.

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

Nombre del analizador que se va a usar para el campo. Esta opción puede utilizarse solo con campos habilitados para la búsqueda y no se puede establecer junto con searchAnalyzer ni indexAnalyzer. Una vez que se elige el analizador, no se podrá cambiar para el campo. Debe ser null para campos complejos. Los valores conocidos son: "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-Hans.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", "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.microsoft", "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", "keyword", "pattern", "simple", "stop" y " espacio en blanco".

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

Nombre del analizador usado en el momento de la búsqueda del campo. Esta opción solo se puede usar con campos que se pueden buscar. Debe establecerse junto con indexAnalyzer y no se puede establecer junto con la opción del analizador. Esta propiedad no se puede establecer en el nombre de un analizador de idioma; Use la propiedad analyzer en su lugar si necesita un analizador de lenguaje. Este analizador se puede actualizar en un campo existente. Debe ser null para campos complejos. Los valores conocidos son: "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-Hans.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", "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.microsoft", "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", "keyword", "pattern", "simple", "stop" y " espacio en blanco".

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

Nombre del analizador usado en el momento de la indexación del campo. Esta opción solo se puede usar con campos que se pueden buscar. Debe establecerse junto con searchAnalyzer y no se puede establecer junto con la opción del analizador. Esta propiedad no se puede establecer en el nombre de un analizador de idioma; Use la propiedad analyzer en su lugar si necesita un analizador de lenguaje. Una vez que se elige el analizador, no se podrá cambiar para el campo. Debe ser null para campos complejos. Los valores conocidos son: "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-Hans.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", "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.microsoft", "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", "keyword", "pattern", "simple", "stop" y " espacio en blanco".

vector_search_dimensions
int

Dimensionalidad del campo vectorial.

vector_search_profile_name
str

Nombre del perfil de búsqueda vectorial que especifica el algoritmo que se va a usar al buscar en el campo vectorial.

synonym_map_names

Lista de los nombres de los mapas de sinónimos que se van a asociar a este campo. Esta opción solo se puede usar con campos que se pueden buscar. Actualmente solo se admite un mapa de sinónimos por campo. La asignación de un mapa de sinónimos a un campo garantiza que los términos de consulta destinados a ese campo se expanden en tiempo de consulta mediante las reglas del mapa de sinónimos. Este atributo se puede cambiar en los campos existentes. Debe ser null o una colección vacía para campos complejos.

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

Lista de subcampos si se trata de un campo de tipo Edm.ComplexType o Collection(Edm.ComplexType). Debe ser null o estar vacío para campos simples.

Métodos

as_dict

Devuelve un dict que se puede serializar mediante json.dump.

El uso avanzado puede usar opcionalmente una devolución de llamada como parámetro:

Key es el nombre de atributo que se usa en Python. Attr_desc es un dict de metadatos. Actualmente contiene 'type' con el tipo msrest y 'key' con la clave codificada restAPI. Value es el valor actual de este objeto.

La cadena devuelta se usará para serializar la clave. Si el tipo de valor devuelto es una lista, se considera una diferencia de resultado jerárquica.

Vea los tres ejemplos de este archivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si desea serialización XML, puede pasar los kwargs is_xml=True.

deserialize

Analice una cadena mediante la sintaxis restAPI y devuelva un modelo.

enable_additional_properties_sending
from_dict

Analizar un dict mediante un extractor de claves dado devuelve un modelo.

De forma predeterminada, considere la posibilidad de extractores de claves (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor y last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Devuelve el JSON que se enviaría al servidor desde este modelo.

Se trata de un alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Si desea serialización XML, puede pasar los kwargs is_xml=True.

as_dict

Devuelve un dict que se puede serializar mediante json.dump.

El uso avanzado puede usar opcionalmente una devolución de llamada como parámetro:

Key es el nombre de atributo que se usa en Python. Attr_desc es un dict de metadatos. Actualmente contiene 'type' con el tipo msrest y 'key' con la clave codificada restAPI. Value es el valor actual de este objeto.

La cadena devuelta se usará para serializar la clave. Si el tipo de valor devuelto es una lista, se considera una diferencia de resultado jerárquica.

Vea los tres ejemplos de este archivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si desea serialización XML, puede pasar los 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]

Parámetros

Nombre Description
key_transformer
<xref:function>

Función de transformador de teclas.

keep_readonly
valor predeterminado: True

Devoluciones

Tipo Description

Un objeto compatible con JSON dict

deserialize

Analice una cadena mediante la sintaxis restAPI y devuelva un modelo.

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

Parámetros

Nombre Description
data
Requerido
str

Una cadena de datos mediante la estructura restAPI. JSON de forma predeterminada.

content_type
str

JSON de forma predeterminada, establezca application/xml si XML.

valor predeterminado: None

Devoluciones

Tipo Description

Instancia de este modelo

Excepciones

Tipo Description
DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending() -> None

from_dict

Analizar un dict mediante un extractor de claves dado devuelve un modelo.

De forma predeterminada, considere la posibilidad de extractores de claves (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor y 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

Parámetros

Nombre Description
data
Requerido

Un dict mediante la estructura restAPI

content_type
str

JSON de forma predeterminada, establezca application/xml si XML.

valor predeterminado: None
key_extractors
valor predeterminado: None

Devoluciones

Tipo Description

Instancia de este modelo

Excepciones

Tipo Description
DeserializationError if something went wrong

is_xml_model

is_xml_model() -> bool

serialize

Devuelve el JSON que se enviaría al servidor desde este modelo.

Se trata de un alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Si desea serialización XML, puede pasar los kwargs is_xml=True.

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

Parámetros

Nombre Description
keep_readonly

Si desea serializar los atributos de solo lectura

valor predeterminado: False

Devoluciones

Tipo Description

Un objeto compatible con JSON dict