gpt-6-astra agents with actions fail: Azure Chat Completions rejects function tools at every reasoning effort

未关闭
#1,606 1 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@paullizer 已经在做这个了。

开始于 2026年10月2日。

评估

这个 Issue 还没有评估数据。

描述

bug P1

Issue

Local (Semantic Kernel) agents with actions fail on gpt-6-astra. SimpleChat sends agent tool calls through Chat Completions, and Azure rejects function tools for this model on Chat Completions at every reasoning effort the model accepts. Any agent or scheduled workflow that uses actions with a gpt-6-astra deployment fails with a 400 before it does any work.

gpt-6-sol has the same rule as GPT-5.6: tools work on Chat Completions only with reasoning_effort: none. gpt-6-sol isn't in the model catalog, so SimpleChat doesn't apply the existing toolReasoningEfforts rule, and a gpt-6-sol agent with actions fails unless its Reasoning Effort is explicitly set to None.

Observed on a SimpleChat POC deployment running the React V2 branch (0.261.219) with Azure OpenAI deployments gpt-6-astra (2026-09-03) and gpt-6-sol (2026-09-22). The model endpoint uses api-version 2024-05-01-preview.

Steps to Reproduce

  1. Deploy gpt-6-astra in Azure OpenAI and add it to a model endpoint.
  2. Create a local agent on gpt-6-astra with at least one action (for example, the SimpleChat action).
  3. Chat with the agent, or run a workflow that uses it.
  4. Set the agent's Reasoning Effort to None and repeat.

Expected Behavior

The agent runs through an API that supports tools for this model. If that isn't possible, SimpleChat blocks the configuration up front with a clear message that this model can't use actions through Chat Completions.

Actual Behavior

Model Reasoning effort Result
gpt-6-astra Not set (model default) 400: Function tools with reasoning_effort are not supported for gpt-6-astra in /v1/chat/completions. To use function tools, use /v1/responses or set reasoning_effort to 'none'.
gpt-6-astra low 400: same Function tools with reasoning_effort are not supported for gpt-6-astra error
gpt-6-astra none 400: Unsupported value: 'reasoning_effort' does not support 'none' with this model. Supported values are: 'low', 'medium', 'high', and 'xhigh'.
gpt-6-sol Not set (model default) 400: Function tools with reasoning_effort are not supported for gpt-6-sol in /v1/chat/completions. To use function tools, use /v1/responses or set reasoning_effort to 'none'.
gpt-6-sol none Works

In a workflow, the run shows only the generic task error (The task could not complete. Review its input, model availability, and run activity.). The provider error appears only in Application Insights.

Impact

  • gpt-6-astra can't be used for any agent with actions, including scheduled workflows.
  • gpt-6-sol agents with actions fail unless the admin knows to set Reasoning Effort to None.
  • The cause isn't visible to the user or admin who sees the failure.

Notes

  • Local agents always use Chat Completions (AzureChatCompletion in semantic_kernel_loader.py and functions_model_endpoint_runtime.py). The Responses API is used only for Foundry agents and image generation.
  • The documentation doesn't describe this rule for GPT-6. Azure's model table lists Chat Completions and "Functions, tools, and parallel tool calling" for gpt-6-astra and gpt-6-sol, without the GPT-5.6 note that tools on Chat Completions require reasoning_effort: none. OpenAI's gpt-6-astra page lists reasoning efforts low, medium, high, xhigh and max, with no none, which matches the rejection above.
  • The errors name /v1/chat/completions and give the fix (/v1/responses or none), so this looks like a model-level rule rather than an effect of the older api-version. A newer api-version wasn't tested.
  • A model catalog update on the React V2 branch (0.261.220) records gpt-6-astra's verified token limits, its reasoning efforts, and this restriction as notes. The current toolReasoningEfforts field can't express "no effort supports tools", so the runtime still sends the request.
  • Related: #1605 (GPT-6 models sent max_tokens).

Suggested Fix

  • Add a catalog record for gpt-6-sol with an Azure Chat Completions toolReasoningEfforts: ["none"] profile, so SimpleChat sends none automatically when tools are present, as it does for GPT-5.6. Add gpt-6-luna once its behavior is verified. Done on the React V2 branch in 0.261.221 (#1608).
  • Let the catalog mark a model and protocol as not supporting function tools (for example, Azure Chat Completions for gpt-6-astra). Fail early with a clear message in the agent editor and at run time instead of a provider 400.
  • Run local agents with tools through the Responses API for models that require it. This may need its own issue.
  • Show a safe, specific reason in the workflow task error instead of the generic message.
  • Add functional tests for the catalog rules and the early failure.
主要语言
Python
星标
157
派生
117
平均合并
3 小时 6 分钟
30 天内合并 PR
219

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

microsoft/simplechat 的其他 Issue

查看 microsoft/simplechat 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。