From fefea3a2a5bc35336aa67811a86ef1f12bc64eed Mon Sep 17 00:00:00 2001 From: so95 Date: Wed, 26 Feb 2025 16:55:12 +0700 Subject: [PATCH] Fixed OpenAI compatibility stream [DONE] (#5389) Fixed OpenAI compatibility stream [DONE] - [x] Bug Fix (non-breaking change which fixes an issue) --------- Co-authored-by: Kevin Hu --- api/apps/sdk/session.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/api/apps/sdk/session.py b/api/apps/sdk/session.py index 1ee2673e9..414f99efd 100644 --- a/api/apps/sdk/session.py +++ b/api/apps/sdk/session.py @@ -287,10 +287,10 @@ def chat_completion_openai_like(tenant_id, chat_id): incremental = answer[token_used:] token_used += len(incremental) response["choices"][0]["delta"]["content"] = incremental - yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n".encode("utf-8") + yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n" except Exception as e: response["choices"][0]["delta"]["content"] = "**ERROR**: " + str(e) - yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n".encode("utf-8") + yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n" # The last chunk response["choices"][0]["delta"]["content"] = None @@ -300,7 +300,9 @@ def chat_completion_openai_like(tenant_id, chat_id): "completion_tokens": token_used, "total_tokens": len(prompt) + token_used } - yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n".encode("utf-8") + yield f"data:{json.dumps(response, ensure_ascii=False)}\n\n" + yield "data:[DONE]\n\n" + resp = Response(streamed_response_generator(chat_id, dia, msg), mimetype="text/event-stream") resp.headers.add_header("Cache-control", "no-cache")