diff --git a/src/agent/llm/LLMProvider.ts b/src/agent/llm/LLMProvider.ts index bca9437..adb6c91 100644 --- a/src/agent/llm/LLMProvider.ts +++ b/src/agent/llm/LLMProvider.ts @@ -165,8 +165,9 @@ export class OpenAICompatibleLLMProvider implements LLMProvider { requestParams.tool_choice = 'auto'; } - const stream = this.client.chat.completions.stream(requestParams); + const stream = await this.client.chat.completions.create(requestParams); const toolCallAccumulator = new Map(); + let finishReason = 'stop'; for await (const chunk of stream) { // Do not delete: leave this commented out for future debugging purpose. @@ -174,6 +175,10 @@ export class OpenAICompatibleLLMProvider implements LLMProvider { const choice = chunk.choices[0]; if (!choice) continue; + if (choice.finish_reason) { + finishReason = choice.finish_reason; + } + const delta = choice.delta; if (delta.content) { yield { type: 'text', content: delta.content }; @@ -197,9 +202,6 @@ export class OpenAICompatibleLLMProvider implements LLMProvider { } } - const finalCompletion = await stream.finalChatCompletion(); - const finishReason = finalCompletion.choices[0]?.finish_reason ?? 'stop'; - if (toolCallAccumulator.size > 0) { for (const [, tc] of toolCallAccumulator) { const toolCall: ToolCall = { diff --git a/vite.config.ts b/vite.config.ts index 492a9cd..5802a65 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -16,6 +16,12 @@ export default defineConfig({ define: { __APP_VERSION__: JSON.stringify(version), }, + esbuild: { + keepNames: true, + }, + build: { + sourcemap: true, + }, server: { host: true, headers: {