Seounghyup Claude commited on
Commit
bb5ce7e
Β·
1 Parent(s): 9026aea

Fix streaming buffering issue

Browse files

- Add asyncio.sleep(0) to force immediate token transmission
- Prevent Hugging Face Spaces buffering
- Improve real-time streaming experience

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

Files changed (2) hide show
  1. app.py +4 -0
  2. main.py +4 -0
app.py CHANGED
@@ -222,6 +222,8 @@ async def chat_stream(request: ChatRequest):
222
 
223
  async def generate_stream() -> AsyncGenerator[str, None]:
224
  """토큰 λ‹¨μœ„ 슀트리밍 μ œλ„ˆλ ˆμ΄ν„°"""
 
 
225
  try:
226
  # ν”„λ‘¬ν”„νŠΈ λΉŒλ“œ
227
  prompt = build_prompt(request.message, request.mode)
@@ -251,6 +253,8 @@ async def chat_stream(request: ChatRequest):
251
  "token_count": token_count
252
  }
253
  yield f"data: {json.dumps(data, ensure_ascii=False)}\n\n"
 
 
254
 
255
  # μ™„λ£Œ μ‹ ν˜Έ
256
  final_data = {
 
222
 
223
  async def generate_stream() -> AsyncGenerator[str, None]:
224
  """토큰 λ‹¨μœ„ 슀트리밍 μ œλ„ˆλ ˆμ΄ν„°"""
225
+ import asyncio
226
+
227
  try:
228
  # ν”„λ‘¬ν”„νŠΈ λΉŒλ“œ
229
  prompt = build_prompt(request.message, request.mode)
 
253
  "token_count": token_count
254
  }
255
  yield f"data: {json.dumps(data, ensure_ascii=False)}\n\n"
256
+ # μ¦‰μ‹œ 전솑을 μœ„ν•œ 짧은 λŒ€κΈ°
257
+ await asyncio.sleep(0)
258
 
259
  # μ™„λ£Œ μ‹ ν˜Έ
260
  final_data = {
main.py CHANGED
@@ -205,6 +205,8 @@ async def chat_stream(request: ChatRequest):
205
 
206
  async def generate_stream() -> AsyncGenerator[str, None]:
207
  """토큰 λ‹¨μœ„ 슀트리밍 μ œλ„ˆλ ˆμ΄ν„°"""
 
 
208
  try:
209
  # ν”„λ‘¬ν”„νŠΈ λΉŒλ“œ
210
  prompt = build_prompt(request.message, request.mode)
@@ -234,6 +236,8 @@ async def chat_stream(request: ChatRequest):
234
  "token_count": token_count
235
  }
236
  yield f"data: {json.dumps(data, ensure_ascii=False)}\n\n"
 
 
237
 
238
  # μ™„λ£Œ μ‹ ν˜Έ
239
  final_data = {
 
205
 
206
  async def generate_stream() -> AsyncGenerator[str, None]:
207
  """토큰 λ‹¨μœ„ 슀트리밍 μ œλ„ˆλ ˆμ΄ν„°"""
208
+ import asyncio
209
+
210
  try:
211
  # ν”„λ‘¬ν”„νŠΈ λΉŒλ“œ
212
  prompt = build_prompt(request.message, request.mode)
 
236
  "token_count": token_count
237
  }
238
  yield f"data: {json.dumps(data, ensure_ascii=False)}\n\n"
239
+ # μ¦‰μ‹œ 전솑을 μœ„ν•œ 짧은 λŒ€κΈ°
240
+ await asyncio.sleep(0)
241
 
242
  # μ™„λ£Œ μ‹ ν˜Έ
243
  final_data = {