Поделиться через


SearchIndexClient Класс

Клиент для взаимодействия с индексами службы поиска Azure.

Наследование
azure.search.documents._headers_mixin.HeadersMixin
SearchIndexClient

Конструктор

SearchIndexClient(endpoint: str, credential: AzureKeyCredential | AsyncTokenCredential, **kwargs)

Параметры

endpoint
str
Обязательно

Конечная точка URL-адреса службы поиска Azure

credential
AzureKeyCredential или AsyncTokenCredential
Обязательно

Учетные данные для авторизации запросов клиентов поиска

api_version
str

Версия API поиска, используемая для запросов.

audience
str

задает аудиторию, используемую для проверки подлинности в Azure Active Directory (AAD). Аудитория не учитывается при использовании общего ключа. Если аудитория не указана, предполагается аудитория общедоступного облака.

Методы

analyze_text

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

close

SearchIndexClient Закройте сеанс.

create_index

Создает новый индекс поиска.

create_or_update_index

Создает новый индекс поиска или обновляет индекс, если он уже существует.

create_or_update_synonym_map

Создайте карту синонимов в служба Azure или обновите существующую.

create_synonym_map

Создание схемы синонимов в служба Azure

delete_index

Удаляет индекс поиска и все содержащиеся в нем документы. Модель должна быть указана вместо имени для использования условий доступа.

delete_synonym_map

Удаление именованной карты синонимов в служба Azure. Чтобы использовать условия доступа, вместо имени необходимо указать модель SynonymMap. Достаточно указать имя карты синонимов для безусловного удаления.

get_index
get_index_statistics

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

get_search_client

Возвращает клиент для выполнения операций с поиском.

get_service_statistics

Получение статистики уровня службы для службы поиска.

get_synonym_map

Получение именованной карты синонимов в служба Azure

get_synonym_map_names

Перечисление имен сопоставления синонимов в служба Azure.

get_synonym_maps

Перечисление карт синонимов в служба Azure.

list_index_names

Перечисление имен индексов в служба Azure.

list_indexes

Вывод списка индексов в служба Azure.

analyze_text

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

async analyze_text(index_name: str, analyze_request: AnalyzeTextOptions, **kwargs: Any) -> AnalyzeResult

Параметры

index_name
str
Обязательно

Имя индекса, для которого тестируется анализатор.

analyze_request
AnalyzeTextOptions
Обязательно

Тестируемые компоненты текста и анализатора или анализа.

Возвращаемое значение

AnalyzeResult

Возвращаемый тип

<xref:azure.search.documents.indexes.models.AnalyzeRequest>

Исключения

Примеры

Анализ текста


   from azure.core.credentials import AzureKeyCredential
   from azure.search.documents.indexes.aio import SearchIndexClient
   from azure.search.documents.indexes.models import AnalyzeTextOptions

   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))

   analyze_request = AnalyzeTextOptions(text="One's <two/>", analyzer_name="standard.lucene")

   async with client:
       result = await client.analyze_text(index_name, analyze_request)
       print(result.as_dict())

close

SearchIndexClient Закройте сеанс.

async close() -> None

Возвращаемое значение

Нет

Возвращаемый тип

Исключения

create_index

Создает новый индекс поиска.

async create_index(index: SearchIndex, **kwargs: Any) -> SearchIndex

Параметры

index
SearchIndex
Обязательно

Объект index.

Возвращаемое значение

Созданный индекс

Возвращаемый тип

Исключения

Примеры

Создание нового индекса.


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   fields = [
       SimpleField(name="hotelId", type=SearchFieldDataType.String, key=True),
       SimpleField(name="baseRate", type=SearchFieldDataType.Double),
       SearchableField(name="description", type=SearchFieldDataType.String, collection=True),
       ComplexField(
           name="address",
           fields=[
               SimpleField(name="streetAddress", type=SearchFieldDataType.String),
               SimpleField(name="city", type=SearchFieldDataType.String),
           ],
           collection=True,
       ),
   ]

   cors_options = CorsOptions(allowed_origins=["*"], max_age_in_seconds=60)
   scoring_profiles: List[ScoringProfile] = []
   index = SearchIndex(name=name, fields=fields, scoring_profiles=scoring_profiles, cors_options=cors_options)

   result = await client.create_index(index)
   await client.close()

create_or_update_index

Создает новый индекс поиска или обновляет индекс, если он уже существует.

async create_or_update_index(index: SearchIndex, allow_index_downtime: bool | None = None, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> SearchIndex

Параметры

index
SearchIndex
Обязательно

Объект index.

allow_index_downtime
bool
Обязательно

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

match_condition
MatchConditions

Условие соответствия, используемое для etag

Возвращаемое значение

Созданный или обновленный индекс

Возвращаемый тип

Исключения

Примеры

Обновление индекса.


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   fields = [
       SimpleField(name="hotelId", type=SearchFieldDataType.String, key=True),
       SimpleField(name="baseRate", type=SearchFieldDataType.Double),
       SearchableField(name="description", type=SearchFieldDataType.String, collection=True),
       SearchableField(name="hotelName", type=SearchFieldDataType.String),
       ComplexField(
           name="address",
           fields=[
               SimpleField(name="streetAddress", type=SearchFieldDataType.String),
               SimpleField(name="city", type=SearchFieldDataType.String),
               SimpleField(name="state", type=SearchFieldDataType.String),
           ],
           collection=True,
       ),
   ]

   cors_options = CorsOptions(allowed_origins=["*"], max_age_in_seconds=60)
   scoring_profile = ScoringProfile(name="MyProfile")
   scoring_profiles = []
   scoring_profiles.append(scoring_profile)
   index = SearchIndex(name=name, fields=fields, scoring_profiles=scoring_profiles, cors_options=cors_options)

   result = await client.create_or_update_index(index=index)
   await client.close()

create_or_update_synonym_map

Создайте карту синонимов в служба Azure или обновите существующую.

async create_or_update_synonym_map(synonym_map: SynonymMap, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> SynonymMap

Параметры

synonym_map
SynonymMap
Обязательно

Объект "Сопоставление синонимов"

match_condition
MatchConditions

Условие соответствия, используемое для etag

Возвращаемое значение

Созданная или обновленная карта синонимов

Возвращаемый тип

Исключения

create_synonym_map

Создание схемы синонимов в служба Azure

async create_synonym_map(synonym_map: SynonymMap, **kwargs: Any) -> SynonymMap

Параметры

synonym_map
SynonymMap
Обязательно

Объект "Сопоставление синонимов"

Возвращаемое значение

Созданная карта синонимов

Возвращаемый тип

Исключения

Примеры

Создание карты синонимов


   synonyms = [
       "USA, United States, United States of America",
       "Washington, Wash. => WA",
   ]
   synonym_map = SynonymMap(name="test-syn-map", synonyms=synonyms)
   result = await client.create_synonym_map(synonym_map)
   print("Create new Synonym Map 'test-syn-map succeeded")

delete_index

Удаляет индекс поиска и все содержащиеся в нем документы. Модель должна быть указана вместо имени для использования условий доступа.

async delete_index(index: str | SearchIndex, **kwargs: Any) -> None

Параметры

index
SearchIndex
Обязательно

Имя индекса или удаляемый объект.

match_condition
MatchConditions

Условие соответствия, используемое для etag

Исключения

Примеры

Удаление индекса.


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   await client.delete_index(name)
   await client.close()

delete_synonym_map

Удаление именованной карты синонимов в служба Azure. Чтобы использовать условия доступа, вместо имени необходимо указать модель SynonymMap. Достаточно указать имя карты синонимов для безусловного удаления.

async delete_synonym_map(synonym_map: str | SynonymMap, *, match_condition: MatchConditions = MatchConditions.Unconditionally, **kwargs: Any) -> None

Параметры

name
str или SynonymMap
Обязательно

Имя сопоставления синонимов или удаляемый объект

match_condition
MatchConditions

Условие соответствия, используемое для etag

Возвращаемое значение

Нет

Возвращаемый тип

Исключения

Примеры

Удаление карты синонимов


   await client.delete_synonym_map("test-syn-map")
   print("Synonym Map 'test-syn-map' deleted")

get_index

async get_index(name: str, **kwargs: Any) -> SearchIndex

Параметры

name
str
Обязательно

Имя извлекаемого индекса.

Возвращаемое значение

Объект SearchIndex

Возвращаемый тип

Исключения

Примеры

Получение индекса.


   client = SearchIndexClient(service_endpoint, AzureKeyCredential(key))
   name = "hotels"
   result = await client.get_index(name)
   await client.close()

get_index_statistics

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

async get_index_statistics(index_name: str, **kwargs: Any) -> MutableMapping[str, Any]

Параметры

index_name
str
Обязательно

Имя извлекаемого индекса.

Возвращаемое значение

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

Возвращаемый тип

Исключения

get_search_client

Возвращает клиент для выполнения операций с поиском.

get_search_client(index_name: str, **kwargs: Any) -> SearchClient

Параметры

index_name
str
Обязательно

Имя индекса поиска

Возвращаемое значение

SearchClient

Возвращаемый тип

Исключения

get_service_statistics

Получение статистики уровня службы для службы поиска.

async get_service_statistics(**kwargs) -> MutableMapping[str, Any]

Возвращаемое значение

Результат статистики службы

Возвращаемый тип

Исключения

get_synonym_map

Получение именованной карты синонимов в служба Azure

async get_synonym_map(name: str, **kwargs: Any) -> SynonymMap

Параметры

name
str
Обязательно

Имя получаемой карты синонимов

Возвращаемое значение

Полученная карта синонимов

Возвращаемый тип

Исключения

Примеры

Получение карты синонимов


   result = await client.get_synonym_map("test-syn-map")
   print("Retrived Synonym Map 'test-syn-map' with synonyms")
   for syn in result.synonyms:
       print("    {}".format(syn))

get_synonym_map_names

Перечисление имен сопоставления синонимов в служба Azure.

async get_synonym_map_names(**kwargs: Any) -> List[str]

Возвращаемое значение

Список имен карт синонимов

Возвращаемый тип

Исключения

get_synonym_maps

Перечисление карт синонимов в служба Azure.

async get_synonym_maps(*, select: List[str] | None = None, **kwargs) -> List[SynonymMap]

Параметры

select
List[str]

Выбирает свойства верхнего уровня наборов навыков для извлечения. Указывается в виде списка имен свойств JSON или "*" для всех свойств. Значением по умолчанию являются все свойства.

Возвращаемое значение

Список карт синонимов

Возвращаемый тип

Исключения

Примеры

Перечисление карт синонимов


   result = await client.get_synonym_maps()
   names = [x.name for x in result]
   print("Found {} Synonym Maps in the service: {}".format(len(result), ", ".join(names)))

list_index_names

Перечисление имен индексов в служба Azure.

list_index_names(**kwargs: Any) -> AsyncItemPaged[str]

Возвращаемое значение

Список имен индексов

Возвращаемый тип

Исключения

list_indexes

Вывод списка индексов в служба Azure.

list_indexes(*, select: List[str] | None = None, **kwargs) -> AsyncItemPaged[SearchIndex]

Параметры

select
list[str]

Выбирает свойства верхнего уровня наборов навыков для извлечения. Указывается в виде списка имен свойств JSON или "*" для всех свойств. Значением по умолчанию являются все свойства.

Возвращаемое значение

Список индексов

Возвращаемый тип

Исключения