fabric-data-agent-sdk 0.1.19a0
SDK for the Fabric Data Agent Library
License: MIT License
Requires Python: <3.13,>=3.10

The Fabric Data Agent SDK supports programmatic access for [Fabric Data Agent](https://learn.microsoft.com/en-us/fabric/data-science/concept-ai-skill) artifacts.

This package is released as a preview and has been tested with Microsoft Fabric Python notebooks.

# Getting started

## Prerequisites

* A [Microsoft Fabric subscription](https://learn.microsoft.com/en-us/fabric/enterprise/licenses). Or sign up for a free [Microsoft Fabric (Preview) trial](https://learn.microsoft.com/en-us/fabric/get-started/fabric-trial).
* Sign in to [Microsoft Fabric](https://fabric.microsoft.com/).
* Create [a new notebook](https://learn.microsoft.com/en-us/fabric/data-engineering/how-to-use-notebook#create-notebooks) or a new [spark job](https://learn.microsoft.com/en-us/fabric/data-engineering/create-spark-job-definition) to use this package. **Note that semantic link is supported only within Microsoft Fabric.**

## Install the `fabric-data-agent-sdk` package

To install the most recent version `fabric-data-agent-sdk` in your Fabric Python notebook kernel by executing this code in a notebook cell:

  ```python
  %pip install -U fabric-data-agent-sdk
  ```

# Key concepts

Fabric Data Agent SDK has two main entry points:

* Data plane using OpenAI SDK for conversational interaction with an existing Data Agent artifact.
* Management plane to create, update and delete Data Agent artifacts.

# Change logs

## 0.1.19a0

* fix data source type for update configurations and descriptions.

## 0.1.18a0

* adds data source type and element type support for Mirrored DB and SQL DB
* enable Publishing Data Agent to M365 Copilot Agent Store
* update failed thread message

## 0.1.17a0

* add conflict detection to few-shot validation with LLM-based semantic analysis
* add file support
* replace thread_url with message_url

## 0.1.16a0

* add the ontology data source support

## 0.1.15a0

* fix get datasources error caused by None value
* fix schema selection when adding data sources
* update example notebook

## 0.1.14a0

* fix thread url for fabcon tenant

## 0.1.13a0

* add support for granular quality feedback in few-shot validation and improve Dataframe output
* fix invalid data type for delta lake

## 0.1.12a0

* fix python error in the release pipeline
* add robust few-shot validation utilities to SDK with dual LLM support and DataFrame output
* update parameter type in add-datasource

## 0.1.11a0

* upgrade OneBranch Azure Linux Build Image: Migrating from 2.0 to 3.0
* remove "AISkill" from artifact name list due to invalid item type error in openai
* make Data Agent and Data Source Creation Idempotent
* add publish description
* refactoring the evaluation apis and add code coverage
* remove AISkill artifact type in data agent api

## 0.1.10a0

* fix get_evaluation_summary_per_question if no question fails

## 0.1.9a0

* Use correct workspace context in delete_data_agent function.
* Update notebooks with data source notes
* display failed threads and fix percentage

## 0.1.8a0

* evaluation API enhancements including parallelizing, number of variations and single thread.
* speed-up add_ground_truth_batch and stabilise Kusto tests
* ground-truth generation for Kusto (KQL) datasources

## 0.1.7a0

* added Warehouse to list of artifact types.
* added Method for Updating Ground Truth before Evaluation.
* made Publish Info Optional.

## 0.1.6a0

* update sdk to make compatible with both python and spark.

## 0.1.5a0

* add PySpark support for the evaluation APIs.
* added pipeline for running unit tests.

## 0.1.4a0

* switch to public apis for artifact management.

## 0.1.3a0

* add column/table descriptions for sql data sources.
* allow selection of multiple columns at once in the datasource.
* bug fix to address the run_steps response structure change.

## 0.1.2a0

* bugfix for *fabric_openai* artifact type - should support "DataAgent".
* bugfix for data source type ("datawarehouse" should be "warehouse").

## 0.1.1a0

* bugfix for *create_data_agent* where type should support "DataAgent".

## 0.1.0a0

* add upload_fewshots for adding multiple fewshots to DataSource.

## 0.0.4a0

* add evaluation APIs to the SDK

## 0.0.3a1

* return fewshot id from add_fewshots
* fix the aiskill stage parameter
* return datasource display name in pretty_print
* return thread object for get_or_create_thread API.

## 0.0.2a0

* rename module
* support Fabric get_or_create_thread to decouple from UX thread

## 0.0.1a0

Initial alpha release of the package.

* add: data plane client
* add: management plane client