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


Подключение к службам ИИ Azure из рабочих процессов в Azure Logic Apps

Область применения: Azure Logic Apps (Потребление + Стандартный)

Чтобы интегрировать корпоративные службы, системы и данные с технологиями ИИ, рабочие процессы приложения логики могут подключаться к ресурсам Azure OpenAI и azure AI Search , которые используются для этих сценариев интеграции.

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

Зачем использовать Azure Logic Apps со службами ИИ?

Как правило, создание решений ИИ включает несколько ключевых шагов и требует нескольких стандартных блоков. В первую очередь необходимо иметь динамический конвейер приема и интерфейс чата, который может взаимодействовать с большими языковыми моделями (LLM) и векторными базами данных.

Совет

Чтобы узнать больше, вы можете задать Azure Copilot следующие вопросы:

  • Что такое динамический конвейер приема в ИИ?
  • Что такое векторная база данных в ИИ?

Чтобы найти Azure Copilot, на панели инструментов портал Azure выберите Copilot.

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

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

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

Предварительные условия

Технический справочник по соединителю

В рабочих процессах потребления управляемые или "общие" соединители Azure OpenAI и Azure AI Search в настоящее время находятся в предварительной версии и подпадают под действие дополнительных условий использования для предварительных версий Microsoft Azure.

Azure OpenAI

Служба Azure OpenAI предоставляет доступ к языковым моделям OpenAI, включая GPT-4, GPT-4 Turbo с Vision, GPT-3.5-Turbo и серии моделей встраивания. С помощью соединителя Azure OpenAI ваш рабочий процесс может подключаться к Службе Azure OpenAI и получать векторные представления OpenAI для данных или генерировать завершения чата.

Совет

Чтобы узнать больше, вы можете задать Azure Copilot следующие вопросы:

  • Что такое внедрение в ИИ?
  • Что такое завершение чата в ИИ?

Чтобы найти Azure Copilot, на панели инструментов портал Azure выберите Copilot.

Соединитель Azure OpenAI имеет разные версии на основе типа приложения логики и модели размещения:

Приложение логики Окружающая среда Версия соединителя
Потребление Мультитенантные Azure Logic Apps Управляемый соединитель, размещенный в Azure, который отображается в коллекции соединителей в разделе "Общая среда выполнения>".

Для получения дополнительной информации см. справочник по управляемому соединителю Azure OpenAI.
Стандартные Одноарендаторное Azure Logic Apps, Среда службы приложений версии 3 (только планы Windows) или гибридное развертывание, которое представляет собой вашу инфраструктуру. Встроенный соединитель, который отображается в коллекции соединителей под средой выполнения>В приложении и основан на поставщике услуг. Встроенный соединитель имеет следующие возможности:

— поддержка нескольких типов проверки подлинности

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

Для получения дополнительной информации см. справку по встроенному соединителю Azure OpenAI.

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

Соединитель Azure AI Search имеет разные версии, основанные на типе логического приложения и модели размещения:

Логическое приложение Окружающая среда Версия соединителя
Потребление Мультитенантные Azure Logic Apps Управляемый соединитель, размещенный в Azure, который отображается в коллекции соединителей в разделе "Общая среда выполнения>".

Дополнительные сведения см. в справочнике по управляемому соединителю службы "Поиск ИИ Azure".
Стандартные Одноарендное Azure Logic Apps, Среда служб приложений версии 3 (только для Windows-планов) или гибридное развертывание, которое является вашей собственной инфраструктурой. Встроенный соединитель, который отображается в галерее соединителей под Средой выполнения и В приложении и основан на поставщике услуг. Встроенный соединитель имеет следующие возможности:

— поддержка нескольких типов проверки подлинности

— Прямой доступ к ресурсам в виртуальных сетях Azure и конечным точкам Azure OpenAI за брандмауэрами.

Дополнительные сведения см. в справочнике по встроенному соединителю службы Azure AI Search.

Проверка подлинности

Для проверки подлинности управляемых соединителей ИИ требуется ключ API. Однако встроенные соединители ИИ поддерживают несколько типов проверки подлинности для конечной точки службы ИИ. Эти параметры обеспечивают надежную проверку подлинности, которая соответствует потребностям большинства клиентов. Встроенные соединители также могут напрямую подключаться к ресурсам Azure OpenAI и Azure AI Search внутри виртуальных сетей или за брандмауэрами.

В следующей таблице описаны встроенные параметры проверки подлинности соединителя, которые требуют предоставления URL-адреса для конечной точки службы ИИ:

Тип аутентификации Описание
Проверка подлинности на основе URL-адресов и ключей Укажите ключ API или администратор, созданный службой ИИ.
OAuth Active Directory (идентификатор Microsoft Entra) Предоставьте информацию, такую как тенант Entra, ID клиента и пароль для аутентификации в качестве пользователя Entra.
Управляемая идентификация После настройки проверки подлинности управляемого удостоверения в ресурсе службы искусственного интеллекта и ресурсе приложения логики вы можете использовать это удостоверение для проверки подлинности доступа к соединителю.

Предупреждение

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

Для проверки подлинности и авторизации настройте или используйте идентификатор Microsoft Entra с управляемым удостоверением. Это решение обеспечивает оптимальную и превосходную безопасность без необходимости вручную предоставлять учетные данные, секреты, ключи доступа и т. д., так как Azure обрабатывает управляемое удостоверение. Сведения о настройке управляемого удостоверения для Azure Logic Apps см. в статье "Проверка подлинности доступа и подключений к ресурсам Azure с помощью управляемых удостоверений в Azure Logic Apps".

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

Убедитесь, что вы безопасно храните такие сведения с помощью идентификатора Microsoft Entra и Azure Key Vault. Не закодировать эти сведения, поделиться с другими пользователями или сохранить в виде обычного текста в любом месте, к которому могут получить доступ другие пользователи. Настройте план для смены или отмены секретов в случае, если они скомпрометировались. Дополнительные сведения см. на следующих ресурсах:

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

Добавление действия поиска Azure OpenAI или Azure AI в рабочий процесс

В настоящее время соединители для Azure OpenAI и Azure AI Search предоставляют только команды, а не триггеры. Вы можете запустить рабочий процесс с любым триггером, соответствующим вашему сценарию или потребностям. В зависимости от того, есть ли рабочий процесс потребления или уровня "Стандартный", вы можете выполнить следующие общие действия, чтобы добавить действия для Azure OpenAI, поиска ИИ Azure и других операций.

Сценарии

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

Создание база знаний для корпоративных данных

Azure Logic Apps предоставляет более 1400 управляемых Корпорацией Майкрософт соединителей и встроенные соединители для рабочего процесса для безопасного подключения к любому источнику данных, таким как SharePoint, Oracle DB, Salesforce, OneDrive, Dropbox, SAP, IBM и т. д. Каждый соединитель предоставляет операции, которые включают триггеры, действия или оба для использования в рабочем процессе.

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

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

Генерация завершений

Рабочий процесс Azure Logic Apps может принимать входные данные, а служба Azure OpenAI может выполнять операции завершения. Эти возможности означают, что рабочий процесс может получать вопросы в режиме реального времени, создавать ответы о данных или отправлять автоматические ответы с помощью Azure OpenAI. Вы можете немедленно отправить ответы клиенту или в рабочий процесс утверждения для проверки.

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

Пример сценария с примером кода: загрузка данных и создание взаимодействий в чате

В этом примере рабочего процесса уровня "Стандартный" показано, как использовать встроенные соединители Azure OpenAI и Службы поиска ИИ Azure для разбиения серверной логики для приема данных и проведения простых бесед чата в два ключевых рабочих процесса. Для повышения производительности создайте рабочие процессы без состояния, которые по умолчанию не сохраняют и не хранят журнал выполнения для каждого запуска.

Пример кода

Создание чата с использованием загруженных данных

Другие необходимые условия

  • Стандартный рабочий процесс логического приложения

  • См. пример требований к коду.

  • Следующие значения параметров между средами также используются операциями рабочего процесса в этом примере:

    Наименование параметра Description
    aisearch_admin_key Ключ администратора для поиска по искусственному интеллекту Azure
    aisearch_endpoint URL-адрес конечной точки для примера поиска ИИ Azure
    aisearch_index_name Индекс, используемый для примера поиска ИИ Azure
    openapi_api_key Ключ API для Azure OpenAI
    openai_deployment_id Идентификатор развертывания для примера Azure OpenAI
    openai_endpoint URL-адрес конечной точки для примера Azure OpenAI
    tokenize_function_url URL-адрес настраиваемой функции Azure, которая пакетирует и маркеризирует данные, необходимые для правильного создания внедрения в этом примере Azure OpenAI.

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

Видео. Узнайте, как создавать приложения ИИ с помощью приложений логики

Узнайте, как создавать приложения ИИ с помощью приложений логики

Рабочий процесс приема данных

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

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

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

Шаг Задача Базовая операция Описание
1 Проверьте наличие новых данных. При получении HTTP-запроса Триггер, который либо опрашивает, либо ожидает поступления новых данных: в первом случае — на основе заданного интервала, а во втором — в ответ на конкретные события. Такое событие может быть новым файлом, который отправляется в определенную систему хранения, например SharePoint, OneDrive или Хранилище BLOB-объектов Azure.

В этом примере операция триггера запроса ожидает отправки HTTP-запроса или HTTPS из другой конечной точки. Запрос содержит URL-адрес для нового отправленного документа.
2 Получение данных. HTTP Действие HTTP , которое извлекает отправленный документ с помощью URL-адреса файла из выходных данных триггера.
3 Создание сведений о документе. Составление Действие операций с данными, сцепляющее различные элементы.

В этом примере объединяются сведения о ключе-значении документа.
4 Создайте строку токена. Анализ документа Действие Data Operations, которое создает строчку токена, используя данные, полученные в результате действия Compose.
5 Создание блоков содержимого. Фрагмент текста Действие операции с данными, которое разделяет строку токенов на части по количеству символов или токенов на блок содержимого.
6 Преобразуйте маркеризованные данные в JSON. Синтаксический анализ JSON Data Operations — действие, которое преобразует части строк токенов в массив JSON.
7 Выберите элементы массива JSON. Select Действие Операции данных, которое выбирает несколько элементов из массива JSON.
8 Создайте эмбеддинги. Получить несколько векторных представлений Действие Azure OpenAI, которое создает эмбеддинги для каждого элемента массива JSON.
9 Выберите встраивания и другую информацию. Select Операция с данными, которая выбирает встраивания и другие сведения о документе.
10 Индексирование данных. Индексировать документы Действие поиска ИИ Azure, которое индексирует данные на основе каждого выбранного внедрения.

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

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

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

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

Шаг Задача Базовая операция Описание
1 Дождитесь появления приглашения для ввода. При получении HTTP-запроса Триггер, который опрашивает или ожидает поступления новых данных на основе запланированного повторения или в ответ на определенные события соответственно.

В этом примере триггер запроса ожидает и фиксирует вопрос клиента.
2 Входное системное сообщение для модели. Написать Действие операций с данными, которое предоставляет входные данные для обучения модели.
3 Вводимые примеры вопросов и ответов. Сочинение Действие «Операции с данными», предоставляющее примеры вопросов клиентов и связанные роли для обучения модели.
4 Входное системное сообщение для запроса поиска. Составить Действие Data Operations, которое предоставляет параметры поискового запроса для обучения модели.
5 Создайте поисковый запрос. Execute JavaScript Code Действие Inline Code, использующее JavaScript для создания поискового запроса для векторного хранилища на основе выходных данных из предыдущих действий Compose.
6 Преобразование запроса в внедрение. Получение результатов чата Действие Azure OpenAI, подключающееся к API завершения чата и обеспечивающее надежные ответы в чатах.

В этом примере действие принимает поисковые запросы и роли в качестве входных данных в модель и возвращает векторные внедрения в качестве выходных данных.
7 Получите встраивание. Получить встраивание Действие Azure OpenAI, которое получает одно векторное представление.
8 Выполните поиск векторной базы данных. Векторы поиска Действие Azure AI Search, которое выполняет поиск в хранилище векторов.
9 Создайте запрос. Execute JavaScript Code Действие встроенного кода , использующее JavaScript для создания запросов.
10 Завершение чата. Получение завершения чата Действие Azure OpenAI, которое подключается к API завершения чата и гарантирует надежные ответы в чатах.

В этом примере действие принимает запросы и роли в качестве входных данных в модель и возвращает созданные моделью ответы в качестве выходных данных.
11 Возвращает ответ. Response Действие запроса, которое возвращает результаты вызывающей стороне при использовании триггера запроса.