Metadata-Version: 2.4
Name: fabric-data-agent-sdk
Version: 0.1.21a0
Summary: SDK for the Fabric Data Agent Library
Author: Microsoft Corporation
License: MIT License
Project-URL: Repository, https://msdata.visualstudio.com/DefaultCollection/A365/_git/SynapseML-Agent-SDK
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: <3.13,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: semantic-link-sempy>=0.8.0
Requires-Dist: openai>=1.57.0
Requires-Dist: httpx==0.27.2
Requires-Dist: semantic-link-labs==0.9.10
Requires-Dist: azure-kusto-data>=4.5.0
Requires-Dist: azure-identity==1.17.1
Requires-Dist: markdown2==2.5.3
Requires-Dist: tabulate>=0.9.0
Provides-Extra: test
Requires-Dist: pyspark==3.5.1; extra == "test"
Requires-Dist: azure-storage-blob==12.20.0; extra == "test"
Requires-Dist: pytest==8.2.1; extra == "test"
Requires-Dist: pytest-cov==5.0.0; extra == "test"
Requires-Dist: python-dotenv==1.0.1; extra == "test"
Requires-Dist: papermill==2.6.0; extra == "test"
Requires-Dist: ipykernel==6.29.4; extra == "test"
Requires-Dist: requests-mock==1.12.1; extra == "test"
Requires-Dist: pyjwt==2.9.0; extra == "test"
Requires-Dist: synapseml-utils==1.0.26; extra == "test"
Requires-Dist: azure-identity==1.17.1; extra == "test"
Requires-Dist: azure-keyvault-secrets==4.8.0; extra == "test"
Requires-Dist: semantic-link-labs==0.9.10; extra == "test"
Requires-Dist: jinja2==3.1.6; extra == "test"
Requires-Dist: markupsafe==3.0.2; extra == "test"
Provides-Extra: dev
Requires-Dist: black[jupyter]; extra == "dev"
Dynamic: license-file

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.21a0

* fix `FabricOpenAI` "Missing credentials" error with `openai>=2.34.0`.

## 0.1.20a0

* add support for enabling/disabling experimental features.

## 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
