Azure SDK for Python (August 2026)
The Azure SDK team is pleased to announce our August 2026 client library releases.
79 packages released this month.
Stable Packages (40)
-
AI Agent Server - Core
-
AI Projects
-
Device Update
-
Document Translation
-
Resource Management - Alertprocessingrules
-
Resource Management - Automation
-
Resource Management - Azure Stack HCI
-
Resource Management - Computelimit
-
Resource Management - Connected Cache
-
Resource Management - Consumption
-
Resource Management - Container Service
-
Resource Management - Container Service Fleet
-
Resource Management - Data Box
-
Resource Management - Data Protection
-
Resource Management - Discovery
-
Resource Management - Dynatrace
-
Resource Management - Edge Order
-
Resource Management - Elastic
-
Resource Management - Event Hubs
-
Resource Management - Guest Configuration
-
Resource Management - Hybrid Compute
-
Resource Management - Hybrid Kubernetes
-
Resource Management - IoT Operations
-
Resource Management - Marketplace
-
Resource Management - NetApp Files
-
Resource Management - Networkcloud
-
Resource Management - Power BI Dedicated
-
Resource Management - Private DNS
-
Resource Management - Prometheusrulegroups
-
Resource Management - Providerhub
-
Resource Management - Relay
-
Resource Management - Reservations
-
Resource Management - Resource-Deployments
-
Resource Management - Resource-Subscriptions
-
Resource Management - SQL Virtual Machine
-
Resource Management - Service Bus
-
Resource Management - Storage
-
Resource Management - Storage Sync
-
Voice Live
-
unknown
Patch Updates (4)
-
AI Evaluation
-
Cosmos DB
-
Event Grid
-
Key Vault - Secrets
Beta Packages (22)
-
AI Agent Server - Core
-
Azure Content Understanding in Foundry Tools
-
Key Vault - Certificates
-
OpenTelemetry Exporter
-
Resource Management - Cognitive Services
-
Resource Management - Compute Fleet
-
Resource Management - Compute Recommender
-
Resource Management - Compute Schedule
-
Resource Management - Container Service
-
Resource Management - Containerserviceaimanager
-
Resource Management - Datadog
-
Resource Management - Fabric
-
Resource Management - Hardware Security Modules
-
Resource Management - Hybrid Compute
-
Resource Management - IoT Hub
-
Resource Management - NetApp Files
-
Resource Management - SQL
-
Storage - Blobs
-
Storage - Files Data Lake
-
Storage - Files Share
-
Storage - Queues
-
unknown
Release highlights
AI Agent Server - Core 2.0.0b8 Changelog
Features Added
- Added
azure.ai.agentserver.core.storage, the protocol-neutral Foundry durable state-store layer.FoundryStateStore.get_or_create(name, ...)is the primary entry point – an async classmethod that resolves (or creates, on first use) the store in one call. Store-level operations act on the bound store:get()(its descriptor),update(...)(its mutabledescription/tags), anddelete()(the whole store, cascade-deleting every item). Item operations are explicit and consistently named:create_item,set_item,get_item,delete_item,list_keys. Store names are path-encoded with base64url on the wire, store-levelitem_ttl_secondsis configured once at create, optionaluser_isolationis declared at store create, and trusted callers may delegate end-user partitioning withuser_id(x-ms-user-id). Response bodies (StateStore,StateStoreItem,StateStoreItemRef,DeletedStateStore,DeletedStateStoreItem,StateStoreItemKey) are typed model classes generated from a formal TypeSpec contract, not hand-written dataclasses. See the Durable State Store Guide.
Bugs Fixed
- Fixed span attribute enrichment under
opentelemetry-sdk>= 1.43.0, wherespan._attributesbecame aBoundedAttributes(backed by._dict) that no longer supports item assignment. Enrichment now resolves the backing store so agent identity attributes are written on both older and newer OpenTelemetry SDKs.
AI Agent Server - Core 2.0.0b9 Changelog
Features Added
- Added Agent Server-managed OTLP/gRPC export when
OTEL_EXPORTER_OTLP_PROTOCOL=grpcis configured. - Task-record schema cleanup: framework-reserved wire keys in the persisted task record no longer carry a leading
_(e.g. thetask_nametag; theschema_version/last_input_id/turn_started_at/retry_attempt/steeringpayload keys; theinput/steering_input_<seq>/outputattachment keys) — only the__attachment_ref__discriminator keeps its marker. Thesourcestamp now includeshosting_environment(fromFOUNDRY_HOSTING_ENVIRONMENT), and the payload now carries aschema_version(currently"1"). Tasks persisted before this change (lackingpayload.schema_version) are deleted rather than recovered by the recovery scan. - Added a resilient task primitive for building long-running agents that survive container restarts, out-of-memory kills, and redeployments. Decorate an async function with
@task(one-shot) or@multi_turn_task(multi-turn conversations); the framework persists task state to a task store and automatically recovers and re-invokes in-flight work after a crash. Available fromazure.ai.agentserver.core.tasks, withTaskContext,TaskRun, configurable retries (RetryPolicy), cancellation, steering, and a typed exception set (TaskFailed,TaskCancelled,TaskConflictError,TaskManagerNotInitialized, and others). See the Resilient Task Developer Guide. - Added an event streaming API (
azure.ai.agentserver.core.streaming) for publishing incremental task output to one or more subscribers, with in-memory and file-backed buffering and live or replay delivery. This makes it straightforward to serve Server-Sent Events (SSE) responses that a client can disconnect from and resume. See the Streaming Developer Guide. - Exposed
resolve_state_subdir(name)on the publicazure.ai.agentserver.coresurface. It resolves an on-disk state subdirectory (e.g."tasks","streams","responses") under the shared agent-server state root (AGENTSERVER_STATE_ROOT, or~/.agentserverwhen unset), so protocol packages persist state under the same operator-controlled root.
AI Agent Server - Core 2.0.0b10 Changelog
Features Added
- Added public
MiddlewareFactoryandStreamContenttyping aliases for host middleware and streaming helpers. - Added
set_resilient_tasks_enabled/resilient_tasks_enabledtoazure.ai.agentserver.core.tasks— a process-global switch (default off) that force-enables the resilientTaskManager’s startup recovery scan even before any durable task is declared (useful when tasks are registered lazily after startup).
Bugs Fixed
AgentServerHostno longer makes a blocking hosted task-storelist()round-trip (plus credential-token acquisition) at startup unless resilient tasks are actually in use. TheTaskManageris still constructed soget_task_manager()and.run()/.start()keep working, but its network-backed startup recovery scan now runs only when either at least one durable task (@task/@multi_turn_task) has been declared orset_resilient_tasks_enabled(True)was called. Apps that use tasks keep automatic crash recovery with no code change; plain servers (e.g. invocations-only hosts) no longer pay tens of seconds of startup latency for a scan that has nothing to recover.- Cleaned up
AgentServerHostpublic signatures so inherited middleware typing does not expose Starlette private type aliases.
AI Agent Server - Core 2.0.0b11 Changelog
Features Added
- Added a shared
experimentaldecorator for marking Agent Server preview feature surfaces with docstring notes and one-time runtime warnings. The resilient task primitive and Foundry storage public APIs are now marked experimental.
Breaking Changes
- Removed the unused public
AgentServerHost.sse_keepalive_streamhelper.
AI Agent Server - Core 2.0.0 Changelog
Other Changes
- Promoted
azure-ai-agentserver-coreto GA.
AI Agent Server - Core 2.1.0b1 Changelog
Breaking Changes
- Removed
TaskMetadata,TaskContext.metadata, andTaskRun.metadata. Durable application state now belongs in an explicitFoundryStateStoreand no longer shares task lifecycle PATCHes or lease renewal. Typed task inputs may carry a top-levelcall_id, which the framework restores inFoundryAgentRequestContextfor every handler attempt.
Features Added
FoundryStateStorenow uses a file-backed local fallback when AgentServer is not hosted, and item operations accept an explicitcall_idfor forwarding recovered durable work outside the original request context.
AI Evaluation 1.18.2 Changelog
Features Added
- Added support for admin-connected (BYO) judge models in prompty-based evaluators. Models configured
with
byo_modelandproject_endpointare routed through the Foundry project Responses API, which resolves the connection and its authentication.
Bugs Fixed
- Updated
TaskNavigationEfficiencyEvaluatorvalidation errors to name both accepted input aliases:response/actionsandground_truth/expected_actions.
AI Evaluation 1.18.3 Changelog
Features Added
- Added support for Entra authentication for evaluation results emitted to Application Insights.
AI Projects 2.4.0 Changelog
Breaking Changes
Breaking changes in beta methods:
- Method
.beta.evaluators.create_generation_jobrenamed to.beta.evaluators.begin_create_generation_joband is now a long-running operation returningLROPoller[EvaluatorVersion](previously returnedEvaluatorGenerationJob). - Method
.beta.datasets.create_generation_jobrenamed to.beta.datasets.begin_create_generation_joband is now a long-running operation returningLROPoller[DataGenerationJobResult]. - Method
.beta.agents.create_optimization_jobrenamed to.beta.agents.begin_create_optimization_joband is now a long-running operation returningLROPoller[OptimizationJobResult].
Features Added
- New stable toolbox tool
ToolSearchToolboxTool(discriminatortoolbox_search) for storing a tool-search tool in a toolbox. This replacesToolboxSearchPreviewToolboxTool, which is still present but will be removed in a future release of the package. Please migrate your code to use the stable tool. - New class
TaskGenerationDataGenerationJobOptions(discriminatortask_generation) with data generation job options for multi-turn evaluation scenarios. - Support for non-fatal input-quality advisories from rubric evaluator generation. See new class
RubricGenerationInputQualityWarningand new enumsRubricGenerationInputQualityWarningCode,RubricGenerationInputQualityWarningSeverity, andRubricGenerationInputQualityWarningSource. - New enum
GenerationWarningType. - New enum
AgentIdentityStatusand new optionalstatusproperty on classAgentIdentity. - New read-only property
input_quality_warningson classEvaluatorGenerationJob. - New read-only properties
generation_job_idandwarningson classEvaluatorVersion. - New optional property
max_stallson classOptimizationOptions.
Azure Content Understanding in Foundry Tools 1.2.0b3 Changelog
Features Added
-
Added support for selecting
2025-11-01or2026-06-01-previewthrough theapi_versionkeyword argument onContentUnderstandingClient; this beta package defaults to2026-06-01-preview. See the README service API version examples. - Added support for
2026-06-01-previewservice. Features included: - Analyze smaller inputs without long-running operation polling with
analyze_inlineandanalyze_binary_inline. See sample_analyze_inline.py and sample_analyze_binary_inline.py. - Extract fields whose answers must be built from evidence across a document, such as multistep reasoning or calculations, with agentic analyzer workflows by setting
ContentAnalyzerConfig.workflowtoContentAnalyzerWorkflow.AGENTIC. See sample_create_analyzer_workflow.py. - Classify mixed document packets with boundaries within a page by enabling
ContentAnalyzerConfig.allow_in_page_segments. See sample_classify_in_page_segments.py. - Prepare documents for retrieval and LLM workflows with semantic chunks by configuring
ContentAnalyzerConfig.chunking_strategywithSemanticChunkingStrategyand readingDocumentContent.chunks. See sample_analyze_chunking.py. - Identify signatures and their locations in documents with
DocumentSignatureandDocumentContent.signatures. See sample_detect_signatures.py and sample_analyze_configs.py. - Preserve source document context in retrieval and LLM output with
AnalysisContent.metadataandto_llm_input. See sample_extract_document_metadata.py and sample_to_llm_input.py. - Troubleshoot analyses with diagnostic information from
AnalysisResult.infos. See sample_analysis_diagnostics.py. - Track inline page usage and agentic workflow token consumption with expanded
UsageDetails, available fromAnalyzeLROPoller.usage,AnalyzeAsyncLROPoller.usage, andContentAnalyzerInlineResponse.usage. See sample_analyze_invoice.py, sample_analyze_inline.py, and sample_analyze_binary_inline.py.
Cosmos DB 4.16.3 Changelog
Bugs Fixed
- Fixed regression introduced in 4.16.0 on 47105 for complete-partition-key queries scanning documents instead of using partition-key routing, which caused excessive RU consumption and latency for aggregates such as
COUNT. See PR 48237
Device Update 1.1.0 Changelog
Features Added
- Regenerated the client library from the TypeSpec specification for the Device Update for IoT Hub
2026-06-01GA API version. - Added support for configuring TLS-secured update payload downloads through the
downloadSecurityproperty when creating or updating a deployment.
Document Translation 2.0.0 Changelog
Breaking Changes
- Changed the default service API version from
2024-05-01to2026-03-01. To keep the previous behavior, passapi_version="2024-05-01"when constructing the client. - Models are no longer re-exported from the top-level
azure.ai.translation.documentnamespace and must now be imported fromazure.ai.translation.document.models. This affectsTranslationGlossary,TranslationTarget,DocumentTranslationInput,TranslationStatus,DocumentStatus,DocumentTranslationError,DocumentTranslationFileFormat, andStorageInputType. For example, replacefrom azure.ai.translation.document import TranslationStatuswithfrom azure.ai.translation.document.models import TranslationStatus. The clients (DocumentTranslationClient,SingleDocumentTranslationClient),DocumentTranslationApiVersion, andDocumentTranslationLROPollerremain available at the top level.
Features Added
- Added support for the
2026-03-01service API version, which is now the default. - Added image translation support: the
translate_text_within_imagekeyword onbegin_translationfor batch requests, and atranslate_text_within_imagekeyword onSingleDocumentTranslationClient.translatefor single document requests. When enabled, each document’s status also reports image scan usage. - Added the
deployment_nameproperty toTranslationTargetand thedeployment_namekeyword tobegin_translationto specify the deployment name of the custom translation model for a batch translation request. - Added the
deployment_namekeyword toSingleDocumentTranslationClient.translatefor single document translation requests. - Added the
deployment_nameproperty toDocumentStatus, exposing the deployment name of the custom translation model used for the translation. - Added image scan reporting to
DocumentStatus:image_characters_detected,images_charged,total_image_scans_succeeded, andtotal_image_scans_failed. - Added image scan totals to
TranslationStatusSummary:total_image_scans_succeeded,total_image_scans_failed, andtotal_images_charged. - Added the
BatchOptionsmodel for specifying batch translation options.
Event Grid 4.22.1 Changelog
Bugs Fixed
- Fixed a security issue where the legacy
EventGridPublisherClient(sync and async) could re-send credential headers to a different host when following an HTTP 3xx redirect. ASensitiveHeaderCleanupPolicyis now added to the pipeline to stripAuthorization,aeg-sas-keyandaeg-sas-tokenheaders on cross-host redirects.
Key Vault - Certificates 4.12.0b2 Changelog
Bugs Fixed
- Fixed a replay bug in the challenge authentication policy where a request copy stashed on the shared policy
instance was never cleared, allowing one request’s method, URL, and body to leak into a later, unrelated request
made by the same client (for example, after an Entra ID Continuous Access Evaluation challenge). The original
request is now stored per-request instead of on the policy instance. This mirrors the fix already applied to
azure-keyvault-keysandazure-keyvault-administrationin #47742.
Key Vault - Secrets 4.11.1 Changelog
Bugs Fixed
- Fixed a replay bug in the challenge authentication policy where a request copy stashed on the shared policy
instance was never cleared, allowing one request’s method, URL, and body to leak into a later, unrelated request
made by the same client (for example, after an Entra ID Continuous Access Evaluation challenge). The original
request is now stored per-request instead of on the policy instance. This mirrors the fix already applied to
azure-keyvault-keysandazure-keyvault-administrationin #47742.
OpenTelemetry Exporter 1.0.0b56 Changelog
Features Added
- Retry payloads for which request is sent successfully but no response is received, per SPEC. (#47870)
Bugs Fixed
- Propagate main agent attribute to child spans (#47950)
- Live Metrics now honors the
APPLICATIONINSIGHTS_AUTHENTICATION_STRINGenvironment variable for AAD authentication as a fallback when no explicit credential is supplied and local authentication is disabled. (#48284) - Fix a memory leak where exporters registered as OneSettings configuration callbacks were retained for the process lifetime; bound-method callbacks are now held via weak references so discarded exporters can be garbage collected. (#48379)
Resource Management - Alertprocessingrules 1.0.0 Changelog
Resource Management - Automation 2.0.0 Changelog
Resource Management - Azure Stack HCI 8.1.0 Changelog
Resource Management - Cognitive Services 15.0.0b4 Changelog
Resource Management - Compute Fleet 2.0.0b3 Changelog
Resource Management - Compute Recommender 1.0.0b2 Changelog
Resource Management - Compute Schedule 1.2.0b2 Changelog
Resource Management - Computelimit 1.3.0 Changelog
Resource Management - Connected Cache 1.0.0 Changelog
Resource Management - Consumption 11.0.0 Changelog
Resource Management - Container Service 41.4.0 Changelog
Resource Management - Container Service 41.5.0 Changelog
Resource Management - Container Service 41.6.0b1 Changelog
Resource Management - Container Service Fleet 4.0.0 Changelog
Resource Management - Containerserviceaimanager 1.0.0b1 Changelog
Resource Management - Data Box 4.0.0 Changelog
Resource Management - Data Protection 2.1.0 Changelog
Resource Management - Datadog 3.0.0b1 Changelog
Resource Management - Discovery 1.0.0 Changelog
Resource Management - Dynatrace 3.0.0 Changelog
Resource Management - Edge Order 3.0.0 Changelog
Resource Management - Elastic 3.0.0 Changelog
Resource Management - Event Hubs 12.0.0 Changelog
Resource Management - Fabric 1.1.0b1 Changelog
Resource Management - Guest Configuration 1.0.0 Changelog
Resource Management - Hardware Security Modules 2.0.0b1 Changelog
Resource Management - Hybrid Compute 9.1.0b5 Changelog
Resource Management - Hybrid Compute 10.0.0 Changelog
Resource Management - Hybrid Kubernetes 2.0.0 Changelog
Resource Management - IoT Hub 5.0.0b4 Changelog
Resource Management - IoT Operations 1.2.0 Changelog
Resource Management - Marketplace 1.0.0 Changelog
Resource Management - NetApp Files 17.1.0 Changelog
Resource Management - NetApp Files 18.0.0b2 Changelog
Resource Management - Networkcloud 3.0.0 Changelog
Resource Management - Power BI Dedicated 2.0.0 Changelog
Resource Management - Private DNS 2.0.0 Changelog
Resource Management - Prometheusrulegroups 1.0.0 Changelog
Resource Management - Providerhub 1.0.0 Changelog
Resource Management - Relay 2.0.0 Changelog
Resource Management - Reservations 3.0.0 Changelog
Resource Management - Resource-Deployments 1.0.0 Changelog
Resource Management - Resource-Subscriptions 1.0.0 Changelog
Resource Management - SQL 5.0.0b1 Changelog
Resource Management - SQL Virtual Machine 1.0.0 Changelog
Resource Management - Service Bus 10.0.0 Changelog
Resource Management - Storage 25.1.0 Changelog
Resource Management - Storage Sync 2.0.0 Changelog
Storage - Blobs 12.31.0b1 Changelog
Features Added
- Added support for service version 2026-10-06.
- Added support for parsing List Blobs responses in Apache Arrow format by passing
response_format="arrow"keyword toContainerClient’slist_blobs,walk_blobs, andlist_blob_namesAPIs (response_formatdefaults to"auto", and"auto"currently means"xml"). The use of"response_format=arrow"requiresnanoarrowto be installed. This change also enables the newend_beforekeyword for range-based listing. - Added access tier information to the response of
BlobClient’sdownload_blobAPI. Theblob_tier,blob_tier_inferred,blob_tier_change_time, andsmart_access_tierproperties are now populated on the downloaded blob’sproperties. - The service-calculated CRC64 is now surfaced as
content_crc64on the response ofBlobClientupload operations (stage_block,stage_block_from_url,upload_page,upload_pages_from_url,append_block,append_block_from_url,upload_blob, andupload_blob_from_url) in addition tocontent_md5when a content MD5 is provided with the request.
Storage - Files Data Lake 12.26.0b1 Changelog
Features Added
- Added support for service version 2026-10-06.
Storage - Files Share 12.27.0b1 Changelog
Bugs Fixed
- Return type of get_share_access_policies is now the publicly exposed SignedIdentifier model containing the publicly exposed AccessPolicy model. Previously we were leaking the internal generated SignedIdentifier model without exposing it in the api.
Features Added
- Added support for service version 2026-10-06.
- Added
list_rangesandlist_ranges_diffAPIs toShareFileClientwhich return an auto-paging iterable ofFileRangeand support continuation tokens andresults_per_pagefor enumerating file ranges across multiple service responses.
Storage - Queues 12.18.0b1 Changelog
Bugs Fixed
- Return type of get_access_policies is now the publicly exposed AccessPolicy model. Previously we were leaking the internal generated AccessPolicy model without exposing it in the api.
Features Added
- Added support for service version 2026-10-06.
Voice Live 1.3.0 Changelog
Bugs Fixed
- Image Input Field Rename: Renamed
RequestImageContentPart.urltoimage_url. Update image input construction to useimage_url=instead ofurl=.
Breaking Changes
- Default API Version Update: Changed the SDK default API version from
2026-06-01-previewto the GA version2026-07-15. Passapi_version="2026-06-01-preview"explicitly to keep the previous default behavior.
Features Added
- Azure Realtime Native Voice Support: Added
AzureRealtimeNativeVoiceandAzureRealtimeNativeVoiceName, and expandedvoicefields to accept Azure realtime native voices. - Input Text Streaming Support: Added
ClientEventInputTextDeltaandClientEventInputTextDonefor incrementally streaming text input into existing conversation items. - Hosted Agent Invocation Input: Added
invoke_inputtoResponseCreateParamsandServerEventResponseInvocationDeltafor hosted agent invocation passthrough data. - Echo Cancellation Configuration: Added
EchoCancellationReferenceSourceand newreference_source/channelsoptions onAudioEchoCancellationto support both the default server loopback reference path and client-provided stereo echo reference input. - Parallel Tool Call Control: Added
parallel_tool_callsto session models so callers can control whether tool calls may run in parallel. - Session Expiration: Added
expires_attoResponseSession, a server-setdatetimeindicating when the session expires.
unknown 1.0.0b9 Changelog
Other Changes
- Raised the
azure-ai-agentserver-coredependency floor to>=2.0.0b8.
unknown 1.0.0b1 Changelog
unknown 1.0.0b2 Changelog
unknown 1.0.0b1 Changelog
unknown 2.0.0b0 Changelog
Breaking Changes
- Removed a-prefixed async convenience generator methods from the sync
ResponseEventStreamand sync builder classes. Useazure.ai.agentserver.responses.aio.ResponseEventStreamfor async streaming convenience methods. - Replaced generated model classes in
azure.ai.agentserver.responses.modelswith dict-nativeTypedDictcontracts. Model constructors such asItemMessage(...)andCreateResponse(...)now produce plain dictionaries instead of generated model instances. - Removed runtime model-class behavior from response protocol models. Code should no longer rely on attribute access,
isinstance(..., ModelType),.as_dict(), or generated model base-class behavior. -
Replaced most generated enum classes with string literal type aliases. Use string values directly for protocol fields, for example
"completed","message", or"function_call_output". - The resilient-task input persisted for a
store=truebackground response now carries a singleuser_id_key(the durable per-user partition key) instead of the previoususer_isolation_key/chat_isolation_keypair; conversation scoping continues to useconversation_id.
Bugs Fixed
-
Steering now works on the first turn of a conversation. In a
steerable_conversations=truedeployment, the first turn (a request with noconversation_idand noprevious_response_id) is now hosted on the multi-turn chain primitive instead of a one-shot task. Because all turns of a chain share a stableconversation_chain_id— and therefore the same backing task — a steered turn posted onto an in-flight first turn previously queued onto a one-shot task that completed and auto-deleted before draining the queued input, leaving the steered turn stuckin_progress. The first turn now suspends between turns and drains queued steering inputs correctly. -
context.conversation_chain_idis now stable across every turn of a conversation. Previously it returned the rawprevious_response_id(the immediate predecessor), so it shifted on every turn after the second — breaking its use as a stable per-conversation key (e.g. an upstream SDK session id). It is now derived from the partition key embedded in the chain’s response IDs (which every turn shares), so all turns of a chain — and the resilient task that backs them — resolve to the same identity. The value is now an opaque, agent/session-scoped hash rather than a raw id. (Known limitation: a client that supplies its ownresponse_idwith a mismatched embedded partition can shift the chain identity for later turns.)
Features Added
- Added the
azure.ai.agentserver.responses.aionamespace with asyncResponseEventStreamconvenience generators that use the same method names as the sync stream, such asoutput_item_message()andoutput_item_compaction(). - Added local
TypedDictmodel contract generation for the Responses protocol, including generated type aliases, union aliases, andpy.typedpackaging support. -
Added dict-native wire payload helpers and request validators for validating protocol payloads without depending on generated model internals.
-
ResponseContext.conversation_chain_id(and the resilient task id it backs) now follows the native id convention:cchain_<partition><scope>for conversation-scoped chains,rchain_<partition><scope>for steerable response-linkage chains, or theresponse_idverbatim for a non-steerable one-shot. The id embeds the chain’s partition key for co-location and carries a deterministic(agent, session)scope;task_id == conversation_chain_idexactly. Replaces the previous opaqueresilient-resp-<32-hex>form. -
Resilient background responses.
ResponsesServerOptions(resilient_background=True)makesstore=true,background=trueresponses survive process crashes: the framework persists handler progress and re-invokes the registered handler on the next process start when a prior attempt did not reach a terminal event. Defaults toFalse. -
Steerable conversations.
ResponsesServerOptions(steerable_conversations=True)lets clients post a new turn on an in-flight conversation; the running handler is woken (via the cancellation signal, distinguished bycontext.pending_input_count > 0), drains the queued input on a fresh invocation, and the turns are linked in a stable conversation chain. Defaults toFalse. -
ResponseContextresilience + steering surface. Flat fields stamped on each invocation:context.is_recovery,context.is_steered_turn,context.pending_input_count, andcontext.conversation_chain_id(a stable identifier shared by every turn of a conversation chain, usable as a key into application-side session state). -
Developer checkpoints.
yield stream.checkpoint()persists the current response snapshot at a developer-chosen boundary (gated to resilient background responses; a no-op otherwise; backpressured and idempotent). On a recovered entry,context.persisted_responseexposes the last persisted snapshot so the handler can seed its stream and resume — the basis of the one-OutputItem-per-phase recovery pattern. -
internal_metadata. A single-turn, platform-internalMutableMapping[str, Any]on output items (item.internal_metadata) and on the response (stream.internal_metadata). It is persisted with the response (so it is available on recovery) and is always stripped before any client-facing HTTP/SSE payload, and on ingress. Distinct from the publicResponseObject.metadata. -
context.conversation_chain_metadata. Cross-turn, named-scope, explicit-flush()resilient metadata over a conversation chain, typed by the publicConversationChainMetadataNamespaceProtocol. -
await context.exit_for_recovery(). A single uniform graceful-shutdown recovery primitive that works in every handler shape (coroutine, async generator, sync) — it raisesResponseExitForRecoveryinternally to leave the responsein_progressfor next-lifetime recovery. -
Stream recovery. SSE events are persisted incrementally; clients reconnect with
GET /responses/{id}?stream=true&starting_after=<event_id>and resume from their last received event. -
Response acceptor hook. Register
@app.response_acceptorto customize the response shape returned when a turn is queued behind an active steerable conversation. -
Storage.
FileResponseStoreis exported fromazure.ai.agentserver.responsesand is the default local-development store (under${AGENTSERVER_STATE_ROOT:-~/.agentserver}/responses/) when nostore=is supplied in a non-hosted environment; passstore=InMemoryResponseProvider()to opt out. TheAGENTSERVER_STATE_ROOTenvironment variable sets the local state storage root. A typedResponseAlreadyExistsErroris raised by the response-store providers on a duplicatecreate_response(the idempotent-create signal on recovery). - Handlers are
async def.@app.response_handlerrequires an async handler with the(request, context, cancellation_signal)signature so it can observe theasyncio.Eventcancellation signal.
unknown 1.0.0 Changelog
Features Added
- Workspace:
- New paged list response models:
PagedConversation,PagedInvestigation. - New
StorageMountProtocolenum for controlling storage mount protocols. - New
tools.cancel_run_lrolong-running cancellation flow (in addition to the existing immediatecancel_run). - Investigation
updateis now exposed via a documented sample. - Bookshelf: knowledge-base surface is significantly redesigned around a single
KnowledgeBasesOperationsgroup that exposes the full lifecycle in one place: - Lifecycle:
create_or_update,get,delete, plusget_operation_statusfor polling long-running operations. - Indexing:
start_indexingandcancel_indexing, with results modeled viaKnowledgeBaseIndexingOperationResponse,IndexingOperationResult,IndexingMetrics, andLastIndexingRun. - Search: new
searchoperation takingSearchRequestand returningSearchResponse, includingSearchResultItemwithCitationandCitationTypefor citation-aware results. - LRO results: status responses now use
KnowledgeBaseOperationResponse/KnowledgeBaseSearchOperationResponse; create/update returns theKnowledgeBaseresource. - New enum
KnowledgeBaseOperationType.
Breaking Changes
Note: these are breaking changes only relative to the
1.0.0b1preview release. As a first stable (GA) release,1.0.0is the new compatibility baseline going forward.
- Bookshelf: the
KnowledgeBaseVersionsOperationsoperation group is removed. Knowledge-base versioning has been folded into the unifiedKnowledgeBasesOperationsgroup; callers usingclient.knowledge_base_versions.<method>must migrate to the equivalent method onclient.knowledge_bases. - Bookshelf: the models
KnowledgeBaseOperationStatusandKnowledgeBaseVersionare removed. Operation-status payloads are now typed asKnowledgeBaseOperationResponse,KnowledgeBaseIndexingOperationResponse, orKnowledgeBaseSearchOperationResponsedepending on the operation; create/update returns theKnowledgeBaseresource. - The preview API version
2026-02-01-previewis no longer listed as a supported value for theapi_versionkwarg. BothWorkspaceClientandBookshelfClientnow default to2026-06-01. Pinning to the removed preview value is not supported in the GA SDK. - Workspace: the investigations long-running operation status model, previously generated as
ResourceOperationStatusInvestigationInvestigationError, has been renamed toInvestigationOperationStatus. The payload is unchanged; only the model name differs.
unknown 2.0.0b1 Changelog
Other Changes
- Cleaned up the public API surface by moving validation-only error helpers to a private implementation module and renaming runtime terminal/replay helpers as private.
- Bumped the minimum
azure-ai-agentserver-coredependency to>=2.0.0b10, which adds an opt-in gate for resilient-task startup recovery. The resilient Responses samples now callset_resilient_tasks_enabled(True)to explicitly opt in, mirroring the invocations resilient samples.
unknown 2.0.0 Changelog
Features Added
- First stable release of the Azure AI Agent Server Responses client library.
Breaking Changes
- Removed the duplicate
azure.ai.agentserver.responses.get_input_expandedexport. Import it fromazure.ai.agentserver.responses.modelsinstead.
unknown 2.1.0b1 Changelog
Breaking Changes
- Removed
ResponseContext.conversation_chain_metadataand theConversationChainMetadataNamespaceprotocol. Resilient response applications now persist cross-turn state explicitly withFoundryStateStore.
Latest Releases
View all the latest versions of Python packages here.
Installation Instructions
To install the latest beta version of the packages, copy and paste the following commands into a terminal:
$> pip install azure-ai-agentserver-core==2.0.0b8
$> pip install azure-ai-agentserver-core==2.0.0b9
$> pip install azure-ai-agentserver-core==2.0.0b10
$> pip install azure-ai-agentserver-core==2.0.0b11
$> pip install azure-ai-agentserver-core==2.0.0
$> pip install azure-ai-agentserver-core==2.1.0b1
$> pip install azure-ai-agentserver-responses==1.0.0b9
$> pip install azure-ai-agentserver-responses==2.0.0b0
$> pip install azure-ai-agentserver-responses==2.0.0b1
$> pip install azure-ai-agentserver-responses==2.0.0
$> pip install azure-ai-agentserver-responses==2.1.0b1
$> pip install azure-ai-contentunderstanding==1.2.0b3
$> pip install azure-ai-discovery==1.0.0
$> pip install azure-ai-evaluation==1.18.2
$> pip install azure-ai-evaluation==1.18.3
$> pip install azure-ai-projects==2.4.0
$> pip install azure-ai-translation-document==2.0.0
$> pip install azure-ai-voicelive==1.3.0
$> pip install azure-cosmos==4.16.3
$> pip install azure-eventgrid==4.22.1
$> pip install azure-iot-deviceupdate==1.1.0
$> pip install azure-keyvault-certificates==4.12.0b2
$> pip install azure-keyvault-secrets==4.11.1
$> pip install azure-mgmt-alertprocessingrules==1.0.0
$> pip install azure-mgmt-automation==2.0.0
$> pip install azure-mgmt-azurestackhci==8.1.0
$> pip install azure-mgmt-cognitiveservices==15.0.0b4
$> pip install azure-mgmt-compute-bulkaction==1.0.0b1
$> pip install azure-mgmt-compute-bulkaction==1.0.0b2
$> pip install azure-mgmt-computefleet==2.0.0b3
$> pip install azure-mgmt-computelimit==1.3.0
$> pip install azure-mgmt-computerecommender==1.0.0b2
$> pip install azure-mgmt-computeschedule==1.2.0b2
$> pip install azure-mgmt-connectedcache==1.0.0
$> pip install azure-mgmt-consumption==11.0.0
$> pip install azure-mgmt-containerservice==41.4.0
$> pip install azure-mgmt-containerservice==41.5.0
$> pip install azure-mgmt-containerservice==41.6.0b1
$> pip install azure-mgmt-containerserviceaimanager==1.0.0b1
$> pip install azure-mgmt-containerservicefleet==4.0.0
$> pip install azure-mgmt-containerservicepreparedimgspec==1.0.0b1
$> pip install azure-mgmt-databox==4.0.0
$> pip install azure-mgmt-datadog==3.0.0b1
$> pip install azure-mgmt-dataprotection==2.1.0
$> pip install azure-mgmt-discovery==1.0.0
$> pip install azure-mgmt-dynatrace==3.0.0
$> pip install azure-mgmt-edgeorder==3.0.0
$> pip install azure-mgmt-elastic==3.0.0
$> pip install azure-mgmt-eventhub==12.0.0
$> pip install azure-mgmt-fabric==1.1.0b1
$> pip install azure-mgmt-guestconfig==1.0.0
$> pip install azure-mgmt-hardwaresecuritymodules==2.0.0b1
$> pip install azure-mgmt-hybridcompute==9.1.0b5
$> pip install azure-mgmt-hybridcompute==10.0.0
$> pip install azure-mgmt-hybridkubernetes==2.0.0
$> pip install azure-mgmt-iothub==5.0.0b4
$> pip install azure-mgmt-iotoperations==1.2.0
$> pip install azure-mgmt-marketplace==1.0.0
$> pip install azure-mgmt-netapp==17.1.0
$> pip install azure-mgmt-netapp==18.0.0b2
$> pip install azure-mgmt-networkcloud==3.0.0
$> pip install azure-mgmt-powerbidedicated==2.0.0
$> pip install azure-mgmt-privatedns==2.0.0
$> pip install azure-mgmt-prometheusrulegroups==1.0.0
$> pip install azure-mgmt-providerhub==1.0.0
$> pip install azure-mgmt-relay==2.0.0
$> pip install azure-mgmt-reservations==3.0.0
$> pip install azure-mgmt-resource-deployments==1.0.0
$> pip install azure-mgmt-resource-subscriptions==1.0.0
$> pip install azure-mgmt-servicebus==10.0.0
$> pip install azure-mgmt-sql==5.0.0b1
$> pip install azure-mgmt-sqlvirtualmachine==1.0.0
$> pip install azure-mgmt-storage==25.1.0
$> pip install azure-mgmt-storagesync==2.0.0
$> pip install azure-monitor-opentelemetry-exporter==1.0.0b56
$> pip install azure-storage-blob==12.31.0b1
$> pip install azure-storage-file-datalake==12.26.0b1
$> pip install azure-storage-file-share==12.27.0b1
$> pip install azure-storage-queue==12.18.0b1
Feedback
If you have a bug or feature request for one of the libraries, please post an issue to GitHub.