Copilot Studio + Microsoft Fabric: строим агента, который читает твой data lake
Microsoft Fabric кладёт твои данные в OneLake; Copilot Studio позволяет строить агентов поверх них. Вот как соединяются эти две части — grounding, SQL-endpoint, data-агенты Fabric — и ловушки, которых стоит избегать.
- Copilot Studio
- Microsoft Fabric
- OneLake
- ИИ-агенты
- Azure
«А можем мы просто поболтать с нашими данными?» — это просьба, которую каждая команда данных теперь слышит еженедельно. Ответ Microsoft сшивает два продукта: Fabric хранит данные, Copilot Studio строит агента, который с ними говорит. Демо — это магия. У продакшн-версии острые края. Вот как эти части складываются на самом деле — и обо что режется народ.
Части: Fabric, OneLake, Copilot Studio
Microsoft Fabric — это SaaS-платформа аналитики, которая объединяет инженерию данных, warehousing, аналитику в реальном времени и Power BI. OneLake — это её единый data lake на весь tenant — представь себе «OneDrive для данных» — построенный на ADLS Gen2 и, что важно, хранящий всё как открытый Delta-Parquet. Тот же формат, что и у lakehouse от Databricks, и это не случайность: индустрия в основном сошлась на Delta и Iceberg как открытом табличном слое.
Copilot Studio — это low-code-платформа Microsoft для построения агентов, потомок Power Virtual Agents. Ты даёшь агенту инструкции, источники знаний и действия, а он отвечает с помощью генеративного ИИ. Вопрос в том, как навести этого агента на lake.
Где живут данные: OneLake и SQL-endpoint
Lakehouse или warehouse в Fabric выставляет свои Delta-таблицы двумя способами, которые агент может использовать. SQL analytics endpoint — это доступная только для чтения поверхность T-SQL над таблицами: всё, что говорит на SQL, может к ней обращаться. Семантическая модель сидит выше: именованные меры, связи и бизнес-логика, запрашиваемые в режиме Direct Lake, который читает Parquet напрямую из OneLake без импорта и кэширования второй копии. Shortcuts позволяют OneLake ссылаться на данные, лежащие в S3 или другом аккаунте ADLS, не перемещая их, так что «твой data lake» может охватывать несколько облаков.
Урок: агент, опирающийся на хорошо построенную семантическую модель, куда надёжнее, чем тот, что наведён на сырые таблицы, потому что модель кодирует, что на самом деле значит «клиент» или «выручка».
Три способа заземлить агента на твоём lake
- Data-агент Fabric (нативный путь). У Fabric есть собственный ИИ-агент — раньше «AI Skills» — которого ты строишь над lakehouse, warehouse или семантической моделью. Он переводит естественный язык в запросы к твоим данным, и ты можешь добавить его в Copilot Studio как подключённый источник знаний. Это самый короткий маршрут и тот, в который Microsoft вкладывается.
- Знания Copilot Studio поверх семантической модели. Наведи агента на семантическую модель Power BI как на источник знаний. Хорошо для вопросов-ответов по определённым мерам; слабее для открытого поиска на уровне строк.
- Grounding под заказ. Используй Power Automate или кастомный коннектор, чтобы стучаться в SQL-endpoint, или подними Azure OpenAI «на твоих данных». Максимум контроля, максимум сантехники: ты сам отвечаешь за извлечение, сборку промпта и формирование результата.
Минимальная сборка
Маршрут, который работает надёжнее всего, от начала до конца:
- Приземли данные в lakehouse Fabric и вылепи чистый слой gold — дисциплина medallion применяется здесь ровно так же, как в Databricks.
- Построй небольшую семантическую модель с именованными мерами и связями. Именно здесь выигрывается или проигрывается точность.
- Создай data-агента Fabric над этой моделью и проверь его сгенерированные запросы против известных ответов.
- В Copilot Studio создай агента, добавь data-агента Fabric как знание, напиши сжатые инструкции и опубликуй в Teams или в вебе.
Безопасность — это всё
Провал, который рушит карьеры, — это агент, который бодро отдаёт строки, которые пользователь никогда не должен видеть. Реши это до того, как выкатывать:
- Личность проходит насквозь. Предпочитай, чтобы агент запрашивал от имени вошедшего пользователя (Entra ID), а не через фиксированный service principal с доступом уровня бога.
- Безопасность на уровне строк и столбцов живёт в семантической модели и в lakehouse — применяй её там, а не в промпте. Промпт — это не граница контроля доступа.
- Минимальные привилегии на OneLake. Shortcuts и роли workspace решают, до чего агент вообще может дотянуться.
Где это ломается
- Галлюцинированный или неверный SQL. Перевод естественного-языка-в-запрос вероятностен. Без семантической модели, которая его ограничивает, агент выдумывает правдоподобные, но ошибочные агрегации. Всегда проверяй против золотого набора вопросов.
- Direct Lake откатывается к DirectQuery, когда модель становится слишком большой или сложной, и задержка тихо деградирует. Следи за этим.
- Наползание расходов. Единицы ёмкости Fabric плюс генеративные вызовы складываются. Считай это с первого дня.
Copilot Studio поверх Fabric — это самый быстрый способ дать нетехническим пользователям настоящий разговор с управляемыми данными — если ты вкладываешься в семантическую модель и относишься к безопасности как к проблеме слоя данных, а не промпта. Когда твои агенты перерастут low-code и тебе понадобится владеть моделью и циклом, следующая часть смотрит на открытый агентный стек — Hermes и NVIDIA Nemotron.
Было полезно?