github / github/copilot-sdk

Responses API: AssistantReasoningDeltaEvent and AssistantReasoningEvent triggered with empty content via BYOK providers

未关闭
#1,230 1 条评论 2 个 reaction 已指派 0 人 在 GitHub 查看
documentation
主要语言
Java
星标
10.5k
派生
1.5k
平均合并
1 天 14 小时
30 天内合并 PR
129

描述

When using GitHub Copilot SDK in a BYOK (Bring Your Own Key) setup—whether the provider is OpenAI or vLLM—the Responses API triggers both AssistantReasoningDeltaEvent and AssistantReasoningEvent, but the content (reasoning or explanation) for these events is always empty.

**Steps to reproduce:**
1. Set up Copilot SDK to use BYOK with OpenAI or vLLM as the provider (Windows or WSL). Example .NET code configuration:

```csharp
await using var session = await client.CreateSessionAsync(new SessionConfig
{
Provider = new ProviderConfig
{
Type = "openai",
BaseUrl = "https://api.openai.com/v1",
ApiKey = "your_api_key",
WireApi = "responses",
},
ReasoningEffort = "high",
Model = "gpt-5.4-2026-03-05",
OnPermissionRequest = PermissionHandler.ApproveAll,
Streaming = true
});
```

2. Trigger chat completions or requests that should provide reasoning content through the Responses API.
3. Observe that AssistantReasoningDeltaEvent and AssistantReasoningEvent are triggered, but the content is always empty.

**Expected behavior:**
These events should include the reasoning/explanation content returned by the provider's API. Content should not be empty if the provider returns a reasoning field.

**Context:**
- Environment: Windows, WSL
- Copilot SDK version: 0.3.0
- BYOK provider: OpenAI or vLLM

贡献指南

打开贡献指南

调研方向

首先跟踪 Responses API 对 AssistantReasoningDeltaEvent 和 AssistantReasoningEvent 的处理,然后使用所示的 BYOK 配置搭配 OpenAI 或 vLLM 重现该问题。将 provider 的 reasoning 字段与 event payload 进行比较;当 provider 返回非空 reasoning 时,该 reasoning 被传递到两个 event 中,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
csharp, java
领域
api
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
52/100

把新 issue 发到你的邮箱

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