Blog Post

Apps on Azure Blog
10 MIN READ

Azure Functions – Build 2025

EamonOReilly's avatar
EamonOReilly
Icon for Microsoft rankMicrosoft
May 19, 2025

Latest releases in Azure Functions this year

Azure Functions – Build 2025 update

With Microsoft Build underway, the team is excited to provide an update on the latest releases in Azure Functions this year. Customers are leveraging Azure Functions to build AI solutions, thanks to its serverless capabilities that scale on demand and its native integration for processing real-time data. The newly launched capabilities enable the creation of AI and agentic applications with enhanced offerings, built-in security, and a pay-as-you-go model.

  • Real-time retrieval augmented generation, making organizational data accessible through semantic search
  • Native event driven tool function calling with the AI Foundry Agent service
  • Hosted Model Context Protocol servers.
  • Support for Flex consumption plans, including zone redundancy, increased regions, and larger instance sizes.
  • Enhanced security for applications through managed identity and networking support across all Azure Functions plans.
  • Durable Functions to develop deterministic agentic solutions, providing control over agent processes with built-in state management for automatic retries and complex orchestration patterns, including human approvals. Read more about using durable for agents in this blog.

Azure Functions has made significant investments over the past couple of years to simplify the development of secure, scalable, and intelligent applications.

Learn more about the scenarios and capabilities in the documentation.

Building AI apps

General availability announcements

Azure Functions integration with Azure AI Foundry Agent Service

Integrating Azure Functions with AI Foundry Agent service enables you to build intelligent, event-driven applications that are scalable, secure, and cost-efficient. Azure Functions act as custom tools that AI agents can call to execute business logic, access secure systems, or process data dynamically in response to events like HTTP requests or queue messages.

 

This integration allows for modular AI workflows, where agents can reason through tasks and trigger specific functions as needed—ideal for scenarios like customer support, document processing, or automated insights—without the need to manage infrastructure.

Learn more

Public preview announcements

Remote Model Context Protocol (MCP) 

Model Context Protocol (MCP) is a way for apps to provide capabilities and context to a large language model. A key feature of MCP is the ability to define tools that AI agents can leverage to accomplish whatever tasks they’ve been given. MCP servers can be run locally, but remote MCP servers are important for sharing tools that work at cloud scale.  

The preview of triggers and bindings allow you to build tools using remote MCP with server-sent events (SSE) with Azure Functions. Azure Functions lets you author focused, event-driven logic that scales automatically in response to demand. You just write code reflecting unique requirements of your tools, and Functions will take care of the rest.  

Learn more

Azure OpenAI Trigger and Bindings preview update

The Azure OpenAI extension has been updated to support managed identity, the latest OpenAI SDK, support for Azure Cosmos DB for NoSQL as a vector store, and customer feedback improvements.

Retrieval Augmented Generation (Bring your own data for semantic search)

  • Data ingestion with Functions bindings.
  • Automatic chunking and embeddings creation.
  • Store embeddings in vector database including AI Search, Cosmos DB for MongoDB, Cosmos DB for NoSQL, and Azure Data Explorer.
  • Binding that takes prompts, retrieves documents, sends to OpenAI LLM, and returns to user.

Text completion for content summarization and creation

  • Input binding that takes prompt and returns response from LLM.

Chat assistants

  • Input and output binding to chat with LLMs.
  • Output binding to retrieve chat history from persisted storage.
  • Skills trigger that is registered and called by LLM through natural language. 

Learn more.

Flex consumption

General availability announcements

New regions for Azure Functions Flex consumption

Beyond the already generally available regions, you can now create Flex Consumption apps in the following regions:

  • Australia Southeast
  • Brazil South
  • Canada Central
  • Central India
  • Central US
  • France Central
  • Germany West Central
  • Italy North
  • Japan East
  • Korea Central
  • North Central US
  • Norway East
  • South Africa North
  • South India
  • Spain Central
  • UAE North
  • Uk West
  • West Central US
  • West Europe
  • West US

Pricing for each region will be available by July 1st. To learn more, see View Currently Supported regions.

Public preview announcements

Azure Functions Flex Consumption now supports availability zones and 512 MB instances

You can now enable availability zones for your Flex Consumption apps during create or post-create. You can also choose the 512 MB instance memory size.

Availability zones are physically separate groups of datacenters within each Azure region. When one zone fails, services can fail over to one of the remaining zones. When availability zones are enabled, instances are distributed across availability zones for increased reliability.

Availability zones preview is initially available in the following regions:

  • Australia East
  • Canada Central
  • Central India
  • East Asia
  • Germany West Central
  • Italy North
  • Norway East
  • South Africa North
  • Sweden Central
  • West US 3
  • UAE North
  • UK South

To learn more about availability zones, see reliability in Azure Functions

Moreover, Azure Functions now allows you to choose 512 MB in addition to 2048 MB and 4096 MB as the memory instance size for your Flex Consumption apps. This enables you to further cost optimize your apps that require less resources, and allows your apps to scale out further within the default quota.

To learn more about instance sizes, see Flex Consumption plan instance memory.

Azure Functions on Azure Container Apps

General availability announcements

We are excited to introduce a new, streamlined method for running Azure Functions directly in Azure Container Apps (ACA). This powerful integration allows you to leverage the full features and capabilities of Azure Container Apps while benefiting from the simplicity of auto-scaling provided by Azure Functions

For customers who want to deploy and manage their Azure Functions using the native capabilities of Azure Container Apps, we have recently released the ability to use Azure Functions on Azure Container Apps environment to deploy your multitype services to a cloud-native solution designed for centralized management and serverless scale.

Azure Function’s host, runtime, extensions, and Azure Function apps can be developed and deployed as containers using familiar Functions tooling including Core Tools, AzCLI/Portal/code-to-cloud with GitHub actions and DevOps tasks into the Container Apps compute environment.  

 

This enables centralized networking, observability, and configuration boundaries for multitype application development when building microservices. Azure Functions on Azure Container Apps can be integrated with DAPR, scaled using KEDA and provisioned to a highly performant serverless plan. This allows you to maximize productivity with a serverless container service built for microservices, robust autoscaling, and fully managed infrastructure. 

Learn more. 

Triggers and Bindings

General availability announcements

Azure SQL trigger for Azure Functions

You can now build application logic in azure function apps consumption plan that can scale apps to zero and up driven by the data from Azure SQL database. Azure SQL trigger for Azure Functions allows you to use nearly any SQL database enabled with change tracking to develop and scale event-driven applications using Azure Functions.   

Invoking an Azure Function from changes to an Azure SQL table is now possible through the Azure SQL trigger for Azure Functions in all plans for Azure Functions supported languages.  

  • Azure SQL trigger for Azure Functions enables you, with nearly any SQL database enabled with change tracking, to develop and scale event-driven applications using Azure Functions. The Azure SQL trigger is compatible with Azure SQL Database, Azure SQL Managed Instance, and SQL Server and can be developed with all Azure Functions supported languages for all plans.  
  • With input and output bindings for SQL already in GA, you can quickly write Azure Functions that read and write from your databases. Together with triggers and input/output bindings, the SQL extension for Azure Functions provides you improved efficiency with low-code/no-code database interactions and enables those who are looking to migrate their applications to Azure the ability to participate in modern architectures.   

Learn more. 

Bind to Blob Storage types from the Azure SDK for Python

Azure Functions triggers and bindings enable you to easily integrate event and data sources with function applications. This feature enables you to use types from service SDKs and frameworks, providing more capability beyond what is currently offered. 

Specifically, SDK type bindings for Azure Storage Blob enable the following key scenarios:

  • Downloading and uploading blobs of large sizes, reducing current memory limitations and GRPC limits.
  • Improved performance by using blobs with Azure Functions

To learn more, see SDK type bindings for Azure Blob Storage in Python

Azure Functions support for HTTP streams in Python

Azure Functions support for HTTP streams in Python is now GA. With this feature, customers can stream HTTP requests to and responses from their Function Apps, using function exposed FastAPI request and response APIs.

Previously with HTTP requests, the amount of data that could be transmitted was limited at the SKU instance memory size. With HTTP streaming, large amounts of data can be processed with chunking.

This feature enables new scenarios including processing large data streaming OpenAI responses and delivering dynamic content. You can leverage this feature for use cases where real time exchange and interaction between client and server over HTTP connections is needed. Additionally, FastAPI response types are supported with this feature.

To learn more, see HTTP streams in Azure Functions using Python.

Public preview announcements

Bind to types in Azure Functions for Azure Service Bus, Azure Cosmos DB and Azure Event Hubs in Python

Azure Functions triggers and bindings enable you to easily integrate event and data sources with function applications. This feature enables you to use types from service SDKs and frameworks, providing more capability beyond what is currently offered. 

Azure Service Bus:

You can now interact with the ServiceBusReceivedMessage type from the SDK, offering more advanced functionality compared to the previous ServiceBusMessage type.

To learn more, see SDK type bindings for Service Bus in Python.

Azure Cosmos DB:

SDK type bindings for Azure Cosmos DB enable the following key scenarios: 

  • Interacting with Cosmos DB instances seamlessly (databases, containers, and documents), reducing current memory limitations and GRPC limits.
  • Improved performance by using Cosmos DB with Azure Functions

To learn more, see SDK type bindings for Cosmos DB in Python.

Azure Event Hubs:

Azure Event Hubs SDK type bindings enable you to use types from service SDKs and frameworks, providing more capability beyond what is currently offered. 

To learn more, see SDK type bindings for Event Hubs in Python.

SDK type bindings in Azure Functions for Azure Blob Storage in Java

SDK type bindings for Azure Blob Storage enable the following key scenarios:

  • Downloading and uploading blobs of large sizes, reducing current memory limitations and GRPC limits.
  • Enabling advanced operations including partial reads, parallel uploads, and direct property manipulations.
  • Improved performance by using blobs with Azure Functions

To learn more, see SDK type bindings for Azure Blob Storage in Java.

SDK type bindings for Azure Blob storage in Node.js

The new SDK bindings capability in Azure Functions allows you to work directly with the Azure SDK types like BlobClient and ContainerClient instead of raw data when developing in JavaScript or TypeScript. This provides access to the SDK methods when working with blobs.

You can learn more in the SDK type bindings for Azure Blob storage in the documentation.

Language updates

General availability announcements

Python 3.12

You can now develop functions using Python 3.12 locally and deploy them to all Azure Functions plans. 

Python 3.12 builds on the performance enhancements that were first released with Python 3.11 and adds several performance and language readability features in the interpreter. You can now take advantage of these new features and enhancements when creating serverless applications on Azure Functions. 

Learn more.

Azure Functions support for Java 21 LTS

Azure Functions support for Java 21 is now generally available.

You can now develop apps using Java 21 locally and deploy them to all Azure Functions plans on Linux and Windows.

For more info:

Updating your app to Java 21.
Learn more about Java 21
More information about Azure Functions Supported Languages

Durable Functions

General availability announcements

Durable functions v3 in Azure Functions

Durable functions extension v3 in Azure Functions is now generally available. Major improvements in this new major version include improved cost efficiency for usage of Azure Storage v2 accounts and an upgrade to the latest Azure Storage SDKs, as well as the .NET Framework used by the extension.

For more info: https://learn.microsoft.com/azure/azure-functions/durable/durable-functions-versions

Public preview announcements

Durable task scheduler 

Durable task scheduler is a new storage provider for Durable Functions. It is designed to address the challenges and gaps identified by our customers with existing bring-your-own storage options. Over the past few months, since the initial limited early access launch of the durable task scheduler, we’ve been working closely with our customers to understand their requirements and ensure they are fully supported in using durable task scheduler successfully. We’ve also strengthened the fundamentals by   

  • Expanding regional availability  
  • Finalizing APIs  
  • Ensuring high reliability, scalability and built-in security  
  • Adding support for all durable functions programming languages  

 

This is the preferred managed backend solution for customers who require high performance, enhanced monitoring of stateful orchestrations, or find managing bring-your-own storage accounts too cumbersome. It is the ideal choice for stateful functions (durable functions) in Azure Functions.  

Learn more.  

GitHub Copilot for Azure to develop your functions in VS Code

With the GitHub Copilot for Azure extension, you can now generate complete Azure Functions code just by describing what you want — directly in VS Code. Using GitHub Copilot in agent mode, simply prompt it with your desired app logic, and it writes Functions code that follows Azure Functions’ best practices automatically. 

This means you don’t have to start from scratch — GitHub Copilot ensures your functions use the latest programming models, event-driven triggers, secure auth defaults, and recommended development patterns, so you can build scalable, production-ready apps faster and with confidence.

Coming soon: Azure Functions deployment and infrastructure best practices, including Bicep generation, to streamline your entire Functions development lifecycle.

Install GitHub Copilot for Azure to try it out today.

Managed Identity support during application creation

Azure Functions continues to invest in best practices to ensure customers can provide built-in security for their applications. Support for using managed identity is available for working with the required storage account used by Azure Functions as well as supported extensions.

You can now configure managed identity directly in the portal when creating a function app to reduce the need for secrets.

You can learn more about security in Azure Functions in the documentation.

OpenTelemetry Support in Azure Functions Public Preview


We're excited to announce significant improvements to OpenTelemetry support in Azure Functions, expanding on the limited preview announced last year. These enhancements deliver better observability, improved performance, and more detailed insights into your function executions, helping you diagnose issues faster and optimize your applications more effectively.

These updates make it easier to monitor and troubleshoot your serverless apps with clearer, more relevant insights. To get started, enable OpenTelemetry in your function app and check out the latest documentation.

 

We would love to hear feedback on these new capabilities and your overall experience with Functions so we can make sure we meet all your needs. You can click on the “Send us your feedback” button from the overview page of your function app.

Thanks for all your feedback from the Azure Functions Team.

Updated May 22, 2025
Version 5.0

2 Comments