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


Анализ или фрагмент содержимого для стандартных рабочих процессов в Azure Logic Apps (предварительная версия)

Область применения: Azure Logic Apps (стандартная версия)

Внимание

Эта возможность входит в предварительную версию, и на нее распространяются Дополнительные условия использования предварительных версий Microsoft Azure.

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

В этих сценариях используйте действия операций с данными с именем "Анализ документа " и " Фрагмент" в рабочем процессе приложения логики "Стандартный". Эти действия соответственно преобразуют содержимое, например PDF-документ, CSV-файл, файл Excel и т. д., в маркеризованные выходные данные строки, а затем разбивает строку на части на основе количества маркеров. Затем можно ссылаться и использовать эти выходные данные с последующими действиями в рабочем процессе.

Совет

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

  • Что такое токен в ИИ?
  • Что такое маркеризованные входные данные?
  • Что такое выходные данные строки с токенами?
  • Что такое синтаксический анализ в ИИ?
  • Что такое фрагментирование в ИИ?

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

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

Необходимые компоненты

  • Учетная запись и подписка Azure. Если у вас еще нет подписки Azure, зарегистрируйтесь для получения бесплатной учетной записи Azure.

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

Анализ документа

Действие анализа документа преобразует содержимое, например PDF-документ, CSV-файл, файл Excel и т. д. в маркеризованную строку. В этом примере предположим, что рабочий процесс начинается с триггера запроса с именем "При получении HTTP-запроса". Этот триггер ожидает получения HTTP-запроса, отправленного из другого компонента, например функции Azure, другого рабочего процесса приложения логики и т. д. HTTP-запрос содержит URL-адрес для нового отправленного документа, который доступен для рабочего процесса для получения и анализа. Действие HTTP немедленно следует за триггером и отправляет HTTP-запрос на URL-адрес документа и возвращает содержимое документа из своего расположения хранилища.

При использовании других источников контента, таких как Хранилище BLOB-объектов Azure, SharePoint, OneDrive, файловая система, FTP и т. д., можно проверить, доступны ли триггеры для этих источников. Вы также можете проверить, доступны ли действия для получения содержимого для этих источников. Дополнительные сведения см. в статье о встроенных операциях и управляемых соединителях.

  1. В портал Azure откройте ресурс приложения логики "Стандартный" и рабочий процесс в конструкторе.

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

  3. В конструкторе выберите действие анализа документа .

  4. После открытия области сведений о действии на вкладке "Параметры " в свойстве "Содержимое документа" укажите содержимое для анализа, выполнив следующие действия:

    1. Выберите внутри поля содержимого документа.

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

      • Чтобы выбрать выходные данные из предыдущего действия, выберите список динамического содержимого.

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

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

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

      В этом примере действие анализа документа ссылается на выходные данные текста из действия HTTP .

      Снимок экрана: конструктор рабочих процессов уровня

      Теперь выходные данные текста отображаются в поле содержимого документа:

      Снимок экрана: пример рабочего процесса с выходными данными текста в действии с именем

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

Анализ документа — справочник

Параметры

Имя. Значение Тип данных Description Лимит
Содержимое документа <синтаксический анализ содержимого> Любое Анализируемое содержимое. нет

Выходные данные

Имя. Тип данных Description
Проанализированный текст результата Массив строк Массив строк.
Результат синтаксического анализа Object Объект, содержащий весь проанализированный текст.

Фрагмент текста

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

Примечание.

Предыдущие действия, использующие блоки, не влияют на действие "Блоки", а действие "Фрагмент" не влияет на последующие действия, использующие блоки.

  1. В портал Azure откройте ресурс приложения логики "Стандартный" и рабочий процесс в конструкторе.

  2. В действии синтаксического анализа документа выполните следующие общие действия, чтобы добавить действие "Операции данных" с именем Chunk text.

  3. В конструкторе выберите действие "Фрагмент текста ".

  4. После открытия области сведений о действии на вкладке "Параметры " для свойства "Стратегия блокирования" выберите TokenSize в качестве метода блокирования, если он еще не выбран.

    Стратегия Description
    TokenSize Разделить указанное содержимое на основе количества маркеров.
  5. Выбрав стратегию, выберите внутри текстового поля, чтобы указать содержимое для фрагментирования.

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

    • Чтобы выбрать выходные данные из предыдущего действия, выберите список динамического содержимого.

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

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

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

      В этом примере действие "Фрагмент текста" ссылается на выходные данные результата синтаксического анализа действия документа.

      Снимок экрана: конструктор стандартных рабочих процессов, действие с именем Chunk с открытым списком динамического содержимого и выбранные выходные данные из действия документа.

      Выходные данные действия синтаксического результата теперь отображаются в текстовом поле:

      Снимок экрана: пример рабочего процесса с выбранным результатом анализа выходных данных в действии с именем Chunk text.

  6. Выполните настройку действия "Фрагмент текста " на основе выбранной стратегии и сценария. Дополнительные сведения см . в разделе "Фрагмент" — справочник.

Теперь при добавлении других действий, которые ожидают и используют маркеризованные входные данные, такие как действия ИИ Azure, входное содержимое форматируется для упрощения использования.

Фрагментный текст — справочник

Параметры

Имя. Значение Тип данных Description Ограничения
Стратегия фрагментирования TokenSize Перечисление строки Разделите содержимое на основе количества маркеров.

По умолчанию: TokenSize
Нет данных
Текст <content-to-chunk> Любое Содержимое для фрагмента. См. руководство по ограничениям и конфигурации
КодировкаModel <Метод кодировки> Перечисление строки Модель кодирования, используемая:

— по умолчанию: cl100k_base (gpt4, gpt-3.5-turbo, gpt-35-turbo)

- r50k_base (gpt-3)

- p50k_base (gpt-3)

- p50k_edit (gpt-3)

- cl200k_base (gpt-4o)

Дополнительные сведения см. в разделе OpenAI — Общие сведения о моделях.
Нет данных
TokenSize <max-token-per-chunk> Целое Максимальное количество маркеров на блок содержимого.

По умолчанию: нет
Минимум: 1
Максимум: 8000
PageOverlapLength <число перекрывающихся символов> Целое Число символов из конца предыдущего блока, включаемого в следующий блок. Этот параметр помогает избежать потери важных сведений при разбинии содержимого на блоки и сохраняет непрерывность и контекст между блоками.

По умолчанию: 0 — нет перекрывающихся символов.
Минимум: 0

Совет

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

  • Что такое PageOverlapLength в фрагментах?
  • Что такое кодировка в Azure AI?

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

Выходные данные

Имя. Тип данных Description
Фрагментированные текстовые элементы Массив строк Массив строк.
Фрагментированные текстовые элементы Строка Одна строка в массиве.
Фрагментированные результаты Object Объект, содержащий весь фрагментированный текст.

Пример рабочего процесса

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

Снимок экрана: полный пример рабочего процесса.

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

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

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