SearchField Classe
Representa um campo numa definição de índice, que descreve o nome, o tipo de dados e o comportamento de pesquisa de um campo.
Todos os parâmetros necessários têm de ser preenchidos para enviar para o Azure.
- Herança
-
azure.search.documents.indexes._generated._serialization.ModelSearchField
Construtor
SearchField(**kwargs)
Variáveis
Name | Description |
---|---|
name
|
O nome do campo, que tem de ser exclusivo na coleção de campos do campo principal ou índice. Obrigatório. |
type
|
str ou
<xref:search_service_client.models.SearchFieldDataType>
O tipo de dados do campo. Obrigatório. Os valores conhecidos são: "Edm.String", "Edm.Int32", "Edm.Int64", "Edm.Double", "Edm.Boolean", "Edm.DateTimeOffset", "Edm.GeographyPoint", "Edm.ComplexType" e "Edm.Single". |
key
|
Um valor que indica se o campo identifica exclusivamente documentos no índice. Exatamente um campo de nível superior em cada índice tem de ser escolhido como o campo de chave e tem de ser do tipo Edm.String. Os campos de chave podem ser utilizados para procurar documentos diretamente e atualizar ou eliminar documentos específicos. A predefinição é falso para campos simples e nulo para campos complexos. |
searchable
|
Um valor que indica se o campo é pesquisável em texto completo. Isto significa que será submetido a uma análise, como quebra de palavras durante a indexação. Se definir um campo pesquisável para um valor como "sunny day", será dividido internamente nos tokens individuais "sunny" e "day". Isto permite pesquisas em texto completo para estes termos. Os campos do tipo Edm.String ou Collection(Edm.String) são pesquisáveis por predefinição. Esta propriedade tem de ser falsa para campos simples de outros tipos de dados sem cadeia e tem de ser nula para campos complexos. Nota: os campos pesquisáveis consomem espaço extra no índice, uma vez que Azure Cognitive Search armazenará uma versão token adicional do valor do campo para pesquisas de texto completo. Se quiser poupar espaço no índice e não precisar que um campo seja incluído nas pesquisas, defina pesquisável como falso. |
filterable
|
Um valor que indica se o campo deve ser referenciado em consultas $filter. filtráveis difere do pesquisável na forma como as cadeias são processadas. Os campos do tipo Edm.String ou Collection(Edm.String) que são filtráveis não são submetidos a quebras de palavras, pelo que as comparações destinam-se apenas a correspondências exatas. Por exemplo, se definir tal campo f como "dia ensolarado", $filter=f eq "ensolarado" não encontrará correspondências, mas $filter=f eq "dia ensolarado" irá. Esta propriedade tem de ser nula para campos complexos. A predefinição é verdadeira para campos simples e nulo para campos complexos. |
sortable
|
Um valor que indica se o campo deve ser referenciado em expressões $orderby. Por predefinição, Azure Cognitive Search ordena os resultados por classificação, mas em muitas experiências os utilizadores vão querer ordenar por campos nos documentos. Um campo simples só pode ser ordenado se for de valor único (tem um único valor no âmbito do documento principal). Os campos de coleção simples não podem ser ordenados, uma vez que são de valores múltiplos. Os subdomissões simples de coleções complexas também têm valores múltiplos e, por conseguinte, não podem ser ordenados. Isto é verdade, quer se trate de um campo principal imediato, ou de um campo predecessor, que é a coleção complexa. Os campos complexos não podem ser ordenados e a propriedade ordenável tem de ser nula para esses campos. A predefinição para ordenável é verdadeira para campos simples de valor único, falso para campos simples de valores múltiplos e nulo para campos complexos. |
facetable
|
Um valor que indica se o campo deve ser referenciado em consultas de facetas. Normalmente utilizado numa apresentação de resultados de pesquisa que inclui a contagem de resultados por categoria (por exemplo, procure câmaras digitais e veja acessos por marca, por megapixéis, por preço, etc.). Esta propriedade tem de ser nula para campos complexos. Os campos do tipo Edm.GeographyPoint ou Collection(Edm.GeographyPoint) não podem ser facetáveis. A predefinição é verdadeira para todos os outros campos simples. |
analyzer_name
|
str ou
<xref:search_service_client.models.LexicalAnalyzerName>
O nome do analisador a utilizar para o campo. Esta opção só pode ser utilizada com campos pesquisáveis e não pode ser definida em conjunto com searchAnalyzer ou indexAnalyzer. Depois de o analisador ser escolhido, não pode ser alterado para o campo. Tem de ser nulo para campos complexos. Os valores conhecidos são: "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.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", "keyword", "pattern", "simple", "stop" e " espaço em branco". |
search_analyzer_name
|
str ou
<xref:search_service_client.models.LexicalAnalyzerName>
O nome do analisador utilizado no momento da pesquisa do campo. Esta opção só pode ser utilizada com campos pesquisáveis. Tem de ser definido em conjunto com o indexAnalyzer e não pode ser definido em conjunto com a opção analisador. Esta propriedade não pode ser definida como o nome de um analisador de idiomas; utilize a propriedade analyzer se precisar de um analisador de idiomas. Este analisador pode ser atualizado num campo existente. Tem de ser nulo para campos complexos. Os valores conhecidos são: "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.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", "keyword", "pattern", "simple", "stop" e " espaço em branco". |
index_analyzer_name
|
str ou
<xref:search_service_client.models.LexicalAnalyzerName>
O nome do analisador utilizado no momento da indexação do campo. Esta opção só pode ser utilizada com campos pesquisáveis. Tem de ser definido em conjunto com searchAnalyzer e não pode ser definido em conjunto com a opção analisador. Esta propriedade não pode ser definida como o nome de um analisador de idiomas; utilize a propriedade analyzer se precisar de um analisador de idiomas. Depois de o analisador ser escolhido, não pode ser alterado para o campo. Tem de ser nulo para campos complexos. Os valores conhecidos são: "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.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", "keyword", "pattern", "simple", "stop" e " espaço em branco". |
vector_search_dimensions
|
A dimensionalidade do campo de vetor. |
vector_search_profile_name
|
O nome do perfil de pesquisa de vetor que especifica o algoritmo a utilizar ao procurar no campo de vetor. |
synonym_map_names
|
Uma lista dos nomes dos mapas de sinónimos a associar a este campo. Esta opção só pode ser utilizada com campos pesquisáveis. Atualmente, só é suportado um mapa de sinónimos por campo. A atribuição de um mapa de sinónimos a um campo garante que os termos de consulta destinados a esse campo são expandidos no momento da consulta através das regras no mapa de sinónimos. Este atributo pode ser alterado em campos existentes. Tem de ser nulo ou uma coleção vazia para campos complexos. |
fields
|
list[<xref:search_service_client.models.SearchField>]
Uma lista de subdomínios se este for um campo do tipo Edm.ComplexType ou Collection(Edm.ComplexType). Tem de ser nulo ou estar vazio para campos simples. |
Métodos
as_dict |
Devolver um ditado que pode ser serializado com json.dump. Opcionalmente, a utilização avançada pode utilizar uma chamada de retorno como parâmetro: A chave é o nome do atributo utilizado no Python. Attr_desc é um ditado dos metadados. Atualmente, contém "type" com o tipo msrest e "key" com a chave codificada RestAPI. O valor é o valor atual neste objeto. A cadeia devolvida será utilizada para serializar a chave. Se o tipo de retorno for uma lista, isto é considerado dict de resultado hierárquico. Veja os três exemplos neste ficheiro:
Se quiser serialização XML, pode transmitir os kwargs is_xml=True. |
deserialize |
Analise um str com a sintaxe RestAPI e devolva um modelo. |
enable_additional_properties_sending | |
from_dict |
Analisar um ditado com um determinado extrator de chaves devolve um modelo. Por predefinição, considere extratores chave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e last_rest_key_case_insensitive_extractor) |
is_xml_model | |
serialize |
Devolver o JSON que seria enviado para o servidor a partir deste modelo. Este é um alias para as_dict(full_restapi_key_transformer, keep_readonly=Falso). Se quiser serialização XML, pode transmitir os kwargs is_xml=True. |
as_dict
Devolver um ditado que pode ser serializado com json.dump.
Opcionalmente, a utilização avançada pode utilizar uma chamada de retorno como parâmetro:
A chave é o nome do atributo utilizado no Python. Attr_desc é um ditado dos metadados. Atualmente, contém "type" com o tipo msrest e "key" com a chave codificada RestAPI. O valor é o valor atual neste objeto.
A cadeia devolvida será utilizada para serializar a chave. Se o tipo de retorno for uma lista, isto é considerado dict de resultado hierárquico.
Veja os três exemplos neste ficheiro:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
Se quiser serialização XML, pode transmitir os 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
Name | Description |
---|---|
key_transformer
|
<xref:function>
Uma função de transformador de chaves. |
keep_readonly
|
valor predefinido: True
|
Devoluções
Tipo | Description |
---|---|
Um objeto compatível com JSON de ditado |
deserialize
Analise um str com a sintaxe RestAPI e devolva um modelo.
deserialize(data: Any, content_type: str | None = None) -> ModelType
Parâmetros
Name | Description |
---|---|
data
Necessário
|
Um str com a estrutura RestAPI. JSON por predefinição. |
content_type
|
JSON por predefinição, defina application/xml se XML. valor predefinido: None
|
Devoluções
Tipo | Description |
---|---|
Uma instância deste modelo |
Exceções
Tipo | Description |
---|---|
DeserializationError if something went wrong
|
enable_additional_properties_sending
enable_additional_properties_sending() -> None
from_dict
Analisar um ditado com um determinado extrator de chaves devolve um modelo.
Por predefinição, considere extratores chave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e 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
Name | Description |
---|---|
data
Necessário
|
Um ditado com a estrutura restAPI |
content_type
|
JSON por predefinição, defina application/xml se XML. valor predefinido: None
|
key_extractors
|
valor predefinido: None
|
Devoluções
Tipo | Description |
---|---|
Uma instância deste modelo |
Exceções
Tipo | Description |
---|---|
DeserializationError if something went wrong
|
is_xml_model
is_xml_model() -> bool
serialize
Devolver o JSON que seria enviado para o servidor a partir deste modelo.
Este é um alias para as_dict(full_restapi_key_transformer, keep_readonly=Falso).
Se quiser serialização XML, pode transmitir os kwargs is_xml=True.
serialize(keep_readonly: bool = False, **kwargs: Any) -> MutableMapping[str, Any]
Parâmetros
Name | Description |
---|---|
keep_readonly
|
Se quiser serializar os atributos só de leitura valor predefinido: False
|
Devoluções
Tipo | Description |
---|---|
Um objeto compatível com JSON de ditado |
Azure SDK for Python