Azure AI Vector Search розширює можливості пошуку, використовуючи векторні вбудовування для розуміння семантичного значення запитів і документів. У поєднанні з Copilot Studio це забезпечує взаємодію з вашими даними за допомогою природної мови, роблячи його потужним інструментом для AI-керованих застосунків. Цей посібник проведе вас крізь увесь процес налаштування — від підключення джерел даних до активації розширених функцій пошуку.

Передумови

Перш ніж розпочати, переконайтеся, що у вас є:

  • активна підписка Azure,

  • доступ до середовища Dataverse (частина Microsoft Power Platform),

  • необхідні дозволи для створення й керування ресурсами Azure.

Крок 1: Налаштування Azure Synapse Link для Dataverse

Azure Synapse Link з’єднує ваше середовище Dataverse з Azure, дозволяючи експортувати дані до облікового запису сховища для подальшої обробки. Але спершу потрібно розгорнути службу Azure Synapse Analytics.

Створення робочої області Azure Synapse Analytics:

У порталі Azure перейдіть до «Створити ресурс» і створіть робочу область Synapse Analytics, налаштувавши такі параметри.

Azure Synapse Analytics
create synapse workspace

Скріншот 1

Скріншот 1 – роз’яснення:

  • Група ресурсів – тут можна створити нову групу.
  • Керована група ресурсів – контейнер, який зберігає допоміжні ресурси, створені Azure Synapse Analytics для вашої робочої області.
  • Назва робочої області – назва робочої області Synapse Analytics.
  • Регіон – регіон розгортання служби бажано має збігатися з регіоном середовища Dataverse. Втім, також можуть підійти й інші відносно близькі регіони (можливі додаткові витрати на передавання даних).
  • Назва облікового запису – назва сховища для Data Lake Storage, можна створити тут.
  • Назва файлової системи – назва файлової системи для Data Lake Storage, можна створити тут.
create synapse workspace

Скріншот 2

Скріншот 2:

  • Type your SQL Server admin login.
  • Choose a SQL Password.

2. Створіть новий Azure Synapse Link:

  • Перейдіть до порталу Power Apps. У лівому меню виберіть Azure Synapse Link.
New Link Creation
  • Натисніть «New link» і задайте такі параметри:

 

  1. Позначка «Connect to your Azure Synapse Analytics Workspace» має бути встановлена.
  2. Підписка – поточна підписка Azure.
  3. Група ресурсів, назва робочої області, обліковий запис сховища – параметри з раніше створеної робочої області Azure Synapse Analytics.

 

Виберіть таблиці, які потрібно експортувати. Примітка: відображатимуться лише ті таблиці, для яких увімкнено відстеження змін.

Dataverse 'New link' window showing table selection. 'Products' table is selected with partition set to Month.
  • Також доступні розширені параметри:
  1. «Append only» – може використовуватися для створення нової копії даних в Azure Synapse Analytics під час змін у даних Dataverse, замість перезапису наявних записів.
  2. Partition (Розбиття на розділи) – за замовчуванням Azure Synapse Link для Dataverse розбиває дані щомісяця на основі стовпця «createdOn». Для таблиць без стовпця «createdOn» дані розподіляються у нові файли після кожних 5 000 000 записів.
Azure Synapse Link for Dataverse showing 'Products' table with sync status Active and partition set to Month.

Крок 2: Налаштування Azure AI Search

Azure AI Search індексує та векторизує ваші дані, роблячи їх доступними для пошуку з розширеними можливостями.

Створення екземпляра Azure AI Search:

У порталі Azure створіть новий ресурс Azure AI Search. Налаштуйте такі параметри:

1. Група ресурсів – та сама група ресурсів, що й для Azure Synapse Analytics.

2. Назва служби для екземпляра Azure AI Search.

3. Розташування – регіон розгортання служби. Бажано, щоб він збігався з регіоном середовища Dataverse та служби Azure Synapse Analytics. Втім, можуть підійти й інші відносно близькі регіони (можливі додаткові витрати на передавання даних).

Card for Azure AI Search service showing description and create option.
Azure portal 'Create a search service' page showing project details and instance details form.
  • Є кілька варіантів ціноутворення, а також параметри масштабування. Але для наведеного прикладу ми обрали безкоштовний тарифний план без масштабування.
Selection of a price tier
Azure 'Create a search service' scale tab showing 2 search units, estimated cost $499.97, 1 replica, and 2 partitions.

2.Імпорт даних:

  • Перейдіть до розділу «Import data» у вашому екземплярі Azure AI Search.
  • Виберіть «Azure Blob Storage» як джерело даних.
  • Укажіть обліковий запис сховища та контейнер BLOB, куди Synapse Link експортує дані Dataverse (наприклад, обліковий запис сховища «Data Lake»).

3.Налаштування параметрів розбору:

Встановіть «Parsing mode» у значення «Delimited text», оскільки дані зберігаються у форматі CSV.

Використовуйте кому (,) як «Delimiter character».

Оскільки CSV-файли Synapse Link не містять заголовків, введіть назви стовпців вручну, щоб вони відповідали вашим полям Dataverse та системним стовпцям.

Порада з усунення несправностей:

Після імпорту індекс, індексатор та набір навичок створюються автоматично (сторінка 16). Якщо індексатор не виконує роботу, перевірте проблеми з імпортом CSV і за потреби застосуйте обхідні рішення (сторінка 17).

Крок 3: Налаштування служби Azure OpenAI

Служба Azure OpenAI використовується для надання моделей векторизації (embedding models) для перетворення даних в Azure AI Search. Моделі векторизації забезпечують семантичний пошук, перетворюючи текст у векторні подання.

Налаштування служби Azure OpenAI:

  • Створіть екземпляр служби Azure OpenAI у порталі Azure та задайте такі параметри:

1. Група ресурсів – та сама група ресурсів, що й для Azure Synapse Analytics та Azure AI Search.

2. Регіон – регіон розгортання служби. Бажано, щоб він збігався з регіоном середовища Dataverse та служби Azure Synapse Analytics. Втім, можуть підійти й інші відносно близькі регіони (можливі додаткові витрати на передавання даних).

Azure Open AI
Azure portal form to create an Azure OpenAI resource with project and instance details.
  • Розгорніть потрібну модель векторизації через портал Azure AI Foundry. У цьому випадку використовується модель «text-embedding-3-small».
Azure AI Foundry model catalog with embedding models list.

Крок 4: Імпорт та векторизація даних в Azure AI Search

Насамперед потрібно перевірити, у якому сховищі/контейнері BLOB зберігаються наші дані. Хоча ми створили «crm120910-filesystem» у межах робочої області Azure Synapse Analytics, служба Azure Synapse Link створила власний контейнер для даних Dataverse. Файл «2025-07.csv» містить наші поточні дані Dataverse, які необхідно розібрати та передати до служби Azure AI Search.

Azure Storage account containers view showing three containers: crm120910-filesystem, dataverse-crm120910, and power-platform-dataflows.
Azure storage container dataverse-crm120910 showing folders Snapshot and a file named 2025-07.csv.

1. Імпорт та векторизація даних:

  • В Azure AI Search відкрийте «Import and vectorize data».
  • Виберіть «Azure Data Lake Storage», а потім «RAG».
Import and victorize data
Import and Vectorize

Тепер налаштуйте такі параметри:

  1. Обліковий запис сховища – назва сховища Data Lake.
  2. Контейнер BLOB – контейнер BLOB із нашими даними Dataverse.
  3. Режим розбору (Parsing mode) – «Delimited text», оскільки дані зберігаються у форматі CSV.
  4. Символ-роздільник (Delimiter character) – кома для розділення даних CSV.
  5. Заголовки-роздільники (Delimiter headers) – назви заголовків CSV. Оскільки Azure Synapse Link не зберігає заголовки безпосередньо, ми повинні надати їх вручну. Вони включають усі поля Dataverse з обраної таблиці, а також деякі системні стовпці.
Azure RAG setup screen configuring Azure Data Lake Storage Gen2 with subscription, storage account, blob container, folder, parsing mode, and delimiter settings.
CSV file preview in Azure storage named 2025-07.csv, showing rows of product data with IDs, timestamps, user references, and system fields

Далі налаштуйте такі параметри:

  1. Стовпець для векторизації (Column to vectorize) – у цьому прикладі векторизується поле «name» продукту, яке використовується Azure AI Search.
  2. Тип (Kind) – служба AI, що використовується для надання моделей векторизації.
  3. Служба Azure OpenAI (Azure OpenAI service) – оскільки ми використовуємо й створюємо службу Azure OpenAI.
  4. Розгортання моделі (Model-deployment) – модель векторизації зі служби AI. Тут використовується модель векторизації, яку ми створили раніше у межах Azure OpenAI через портал Azure AI Foundry.
Azure RAG setup screen for vectorizing text, selecting ProductName column, Azure OpenAI service, and embedding model text-embedding-3-small.
  • Далі можна вибрати, які поля індексувати, та задати параметр розкладу. Індексація використовується для надання цих полів у результатах пошуку. Як бачимо, ми не можемо змінити поле «name» у вже доданих продуктах, оскільки воно використовується як векторизоване поле.
Azure Interface instruction: Schedule Indexing
Azure Instructions: Field Definitions

2. Усунення проблем з індексатором:

  • Після імпорту даних автоматично створюються «Index», «Indexer» та «Skillset».
Azure portal screenshot showing Indexer status
  • Можливо, індексатор не запрацює з першої спроби. Існують певні проблеми з імпортом CSV-файлів, які можна виправити за допомогою обхідних рішень.
Azure portal run history table showing indexer statuses: Success (3006 docs), Reset (0 docs), and Failed (0 docs, 1 error).
Azure indexer error message
  • Щоб виправити помилки «chunk_id» / «Could not parse document», необхідно переконатися, що у визначенні індексатора є функція відображення (mapping function), як зазначено в документації.
Azure documentation screenshot: error “Could not parse document” showing causes (missing/invalid document key) and resolutions
  • Отже, потрібно відредагувати JSON всередині індексатора та додати функцію відображення (mapping function).
Indexser JSON Editor
Copy to Clipboard
  • Після цього виправлення потрібно скинути та повторно запустити індексатор. Процес індексації може зайняти певний час, залежно від фактичного обсягу даних.
Azure indexer execution history showing recent runs: one Success (50s, 3006 docs), one Reset (0 docs), and one Failed (1 error). Chart displays run durations by status.

Крок 5: Тестування векторного пошуку в Azure AI Search

Переконайтеся, що ваш векторний пошук працює належним чином.

1. Використання Search Explorer:

  • У Azure AI Search відкрийте «Search Explorer».
  • Введіть тестовий запит для пошуку проіндексованих даних.

2. Аналіз результатів:

  • Результати відображатимуть елементи на основі семантичної подібності (наприклад, синонімів).
  • Сховайте векторні значення за допомогою **«Query options»**, щоб отримати чистіший вивід.
  • У відповіді відображаються дані:

1. «chunk» — це фактично векторизоване поле. У цьому випадку — поле «name» продукту.

2. «description — поле з цієї таблиці, яке ми індексували.

3. Крім того, пошук надає відносні оцінки (relative scores) для результатів. Перевірте їх, щоб оцінити релевантність результатів.

Azure Search Explorer showing query "grey drapes for living room" returning indexed JSON results with fields like chunk_id, parent_id, chunk, description, rownumber, and EntityCount.

Крок 6: Інтеграція з Copilot Studio

Copilot Studio покращує можливості пошуку завдяки використанню природньої мови.

1. Додайте Azure AI Search до Copilot Studio:

  • Спершу потрібно додати з’єднання Azure AI Search у порталі Power Apps.
  • URL-адресу кінцевої точки (endpoint URL) можна знайти на сторінці «Overview» служби Azure AI Search.
  • Адміністративний ключ (Admin key) можна знайти в Azure AI Search Settings → Keys → Primary Admin Key.
Azure AI Search connection setup window showing fields for Authentication type, Endpoint URL, and Admin Key before creating a connection.
  • Потім ми можемо додати Azure AI Search у Copilot Studio як джерело знань (Knowledge source) або як інструмент (Tool, раніше Actions). Тестування показало, що при використанні Azure AI Search як джерела знань дані у відповіді до користувача скорочуються. Натомість використання його як інструмента разом із конектором «Vectorized search vector» дає змогу вручну налаштовувати параметри, наприклад, кількість топ-N результатів пошуку.
“Add tool” window showing Azure AI Search options like Vectorized Search, Semantic Hybrid Search, Search vectors, Get search indexes, and document management actions.
 

Після додавання «Vectorized search vector» як інструмента можна налаштувати з’єднання та основні вхідні параметри:

  • Search Text – текст, який використовується як запит для векторного пошуку (аналогічно до того, як ми тестували пошук вручну).
  • Index Name – назва індексу, що використовується для пошуку. Її можна знайти у службі Azure AI Search → Indexes.
  • Top Searches – кількість топ-N результатів, які потрібно отримати у результаті векторного пошуку.
  • Selected Fields – поля, які потрібно отримати у результаті векторного пошуку (у цьому випадку це поля з нашої розібраної таблиці Dataverse у форматі CSV).
  • «chunk» – як уже зазначалося, це векторизоване поле; у цьому випадку — назва продукту.
  • «description» – поле з описом із таблиці.

Тепер ми можемо використовувати цей інструмент або безпосередньо (якщо ввімкнено генеративну оркестрацію), або всередині тем. Крім того, відповідь має «оцінку» для кожного результату.

opilot Studio activity map showing a successful Vectorized search vector call with JSON response, and chat output listing grey drape product recommendations.
  • Варто зауважити, що якщо ми використовуємо цей інструмент (plugin action) всередині теми, він не матиме вихідних даних для подальшого використання у цієї ж теми; він лише надсилає згенероване повідомлення на основі результатів відповіді векторного пошуку.
Plugin action
Chat output showing search results with product suggestions: Grey blackout curtains with pom-pom design. Greyish white blackout curtain panel with thermal insulation.

Висновок

Тепер ви налаштували потужне рішення для пошуку, яке поєднує Azure AI Vector Search і Copilot Studio. Такий набір забезпечує розширений, контекстно-орієнтований пошук, що виходить за межі простого співставлення ключових слів. Досліджуйте подальші можливості налаштування – наприклад, зміну параметрів пошуку чи додавання нових джерел даних, щоб адаптувати рішення під власні потреби.

Часті запитання

Сервіс, який забезпечує семантичний пошук, використовуючи векторні вбудовування для розуміння контексту та значення у запитах.

Вона забезпечує взаємодію з даними природньою мовою, роблячи результати пошуку більш інтуїтивними та зручними для користувача.

 

Однією з поширених проблем є некоректні ключі документів. Це можна виправити, застосувавши функцію відображення “base64Encode” у визначенні індексатора.

Так, Azure AI Search підтримує об’єднання кількох структурованих і неструктурованих джерел даних.

Published On: / Categories: Azure, Блог, Технічна стаття /

Модернізуйте бізнес разом з нами!

OntargIT є офіційним партнером Microsoft з впровадження технологій Dynamics 365. З нашим досвідом у різних галузях, ми забезпечимо індивідуальний підхід та ефективні рішення, які ідеально відповідатимуть потребам вашої компанії. Залиште заявку зараз, і наша команда експертів допоможе вам скористатися всіма перевагами Dynamics 365.

Модернізуйте бізнес разом з нами!

OntargIT є офіційним партнером Microsoft з впровадження технологій Dynamics 365. З нашим досвідом у різних галузях, ми забезпечимо індивідуальний підхід та ефективні рішення, які ідеально відповідатимуть потребам вашої компанії. Залиште заявку зараз, і наша команда експертів допоможе вам скористатися всіма перевагами Dynamics 365.