Skip to content

Commit e92add4

Browse files
dargilcosingankit
andauthored
Beta 11 Release of the Projects SDK (first 1DP version) (#40724)
* First * Re-emit * Fix setup.py * Quality gates * Update local cspell instead of root one * Remove projects SDK stuff from root cspell.json * Add azure-ai-agents path to pyrightconfig.json * Updating evaluation object to have name field instead of id (#40779) * Address comments from SDK review meeting (#40748) * Updating Evaluator Id list (#40798) * Updaing Evaluator Id list * Updating evaluator list * Re-emitted SDK (#40794) * Re-emitted SDK * Fixed patched code following auto-gen code changes * Evaluation Review Feedback (#40830) * Evaluation Review Feedback * Fixing samples * Fixing sample * Address Azure SDK review meeting comment and other fixes / minor changes (#40839) * For now, limit the build to Projects SDK only * Switch credential scope * Add tests that run all samples (#40875) * Re-emit from TypeSpec (#40876) * First (#40881) * Adding sample for agent evaluation (#40844) * Adding sample for agent evaluation * Review comments * Create automatic report of all Samples run, and their Exception message (if any) (#40885) * Add sync and async methods `.connections.get_default()` (#40916) * Fix pylint errors * Updating Agent Evalaution Sample (#40927) * Updating Agent Evlaution Sample * Update sample_agent_evaluations.py * Re-emit from latest TypeSpec (#40935) * Re-emit * Fix Sphinx * Fix async get_azure_openai_client. Fixes in samples test * Re-emit from TypeSpec. Fix one sample * Users/singankit/evaluation sample update (#40973) * Evaluation Sample Update * Fixing agent evaluation sample * Updating evaluation samples * Review Comment * Udpdating sample with evaluator ids * Spell check * Updates to Dataset upload methods (#41020) * Take setup dependency on azure-ai-agents. Update inference route to /models (#41040) * Use /models instead of /api/models route for inference * Remove lazy import of azure-ai-agents, not that it was published * Fix quality gates * Update package README * Attempt to fix quality gate related to dependency on azure-ai-agents * Quality gates and other small fixes in prep for release (#41062) * Take inference credential scopes from AIProjectClient * Run tool 'black' * Attempt to suppress verifytypes in auto-emitted code * Suppress verifytypes after talking to Krista * Update shared_requirements.txt to fix `Analyze dependencies` job * Update implementation of .inference.get_azure_openai_client() (#41076) Support either returning an AOAI client on the parent AI Services resource, or on a connected AOAI service. We are still debating which api_version to show in the sample code. * Fix AOAI test samples * Fix missing connection name is samples test * Exclue samples test file from spelling check * Update change log and readme (#41105) * Update readme, changelog * Fix quality gates * manually remove unused services pattern classes from emitted code (#41112) TypeSpec defined a namespace Azure.AI.Projects.ServicePatterns that contains a TypeSpec template for common operations used by Datasets and Indexes. This results in an unused property service_patterns on AIProjectClient that does nothing, and emitted ServicePattern classes that do nothing. I'm trying to update the TypeSpec namespace so that will not happen, but running into some issues. So for the time being, I'm manually editing the Python emitted code to unblock release so anything to do with service patter does not appear in the public API surface. * Updates to README and CHANGELOG * Users/singankit/readme update (#41123) * Updating smaples and README * Update Changelog file * Review comments * Fixing pyright issues * Quality gates for evaluation samples * Update sample_evaluations_aoai_graders.py (from Ankit) * fix broken cspell.json * pyrightconfig.json suppression of evaluation samples does not work --------- Co-authored-by: Ankit Singhal <30610298+singankit@users.noreply.github.com>
1 parent 7ec1f40 commit e92add4

File tree

237 files changed

+12553
-58994
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

237 files changed

+12553
-58994
lines changed

.vscode/cspell.json

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,6 @@
3535
"sdk/ai/azure-ai-generative/tests/**",
3636
"sdk/ai/azure-ai-inference/samples/hello_how_are_you.mp3",
3737
"sdk/ai/azure-ai-inference/tests/hello_how_are_you.mp3",
38-
"sdk/ai/azure-ai-projects/samples/agents/nifty_500_quarterly_results.csv",
39-
"sdk/ai/azure-ai-projects/samples/agents/tripadvisor_openapi.json",
40-
"/sdk/ai/azure-ai-projects/samples/evaluations/async_samples/data/**",
41-
"/sdk/ai/azure-ai-projects/samples/evaluations/data/**",
4238
"sdk/ai/azure-ai-resources/azure/ai/resources/_index/_langchain/vendor/**",
4339
"sdk/ai/azure-ai-resources/azure/ai/resources/_restclient/**",
4440
"sdk/cognitiveservices/azure-cognitiveservices-search-autosuggest/**",
@@ -1391,24 +1387,6 @@
13911387
"smirnov"
13921388
]
13931389
},
1394-
{
1395-
"filename": "sdk/ai/azure-ai-projects/**",
1396-
"words": [
1397-
"coso",
1398-
"longtitude",
1399-
"abbrev",
1400-
"accommodations",
1401-
"ENTRAID",
1402-
"entraid",
1403-
"aiservices",
1404-
"OTEL",
1405-
"GENAI",
1406-
"fspath",
1407-
"myindexname",
1408-
"wttr",
1409-
"azureopenai"
1410-
]
1411-
},
14121390
{
14131391
"filename": "sdk/ai/azure-ai-inference/**",
14141392
"words": [

sdk/ai/azure-ai-projects/CHANGELOG.md

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,55 @@
11
# Release History
22

3+
## 1.0.0b11 (2025-05-15)
4+
5+
There have been significant updates with the release of version 1.0.0b11, including breaking changes.
6+
Please see new samples and package README.md file.
7+
8+
### Features added
9+
10+
* `.deployments` methods to enumerate AI models deployed to your AI Foundry Project.
11+
* `.datasets` methods to upload documents and reference them. To be used with Evaluations.
12+
* `.indexes` methods to handle your Search Indexes.
13+
14+
### Breaking changes
15+
16+
* Azure AI Foundry Project endpoint is now required to construct the `AIProjectClient`. It has the form
17+
`https://<your-ai-services-account-name>.services.ai.azure.com/api/projects/<your-project-name>`. Find it in your AI Foundry Project
18+
Overview page. The factory method `from_connection_string` was removed.
19+
* Agents are now implemented in a separate package `azure-ai-agents`. Continue using the ".agents" operations on the
20+
`AIProjectsClient` to create, run and delete agents, as before. However there have been some breaking changes in these operations.
21+
See [Agents package document and samples](https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/ai/azure-ai-agents) for more details.
22+
* Several changes to the `.connections` methods, including the response object (now simply called `Connection`)
23+
* The method `.inference.get_azure_openai_client()` now supports returning an authenticated `AzureOpenAI` client to be used with
24+
AI models deployed to the Project's AI Services. This is in addition to the existing option to get an `AzureOpenAI` client for one of the connected Azure OpenAI services.
25+
* Import `PromptTemplate` from `azure.ai.projects` instead of `azure.ai.projects.prompts`.
26+
* The class ConnectionProperties was renamed to Connection, and its properties have changed.
27+
* The method `.to_evaluator_model_config` on `ConnectionProperties` is no longer required and does not have an equivalent method on `Connection`. When constructing the EvaluatorConfiguration class, the `init_params` element now requires `deployment_name` instead of `model_config`.
28+
* The method `upload_file` on `AIProjectClient` had been removed, use `datasets.upload_file` instead.
29+
* Evaluator Ids are available using the Enum `EvaluatorIds` and no longer require `azure-ai-evaluation` package to be installed.
30+
* Property `scope` on `AIProjectClient` is removed, use AI Foundry Project endpoint instead.
31+
* Property `id` on Evaluation is replaced with `name`.
32+
33+
### Sample updates
34+
35+
* All samples have been updated. New ones added for Deployments, Datasets and Indexes.
36+
337
## 1.0.0b10 (2025-04-23)
438

539
### Features added
640

741
* Added `ConnectedAgentTool` class for better connected Agent support.
842
* Added Agent tool call tracing for all tool call types when streaming with `AgentEventHandler` based event handler.
943
* Added tracing for listing Agent run steps.
10-
* Add a `max_retry` argument to the `enable_auto_function_calls` function to cancel the run if the maximum number of retries for auto function calls is reached.
44+
* Add a `max_retry` argument to the Agent's `enable_auto_function_calls` function to cancel the run if the maximum number of retries for auto function calls is reached.
1145

1246
### Sample updates
1347

1448
* Added connected Agent tool sample.
1549

1650
### Bugs Fixed
1751

18-
* Fix for filtering of messages by run ID (see [GitHub issue 49513](https://github.com/Azure/azure-sdk-for-net/issues/49513)).
52+
* Fix for filtering of Agent messages by run ID (see [GitHub issue 49513](https://github.com/Azure/azure-sdk-for-net/issues/49513)).
1953

2054
## 1.0.0b9 (2025-04-16)
2155

@@ -34,9 +68,7 @@
3468

3569
### Breaking Changes
3670

37-
* Redesigned automatic function calls because agents retrieved by `update_agent` and `get_agent` do not support them. With the new design, the toolset parameter in `create_agent` no longer executes toolcalls automatically during `create_and_process_run` or `create_stream`. To retain this behavior, call `enable_auto_function_calls` without additional changes.
38-
* Because of the function calls redesign, when errors occur in `FunctionTool.execute` and `AsyncFunctionTool.execute`, they return a JSON string in the format of `{error: [message]}` instead of throwing errors.
39-
* Because of the function calls redesign, when errors occur in `ToolSet.execute_tool_calls` and `AsyncToolSet.execute_tool_calls`, the returned array now includes an entry with output: {error: [message]} instead of not inserting the entry into the array.
71+
Redesigned automatic function calls because agents retrieved by `update_agent` and `get_agent` do not support them. With the new design, the toolset parameter in `create_agent` no longer executes toolcalls automatically during `create_and_process_run` or `create_stream`. To retain this behavior, call `enable_auto_function_calls` without additional changes.
4072

4173
## 1.0.0b8 (2025-03-28)
4274

@@ -56,7 +88,8 @@
5688
* Fix for a bug in Agent tracing causing tool calls not to be recorded in traces.
5789
* Fix for a bug in Agent tracing causing function tool calls to not work properly when tracing is enabled.
5890
* Fix for a bug in Agent streaming, where `agent_id` was not included in the response. This caused the SDK not to make function calls when the thread run status is `requires_action`.
59-
* Fix for a bug in Agent `create_and_process_run` addresses an issue where it would get into an infinite loop when automatic function calls fail.
91+
92+
## 1.0.0b7 (2025-03-06)
6093

6194
### Features added
6295

sdk/ai/azure-ai-projects/FunctionTool.md

Lines changed: 0 additions & 101 deletions
This file was deleted.

0 commit comments

Comments
 (0)