Azure / Azure/azure-functions-agents-runtime

Use a broadly available default model in templates and samples

Open
#42 0 comments 0 reactions 0 assignees View on GitHub
public-preview
Dominant language
Python
Stars
9
Forks
7
Avg merge
1d 21h
Merged PRs (30d)
20

Description

## Problem

Some templates and samples use model names that may not be broadly available to most customers across Azure AI Foundry regions and quotas. That creates first-run friction: users can follow the sample correctly but fail during deployment or first invocation because the default model is unavailable in their subscription/region.

For public preview, the default model in templates should optimize for successful first run across the largest set of customers.

## Proposal

Choose a default model for templates/samples that is widely available in Azure AI Foundry and works well with this runtime's expected behaviors:

- chat and streaming
- tool calling / function calling
- structured JSON output where needed
- reasonable latency and cost for samples
- broad regional availability and quota access

The Foundry team suggested `gpt-4.1-mini` as a widely available baseline. We should use that if it is the best preview-safe default, but also evaluate whether there is a more capable model that is still broadly available enough to be a good default.

## Candidate decision criteria

The selected default should be:

- available to most customers in the regions recommended by the samples
- deployable through the sample Bicep/azd infrastructure without special access
- powerful enough to show the runtime well, including tool use and structured outputs
- not so expensive or slow that sample runs feel heavy
- documented consistently across README, templates, samples, and local settings

## Suggested work

- Ask/confirm with Foundry which models are currently recommended for broad customer availability.
- Compare `gpt-4.1-mini` with any more capable candidate that still meets the availability bar.
- Update default model names in templates, sample Bicep, `agents.config.yaml`, `local.settings.template.json`, and README/sample docs.
- Avoid using a model as the default if it requires uncommon region selection, special quota, private preview access, or manual deployment changes.
- Keep any more advanced model recommendations as optional upgrades rather than defaults.

## Relationship to other public-preview issues

This is related to #40, which tracks aligning the README quickstart and samples around one consistent first-run path. Whatever model we choose here should become the default model used by that consistent quickstart/sample story.

It should also be reconciled with #33 / PR #15 if the provider/model configuration surface changes.

## Acceptance criteria

- All default templates and primary samples use the selected broadly available model.
- README quickstart and sample READMEs name the same default model.
- Deployment templates provision the selected model in the documented regions.
- Any references to less broadly available or more expensive models are clearly marked as optional alternatives.
- The final choice is validated with Foundry guidance or documented availability evidence.

Contributor guide

Open the contributing guide

Research direction

Start by checking Foundry guidance or documented availability evidence for the candidate models against the samples’ regions, quotas, deployment path, and runtime behaviors. Inventory the deployment templates, sample Bicep, agents.config.yaml, local.settings.template.json, README, and sample READMEs, then update their defaults consistently. Done means primary samples deploy and document the same validated model, with less broadly available models marked optional.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, json, python, yaml
Domain
cloud, documentation, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.