Интеллектуальная поисковая система для товаров, предназначенная для решений электронной коммерции

Azure AI Служба Bot
Поиск по искусственному интеллекту Azure
Службы ИИ Azure
База данных SQL Azure
Служба приложений Azure

В этом примере сценария показано, как использование специализированной службы поиска может значительно повысить релевантность результатов поиска для клиентов электронной коммерции.

Архитектура

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

Скачайте файл Visio для этой архитектуры.

Рабочий процесс

Этот сценарий рассматривает решение электронной коммерции, в котором клиенты могут выполнять поиск в каталоге продуктов.

  1. Клиенты отправляются в веб-приложение электронной коммерции с любого устройства.
  2. Каталог продуктов поддерживается в базе данных SQL Azure для обработки транзакций.
  3. Служба "Поиск ИИ Azure" использует индексатор поиска для автоматического обновления индекса поиска с помощью встроенного отслеживания изменений.
  4. Поисковые запросы клиента выгружаются в службу поиска ИИ, которая обрабатывает запрос и возвращает наиболее релевантные результаты.
  5. В качестве альтернативы веб-поисковому опыту клиенты также могут использовать виртуальный собеседник в социальных сетях или прямо с цифровых помощников для поиска продуктов и постепенного уточнения своего поискового запроса и результатов.
  6. Кроме того, клиенты могут использовать функцию набора навыков для применения искусственного интеллекта для более интеллектуальной обработки.

Компоненты

  • служба приложение Azure — веб-приложения размещает веб-приложения, позволяющие автомасштабирование и высокий уровень доступности без необходимости управлять инфраструктурой.
  • База данных SQL Azure — это служба под управлением реляционной базой данных общего назначения в Microsoft Azure, которая поддерживает такие структуры, как реляционные данные, JSON, пространственные и XML-файлы.
  • Поиск ИИ — это облачное решение, которое предоставляет широкий интерфейс поиска по частному, разнородному содержимому в интернете, мобильных и корпоративных приложениях.
  • Azure AI Служба Bot предоставляет средства для создания, тестирования, развертывания и управления интеллектуальными ботами.
  • Службы искусственного интеллекта Azure позволяют использовать интеллектуальные алгоритмы, чтобы просматривать, слышать, говорить, понимать и интерпретировать потребности пользователя с помощью естественных методов взаимодействия.

Альтернативные варианты

  • Можно использовать возможности поиска в базе данных, например через полнотекстовый поиск по SQL Server, но затем ваше хранилище транзакций будет также обрабатывать запросы (увеличивая потребность в мощности обработки), а возможности поиска внутри базы данных будут более ограниченными.
  • Вы можете разместить Apache Lucene с открытым исходным кодом (на котором создан поиск ИИ) в Azure Виртуальные машины, но затем вы вернеесь к управлению инфраструктурой как услуга (IaaS) и не получаете преимущества от многих функций, предоставляемых поиском ИИ на вершине Lucene.
  • Вы также можете рассмотреть возможность развертывания Elasticsearch из Azure Marketplace, который является альтернативным и способным искать продукт от стороннего поставщика, но и в этом случае вы используете рабочую нагрузку IaaS.

Другие варианты для уровня данных:

  • Azure Cosmos DB — глобальная распределенная база данных Майкрософт с несколькими моделями. Azure Cosmos DB предоставляет платформу для запуска других моделей данных, таких как MongoDB, Cassandra, данные Graph или простое хранилище таблиц. Поиск ИИ также поддерживает индексирование данных из Azure Cosmos DB напрямую.

Подробности сценария

Поиск — это основной механизм, с помощью которого клиенты находят и в конечном итоге покупают продукты, что делает его важным, что результаты поиска относятся к намерению поискового запроса, и что комплексный интерфейс поиска соответствует гигантам поиска, предоставляя практически мгновенные результаты, лингвистические анализы, сопоставление географического расположения, фильтрацию, фасетирование, автозаполнение и выделение попаданий.

Представьте себе типичное веб-приложение электронной коммерции с данными продукта, хранящимися в реляционной базе данных, например SQL Server или База данных SQL. Поисковые запросы часто обрабатываются в базе данных с помощью LIKE запросов или функций полнотекстового поиска . Вместо этого с помощью поиска ИИ вы освобождаете операционную базу данных от обработки запросов, и вы можете легко начать использовать эти сложные функции, которые предоставляют клиентам лучший способ поиска. Кроме того, поскольку поиск ИИ является платформой как услуга (PaaS), вам не нужно беспокоиться об управлении инфраструктурой или стать экспертом по поиску.

Потенциальные варианты использования

Это решение оптимизировано для розничной отрасли.

Другие варианты использования:

  • Поиск списков недвижимости или магазинов вблизи физического расположения пользователя (для объектов и отрасли недвижимости).
  • Поиск статей на новостном сайте или поиск спортивных результатов, с более высоким предпочтением для более поздних сведений (для спорта, средств массовой информации и развлекательных отраслей).
  • Поиск по большим репозиториям для организаций, ориентированных на документ, таких как политики и нотарии.

В конечном счете любое приложение с любыми функциями поиска может использовать преимущества специальной службы поиска.

Рекомендации

Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.

Масштабируемость

Ценовая категория служба ИИ используется главным образом для планирования емкости, так как она определяет максимальное хранилище, которое вы получаете, и сколько секций и реплик можно подготовить. Секции позволяют индексировать больше документов и получать более высокую пропускную способность записи, в то время как реплики предоставляют больше запросов в секунду (QPS) и высокий уровень доступности.

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

Availability

Поиск ИИ предоставляет соглашение об уровне обслуживания на уровне обслуживания (SLA) на уровне доступности 99,9 % для операций чтения (т. е. запросов), если у вас есть по крайней мере две реплики, а также обновления (то есть обновление индексов поиска), если у вас есть по крайней мере три реплики. Таким образом, необходимо подготовить по крайней мере две реплики, если вы хотите, чтобы клиенты могли надежно выполнять поиск , и три, если фактические изменения в индексе также должны рассматриваться как операции с высокой доступностью.

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

Безопасность

Поиск ИИ соответствует многим стандартам безопасности и конфиденциальности данных, поэтому его можно использовать в большинстве отраслей.

Чтобы защитить доступ к службе, можно использовать управление доступом на основе ролей Azure (RBAC) или подключиться к ключам API.

Рекомендуется использовать Azure RBAC, так как он использует роли Azure, которые интегрируются с идентификатором Microsoft Entra. При использовании ролей Azure можно также использовать методы проверки подлинности без пароля, такие как управляемые удостоверения для ресурсов Azure.

Ключи API включают ключи администратора, которые предоставляют полный доступ ко всем операциям содержимого и ключам запросов, которые предоставляют доступ только для чтения к коллекции документов индекса поиска. Необходимо настроить приложения, которые не должны обновлять индекс, чтобы использовать ключ запроса, а не ключ администратора, особенно если устройство конечного пользователя, например скрипт, запущенный в веб-браузере, выполняет поиск.

Вы также можете защитить доступ к служба ИИ на уровне сети, предоставив его через частную конечную точку.

Релевантность поиска

Успешность вашего приложения электронной коммерции зависит главным образом от релевантности результатов поиска для ваших клиентов. Тщательно настройте службу поиска, чтобы обеспечить оптимальные результаты на основе исследований пользователей или полагаться на анализ трафика поиска, чтобы понять шаблоны поиска клиента, позволяет принимать решения на основе данных.

Типичные способы настройки службы поиска включают в себя:

  • Использование профилей оценки для влияния на релевантность результатов поиска, например в зависимости от того, какое поле соответствовало запросу, как последние данные и географическое расстояние для пользователя.
  • Использование анализаторов языка, предоставляемых корпорацией Майкрософт, которые используют расширенный стек обработки естественного языка для более эффективной интерпретации запросов.
  • использование пользовательских анализаторов, чтобы убедиться, что ваша продукция найдена правильно, особенно если вы хотите выполнить поиск на неязыковой основе, такой как марка и модель продукта.

Оптимизация затрат

Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см. в разделе Обзор критерия "Оптимизация затрат".

Чтобы изучить стоимость выполнения этого сценария, все упомянутые ранее службы предварительно настроены в калькуляторе затрат. Чтобы узнать, как изменится цена для конкретного варианта использования, измените соответствующие переменные в соответствии с ожидаемым использованием.

Рассмотрим эти примеры профилей затрат на основе объема трафика, который требуется обрабатывать:

  • Небольшой. Этот профиль использует одно Standard S1 веб-приложение для размещения веб-сайта, уровня "Бесплатный" Служба Bot ИИ Azure, одной Basic службы поиска и Standard S2 База данных SQL.
  • Средний: этот профиль масштабирует веб-приложение до двух экземпляров Standard S3 уровня, обновляет службу поиска до Standard S1 уровня и использует Standard S6 База данных SQL.
  • Крупный: этот профиль использует четыре экземпляра Premium P2V2 веб-приложения, обновляет Служба Bot ИИ Azure до Standard S1 уровня (с 1.000.000 сообщениями в каналах Premium) и использует две единицы Standard S3 службы поиска и Premium P6 База данных SQL.

Развертывание этого сценария

Чтобы развернуть версию этого сценария, вы можете выполнить это пошаговое руководство , в котором представлен пример приложения .NET, на котором запущен веб-сайт поиска заданий. Он демонстрирует большую часть функций поиска ИИ, рассмотренных до сих пор.

Соавторы

Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.

Автор субъекта:

  • Jelle Druyts | Главный инженер клиента

Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.

Следующие шаги

Чтобы узнать больше о поиске ИИ, посетите центр документации или ознакомьтесь с примерами.

Дополнительные сведения о других компонентах Azure см. в следующих ресурсах: