Indexes - Analyze

Показывает, как анализатор разбивает текст на маркеры.

POST {endpoint}/indexes('{indexName}')/search.analyze?api-version=2023-11-01

Параметры URI

Имя В Обязательно Тип Описание
endpoint
path True

string

URL-адрес конечной точки службы поиска.

indexName
path True

string

Имя индекса, для которого необходимо протестировать анализатор.

api-version
query True

string

Версия клиентского API.

Заголовок запроса

Имя Обязательно Тип Описание
x-ms-client-request-id

string (uuid)

Идентификатор отслеживания, отправляемый запросом на отладку.

Текст запроса

Имя Обязательно Тип Описание
text True

string

Текст, который нужно разбить на маркеры.

analyzer

LexicalAnalyzerName

Имя анализатора, используемого для разрыва заданного текста. Если этот параметр не указан, необходимо указать вместо него токенизатор. Параметры токенизатора и анализатора являются взаимоисключающими.

charFilters

CharFilterName[]

Необязательный список фильтров символов, используемых при разрыве заданного текста. Этот параметр можно задать только при использовании параметра токенизатора.

tokenFilters

TokenFilterName[]

Необязательный список фильтров маркеров, используемых при разрыве заданного текста. Этот параметр можно задать только при использовании параметра токенизатора.

tokenizer

LexicalTokenizerName

Имя токенизатора, используемого для разрыва заданного текста. Если этот параметр не указан, необходимо указать анализатор. Параметры токенизатора и анализатора являются взаимоисключающими.

Ответы

Имя Тип Описание
200 OK

AnalyzeResult

Other Status Codes

SearchError

Ответ на ошибку.

Примеры

SearchServiceIndexAnalyze

Образец запроса

POST https://myservice.search.windows.net/indexes('hotels')/search.analyze?api-version=2023-11-01

{
  "text": "Text to analyze",
  "analyzer": "standard.lucene"
}

Пример ответа

{
  "tokens": [
    {
      "token": "text",
      "startOffset": 0,
      "endOffset": 4,
      "position": 0
    },
    {
      "token": "to",
      "startOffset": 5,
      "endOffset": 7,
      "position": 1
    },
    {
      "token": "analyze",
      "startOffset": 8,
      "endOffset": 15,
      "position": 2
    }
  ]
}

Определения

Имя Описание
AnalyzedTokenInfo

Сведения о маркере, возвращаемом анализатором.

AnalyzeRequest

Указывает некоторые компоненты текста и анализа, используемые для разбиения этого текста на маркеры.

AnalyzeResult

Результат тестирования анализатора на тексте.

CharFilterName

Определяет имена всех фильтров символов, поддерживаемых поисковой системой.

LexicalAnalyzerName

Определяет имена всех текстовых анализаторов, поддерживаемых поисковой системой.

LexicalTokenizerName

Определяет имена всех токенизаторов, поддерживаемых поисковой системой.

SearchError

Описывает условие ошибки для API.

TokenFilterName

Определяет имена всех фильтров маркеров, поддерживаемых поисковой системой.

AnalyzedTokenInfo

Сведения о маркере, возвращаемом анализатором.

Имя Тип Описание
endOffset

integer (int32)

Индекс последнего символа маркера в входном тексте.

position

integer (int32)

Позиция маркера в входном тексте относительно других маркеров. Первый маркер в входном тексте имеет позицию 0, следующая имеет позицию 1 и т. д. В зависимости от используемого анализатора некоторые маркеры могут иметь одинаковую позицию, например если они являются синонимами друг друга.

startOffset

integer (int32)

Индекс первого символа маркера в входном тексте.

token

string

Маркер, возвращаемый анализатором.

AnalyzeRequest

Указывает некоторые компоненты текста и анализа, используемые для разбиения этого текста на маркеры.

Имя Тип Описание
analyzer

LexicalAnalyzerName

Имя анализатора, используемого для разрыва заданного текста. Если этот параметр не указан, необходимо указать вместо него токенизатор. Параметры токенизатора и анализатора являются взаимоисключающими.

charFilters

CharFilterName[]

Необязательный список фильтров символов, используемых при разрыве заданного текста. Этот параметр можно задать только при использовании параметра токенизатора.

text

string

Текст, который нужно разбить на маркеры.

tokenFilters

TokenFilterName[]

Необязательный список фильтров маркеров, используемых при разрыве заданного текста. Этот параметр можно задать только при использовании параметра токенизатора.

tokenizer

LexicalTokenizerName

Имя токенизатора, используемого для разрыва заданного текста. Если этот параметр не указан, необходимо указать анализатор. Параметры токенизатора и анализатора являются взаимоисключающими.

AnalyzeResult

Результат тестирования анализатора на тексте.

Имя Тип Описание
tokens

AnalyzedTokenInfo[]

Список маркеров, возвращаемых анализатором, указанным в запросе.

CharFilterName

Определяет имена всех фильтров символов, поддерживаемых поисковой системой.

Значение Описание
html_strip

Фильтр символов, который пытается удалить конструкции HTML. См. https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html

LexicalAnalyzerName

Определяет имена всех текстовых анализаторов, поддерживаемых поисковой системой.

Значение Описание
ar.microsoft

Анализатор Майкрософт для арабского языка.

ar.lucene

Анализатор Lucene для арабского языка.

hy.lucene

Анализатор Lucene для армян.

bn.microsoft

Анализатор Майкрософт для Bangla.

eu.lucene

Анализатор Lucene для Баска.

bg.microsoft

Анализатор Майкрософт для болгарского.

bg.lucene

Анализатор Lucene для Болгарии.

ca.microsoft

Анализатор Майкрософт для каталонца.

ca.lucene

Анализатор Lucene для каталонца.

zh-Hans.microsoft

Анализатор Майкрософт для китайского (упрощенное письмо).

zh-Hans.lucene

Анализатор Lucene для китайского (упрощенное письмо).

zh-Hant.microsoft

Анализатор Майкрософт для китайского (традиционного языка).

zh-Hant.lucene

Анализатор Lucene для китайского (традиционного).

hr.microsoft

Анализатор Майкрософт для хорватского языка.

cs.microsoft

Анализатор Майкрософт для Чехии.

cs.lucene

Анализатор Lucene для Чехии.

da.microsoft

Анализатор Майкрософт для датского языка.

da.lucene

Анализатор Lucene для датского языка.

nl.microsoft

Анализатор Майкрософт для голландского языка.

nl.lucene

Анализатор Lucene для голландцев.

en.microsoft

Анализатор Майкрософт для английского языка.

en.lucene

Анализатор Lucene для английского языка.

et.microsoft

Анализатор Майкрософт для Эстонии.

fi.microsoft

Анализатор Майкрософт для Финляндии.

fi.lucene

Анализатор Lucene для финляндии.

fr.microsoft

Анализатор Майкрософт для французского языка.

fr.lucene

Анализатор Lucene для французского языка.

gl.lucene

Анализатор Lucene для Галисиана.

de.microsoft

Анализатор Майкрософт для немецкого языка.

de.lucene

Анализатор Lucene для немецкого языка.

el.microsoft

Анализатор Майкрософт для греческого языка.

el.lucene

Анализатор Lucene для греческого языка.

gu.microsoft

Анализатор Майкрософт для Gujarati.

he.microsoft

Анализатор Майкрософт для иврита.

hi.microsoft

Анализатор Майкрософт для Хинди.

hi.lucene

Анализатор Lucene для Хинди.

hu.microsoft

Анализатор Майкрософт для венгерского.

hu.lucene

Анализатор Lucene для венгерского.

is.microsoft

Анализатор Майкрософт для Исландии.

id.microsoft

Анализатор Майкрософт для Индонезии (Бахаса).

id.lucene

Анализатор Lucene для Индонезии.

ga.lucene

Анализатор Lucene для ирландских.

it.microsoft

Анализатор Майкрософт для итальянского языка.

it.lucene

Анализатор Lucene для итальянского языка.

ja.microsoft

Анализатор Майкрософт для японского языка.

ja.lucene

Анализатор Lucene для японского языка.

kn.microsoft

Анализатор Майкрософт для Kannada.

ko.microsoft

Анализатор Майкрософт для корейского языка.

ko.lucene

Анализатор Lucene для корейского языка.

lv.microsoft

Анализатор Майкрософт для латышского языка.

lv.lucene

Анализатор Lucene для Латышского.

lt.microsoft

Анализатор Майкрософт для Литвы.

ml.microsoft

Анализатор Microsoft для Малаялам.

ms.microsoft

Анализатор Майкрософт для Малая (латиница).

mr.microsoft

Анализатор Майкрософт для Маратхи.

nb.microsoft

Анализатор Майкрософт для норвежского языка (Bokmål).

no.lucene

Анализатор Lucene для норвежского языка.

fa.lucene

Анализатор Lucene для персидского языка.

pl.microsoft

Анализатор Майкрософт для польского.

pl.lucene

Анализатор Lucene для польского.

pt-BR.microsoft

Анализатор Майкрософт для португальского языка (Бразилия).

pt-BR.lucene

Анализатор Lucene для португальского (Бразилия).

pt-PT.microsoft

Анализатор Майкрософт для португальского языка (Португалия).

pt-PT.lucene

Анализатор Lucene для португальского (Португалия).

pa.microsoft

Анализатор Майкрософт для Пенджаби.

ro.microsoft

Анализатор Майкрософт для румына.

ro.lucene

Анализатор Lucene для румына.

ru.microsoft

Анализатор Майкрософт для русского языка.

ru.lucene

Анализатор Lucene для россии.

sr-cyrillic.microsoft

Анализатор Майкрософт для сербских (кириллица).

sr-latin.microsoft

Анализатор Майкрософт для сербских (латиница).

sk.microsoft

Анализатор Майкрософт для словацких.

sl.microsoft

Анализатор Майкрософт для словенцев.

es.microsoft

Анализатор Майкрософт для испанского языка.

es.lucene

Анализатор Lucene для испанского языка.

sv.microsoft

Анализатор Майкрософт для шведского языка.

sv.lucene

Анализатор Lucene для шведского языка.

ta.microsoft

Анализатор Майкрософт для Тамила.

te.microsoft

Анализатор Майкрософт для Telugu.

th.microsoft

Анализатор Майкрософт для тайского языка.

th.lucene

Анализатор Lucene для тайского языка.

tr.microsoft

Анализатор Майкрософт для турецкого языка.

tr.lucene

Анализатор Lucene для турецкого языка.

uk.microsoft

Анализатор Майкрософт для украины.

ur.microsoft

Анализатор Майкрософт для Urdu.

vi.microsoft

Анализатор Майкрософт для вьетнамцев.

standard.lucene

Стандартный анализатор Lucene.

standardasciifolding.lucene

Стандартный анализатор ASCII Folding Lucene. См. https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers

keyword

Обрабатывает все содержимое поля как один маркер. Это полезно для таких данных, как zip-коды, идентификаторы и некоторые имена продуктов. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html

pattern

Гибкий разделяет текст на термины с помощью шаблона регулярного выражения. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html

simple

Делит текст на небуквенных и преобразует их в нижний регистр. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html

stop

Делит текст на небуквенный; Применяет фильтры маркеров стоп-слов и строчных регистров. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html

whitespace

Анализатор, использующий токенизатор пробелов. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html

LexicalTokenizerName

Определяет имена всех токенизаторов, поддерживаемых поисковой системой.

Значение Описание
classic

Токенизатор на основе грамматики, подходящий для обработки большинства европейских языковых документов. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html

edgeNGram

Маркеризирует входные данные из края в n-граммы заданных размеров. См. https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html

keyword_v2

Выводит все входные данные в виде одного маркера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html

letter

Делит текст на небуквенный. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html

lowercase

Делит текст на небуквенных и преобразует их в нижний регистр. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html

microsoft_language_tokenizer

Делит текст с помощью правил, относящихся к языку.

microsoft_language_stemming_tokenizer

Разделяет текст с помощью правил, относящихся к языку, и сокращает количество слов к базовым формам.

nGram

Маркеризирует входные данные в n-граммах заданных размеров. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html

path_hierarchy_v2

Токенизатор для иерархий, похожих на пути. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html

pattern

Токенизатор, использующий сопоставление шаблонов regex для создания уникальных маркеров. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html

standard_v2

Стандартный анализатор Lucene; Состоит из стандартного токенизатора, нижнего регистра фильтра и фильтра остановки. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html

uax_url_email

Маркеризирует URL-адреса и сообщения электронной почты в виде одного маркера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html

whitespace

Делит текст на пробелы. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html

SearchError

Описывает условие ошибки для API.

Имя Тип Описание
code

string

Один из определяемых сервером кодов ошибок.

details

SearchError[]

Массив сведений об определенных ошибках, которые привели к этой сообщаемой ошибке.

message

string

Читаемое пользователем представление ошибки.

TokenFilterName

Определяет имена всех фильтров маркеров, поддерживаемых поисковой системой.

Значение Описание
arabic_normalization

Фильтр маркеров, который применяет арабский нормализатор для нормализации ортографии. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html

apostrophe

Полоскает все символы после апострофа (включая сам апостроф). См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html

asciifolding

Преобразует алфавитные, числовые и символьные символы Юникода, которые не находятся в первых 127 символах ASCII (блок Юникода "Базовый латиница") в эквиваленты ASCII, если такие эквиваленты существуют. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html

cjk_bigram

Формирует большие кадры терминов CJK, созданных из стандартного токенизатора. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html

cjk_width

Нормализует различия ширины CJK. Сворачивать варианты fullwidth ASCII в эквивалентную базовую латиницу и половину ширины вариантов Katakana в эквивалентную Кану. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html

classic

Удаляет англоязычные присяговы и точки из акронимов. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html

common_grams

Создавайте bigrams для часто встречающихся терминов при индексировании. Отдельные термины по-прежнему индексируются слишком, при наложении bigrams. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html

edgeNGram_v2

Создает n-граммы заданных размеров, начиная с передней или задней части входного маркера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html

elision

Удаляет излизии. Например, "l'avion" (плоскость) преобразуется в "avion" (плоскость). См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html

german_normalization

Нормализует немецкие символы в соответствии с эвристиками алгоритма снежного шара Германии 2. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html

hindi_normalization

Нормализует текст в Хинди, чтобы удалить некоторые различия в вариантах орфографии. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html

indic_normalization

Нормализует представление текста Юникода на индийских языках. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html

keyword_repeat

Выводит каждый входящий токен дважды, один раз в качестве ключевого слова и один раз как не ключевое слово. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html

kstem

Высокопроизводительный фильтр kstem для английского языка. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html

length

Удаляет слова, слишком длинные или слишком короткие. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html

limit

Ограничивает количество маркеров при индексировании. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html

lowercase

Нормализует текст маркера в нижний регистр. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm

nGram_v2

Создает n-граммы заданного размера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html

persian_normalization

Применяет нормализацию для персидского языка. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html

phonetic

Создайте маркеры для фонетических совпадений. См. https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html

porter_stem

Для преобразования потока маркеров используется алгоритм стебля портера. См. http://tartarus.org/~martin/PorterStemmer

reverse

Отменяет строку маркера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html

scandinavian_normalization

Нормализует использование взаимозаменяемых скандинавских символов. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html

scandinavian_folding

Сворачивать скандинавские символы åÅäääÄÄÄÖ->a и öÖøØ->o. Он также дискриминирует использование двойных гласных aa, ae, ao, oe и oo, оставляя только первый. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html

shingle

Создает сочетания маркеров в виде одного маркера. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html

snowball

Фильтр, который стебляет слова с помощью созданного сноубола стебля. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html

sorani_normalization

Нормализует представление текста Sorani в Юникоде. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html

stemmer

Фильтр для конкретного языка. См. https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters

stopwords

Удаляет слова остановки из потока маркеров. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html

trim

Обрезает начальные и конечные пробелы из маркеров. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html

truncate

Усечение терминов до определенной длины. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html

unique

Фильтрует маркеры с тем же текстом, что и предыдущий маркер. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html

uppercase

Нормализует текст маркера в верхний регистр. См. http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html

word_delimiter

Разбивает слова на вложенные слова и выполняет необязательные преобразования в группах подслугов.