Skip to content

[#682] Samples Parity: Align Azure AI Streaming samples - #732

Merged
tracyboehrer (tracyboehrer) merged 6 commits into
mainfrom
southworks/update/align-azure-ai-streaming-samples
Sep 22, 2026
Merged

tracyboehrer (tracyboehrer) merged 6 commits into
mainfrom
southworks/update/align-azure-ai-streaming-samples

Conversation

@ceciliaavila

Copy link
Copy Markdown
Collaborator

Addresses #682

Description

This pull request updates and improves the Azure AI Streaming sample agents for .NET, Node.js, and Python focusing on clarity, configuration, and streaming features. The most significant changes include renaming and rebranding the .NET sample, improving configuration validation, enhancing agent streaming capabilities and feedback handling, and rewriting the READMEs for all three samples to be more concise and user-friendly.

Detailed Changes

Implemented parity across .NET, Node.js, and Python.
Key changes:

  • All messages now trigger the same ~500-word Apollo poem.
  • Aligned welcome text, informative update, system prompt, fallback error, AI label, sensitivity label, and feedback behavior.
  • Standardized Azure OpenAI environment variable names with startup validation.
  • Added self-filtered welcome events and feedback-specific invoke routing.
  • Added root health endpoints where missing.
  • Renamed Python folder to azure-ai-streaming.
  • Renamed the .NET project to AzureAIStreaming.csproj.
  • Updated dependency metadata and all READMEs.

Testing

image

Copilot AI lite review requested due to automatic review settings September 22, 2026 14:48
@ceciliaavila Cecilia Avila (ceciliaavila) added the Samples Changes to Samples label Sep 22, 2026
@tracyboehrer
tracyboehrer (tracyboehrer) merged commit 9e14c1b into main Sep 22, 2026
6 checks passed
@tracyboehrer
tracyboehrer (tracyboehrer) deleted the southworks/update/align-azure-ai-streaming-samples branch September 22, 2026 14:50

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Unresolved streaming, endpoint, health-check, branding, and runtime documentation findings remain.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 1 Medium severity · 1 Low severity

Open (2)
What changed in this PR

Aligns Azure AI Streaming samples across .NET, Node.js, and Python with consistent configuration, streaming behavior, feedback handling, branding, and documentation.

Changes:

  • Standardizes Azure OpenAI settings, validation, health checks, and streaming metadata.
  • Renames and rebrands the Python and .NET samples.
  • Updates dependencies, READMEs, catalog entries, and project metadata.
File Summary Final review findings
samples/​python/​README.md Updates the Python sample catalog entry. —
samples/​python/​azureai-streaming/​src/​agent.py Removes the obsolete Python agent location. —
samples/​python/​azureai-streaming/​README.md Removes the obsolete documentation. —
samples/​python/​azure-ai-streaming/​src/​start_server.py Adds health routing and port handling. moderate (1 vote): Global JWT middleware can block the public / health endpoint.
samples/​python/​azure-ai-streaming/​src/​main.py Adds the Python application entry point. —
samples/​python/​azure-ai-streaming/​src/​agent.py Adds aligned streaming and feedback behavior. moderate (1 vote): Responses API error events are ignored instead of reaching fallback handling.
samples/​python/​azure-ai-streaming/​requirements.txt Updates dependency metadata. —
samples/​python/​azure-ai-streaming/​README.md Documents the renamed Python sample. —
samples/​python/​azure-ai-streaming/​env.TEMPLATE Defines standardized Azure OpenAI settings. —
samples/​nodejs/​azure-ai-streaming/​src/​index.ts Adds aligned Node.js streaming and configuration behavior. moderate (2 votes): Foundry /openai/v1 endpoints are incompatible with the default deployment-based URL construction.
samples/​nodejs/​azure-ai-streaming/​README.md Rewrites Node.js setup documentation. nit (3 votes): Document Node 22+ or use a dependency supporting Node 20. nit (1 vote): Update the top-level Node catalog entry.
samples/​nodejs/​azure-ai-streaming/​package.json Adds package metadata. —
samples/​nodejs/​azure-ai-streaming/​package-lock.json Synchronizes package metadata. —
samples/​nodejs/​azure-ai-streaming/​env.TEMPLATE Defines standardized environment variables. —
samples/​dotnet/​Samples.sln References the renamed .NET project. —
samples/​dotnet/​azure-ai-streaming/​StreamingAgent.cs Adds aligned .NET streaming and feedback behavior. —
samples/​dotnet/​azure-ai-streaming/​README.md Rewrites .NET setup documentation. nit (1 vote): Update the top-level .NET catalog entry. moderate (1 vote): Update the shipped manifest’s old branding.
samples/​dotnet/​azure-ai-streaming/​Properties/​launchSettings.json Renames the launch profile. —
samples/​dotnet/​azure-ai-streaming/​Program.cs Adds configuration validation and fallback sources. —
samples/​dotnet/​azure-ai-streaming/​AzureAIStreaming.csproj Updates project dependencies. —
.github/​dependabot.yml Updates the renamed Python sample path. —
Files not reviewed (1)
  • samples/nodejs/azure-ai-streaming/package-lock.json: Generated file

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +24 to +27
const azureOpenAIProvider = createAzure({
baseURL: azureOpenAIBaseURL,
apiKey: requiredEnvironmentVariable('AZURE_OPENAI_API_KEY')
})

- NodeJS > 20.*
- You will need an Azure OpenAI or OpenAI instance, with the preferred model of `gpt-4o-mini`.
- [Node.js](https://nodejs.org/) 20 or later
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Build Automation Samples Changes to Samples

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants