/** * Responses API SSE 流式转换器 * * 提供完整的 Responses API SSE 事件序列,适配 Codex/Copilot 等客户端。 * * 两种工作模式: * 1. Chat Conversion — 将 Chat Completions SSE 流转换为 Responses API SSE 事件 * 2. Native Proxy — 直接转发上游 Responses API 的 SSE 事件(HTTP fetch) * * 完整事件序列: * response.created * response.in_progress * response.output_item.added (message) * response.content_part.added * (response.output_text.delta)* ← 主文本流 * response.output_text.done * response.content_part.done * response.output_item.done * [response.output_item.added (function_call) * (response.function_call_arguments.delta)* * response.function_call_arguments.done * response.output_item.done]* ← 工具调用 * response.completed ← 含 usage */ import { Response } from 'express'; import OpenAI from 'openai'; export interface ResponsesStreamOptions { modelId?: number; promptTokens?: number; } /** * 将 Chat Completions 流式 chunk 转换为完整的 Responses API SSE 事件序列。 * * 修复了原实现中缺失的生命周期事件(content_part.added、content_part.done 等), * 确保 Codex/Copilot 能正确解析流。 */ export declare function streamChatAsResponses(stream: AsyncIterable, res: Response, modelName: string, options?: ResponsesStreamOptions): Promise; /** * 直接代理上游 Responses API 的 SSE 事件。 * * 使用 HTTP fetch 而非 SDK,避免 SDK 版本兼容性问题。 * 支持自动回退到非流式(当上游不支持流式时)。 */ export declare function processResponsesFetchStream(upstreamUrl: string, apiKey: string, requestBody: Record, res: Response, options?: ResponsesStreamOptions): Promise; /** * 从 Chat Completion 响应构建完整的 Responses API 响应。 * * 比原 convertChatCompletionToResponse 更完整: * - 添加 status、incomplete_details 字段 * - output.content.annotations 数组确保存在 * - 更完整的 usage 映射 */ export declare function buildResponsesResponse(chatCompletion: Record, requestBody: Record): Record; //# sourceMappingURL=responses-stream.d.ts.map