using Windows 11, miniconda with gradio==4.31.3, has HTTPS and HTTP proxy set by Clash:
When i done the audio recording by click stop button, the error: RuntimeError: Response content shorter than Content-Length occured, while the function still working as expected with the translated text can output to text box.
Have you searched existing issues? 🔎
[X] I have searched and found no existing issues
Reproduction
import numpy as np
import os
import sys
import time
from typing import Union, Literal
from langchain import hub
from langchain.agents import AgentExecutor, create_tool_calling_agent
import gradio as gr
import tempfile
from langchain_core.tools import tool
from openai import OpenAI
from langchain_openai import ChatOpenAI
import model_builder
import datetime
def chat(audio_file_path):
try:
assert audio_file_path is not None
assert os.path.exists(audio_file_path)
print(
f"{datetime.datetime.now()} - will turn audio file: {audio_file_path} to text...")
audio_file_path = open(audio_file_path, "rb")
client = OpenAI(api_key=model_builder.OPENAI_API_KEY)
transcriptions = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file_path,
response_format="text",
)
return transcriptions
except Exception as error:
print(str(error))
raise gr.Error(
"An error occurred while generating speech. Please check your API key and come back try again"
)
# demo = gr.Interface(
# chat,
# ["state", gr.Audio(sources=["microphone"], type="filepath", format="mp3",
# label="Speech Input")],
# ["state", gr.Text(label="Speech Output Text")],
# )
# demo.launch()
with gr.Blocks() as demo:
with gr.Row():
input_audio = gr.Audio(sources=["microphone"], label="Speech Input",
type="filepath", streaming=False)
# output_audio = gr.Audio(label="Speech Output", autoplay=True)
# file = gr.UploadButton(
# file_types=[".mp3", ".wav"], label="Select File", type="filepath")
llm_output_text = gr.Text(label="LLM Text Output")
# btn = gr.Button("Speech-To-Text")
input_audio.stop_recording(fn=chat, inputs=[
input_audio], outputs=[ llm_output_text], api_name=False)
demo.launch()
Screenshot
No response
Logs
Running on local URL: http://127.0.0.1:7860
To create a public link, set `share=True` in `launch()`.
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\uvicorn\protocols\http\httptools_impl.py", line 411, in run_asgi
result = await app( # type: ignore[func-returns-value]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 69, in __call__
return await self.app(scope, receive, send)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\fastapi\applications.py", line 1054, in __call__
await super().__call__(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\applications.py", line 123, in __call__
await self.middleware_stack(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\middleware\errors.py", line 186, in __call__
raise exc
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\gradio\route_utils.py", line 707, in __call__
await self.app(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\middleware\exceptions.py", line 65, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 64, in wrapped_app
raise exc
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\routing.py", line 756, in __call__
await self.middleware_stack(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\routing.py", line 776, in app
await route.handle(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\routing.py", line 297, in handle
await self.app(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\routing.py", line 77, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 64, in wrapped_app
raise exc
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
await app(scope, receive, sender)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\routing.py", line 75, in app
await response(scope, receive, send)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\responses.py", line 352, in __call__
await send(
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 50, in sender
await send(message)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\_exception_handler.py", line 50, in sender
await send(message)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\starlette\middleware\errors.py", line 161, in _send
await send(message)
File "c:\Users\music\miniconda3\envs\roboctrl\Lib\site-packages\uvicorn\protocols\http\httptools_impl.py", line 549, in send
raise RuntimeError("Response content shorter than Content-Length")
RuntimeError: Response content shorter than Content-Length
2024-05-22 11:46:27.548186 - will turn audio file: C:\Users\music\AppData\Local\Temp\gradio\1d58de035c71137c9e960cce3dc34b77c4d14a86\audio.wav to text...
System Info
using Windows 11, miniconda with `gradio==4.31.3`, has HTTPS and HTTP proxy set by Clash
Describe the bug
using Windows 11, miniconda with![image](https://github.com/gradio-app/gradio/assets/3241829/054ea501-e087-4f14-bb14-ff1df24db638)
gradio==4.31.3
, has HTTPS and HTTP proxy set by Clash:When i done the audio recording by click stop button, the error:
RuntimeError: Response content shorter than Content-Length
occured, while the function still working as expected with the translated text can output to text box.Have you searched existing issues? 🔎
Reproduction
Screenshot
No response
Logs
System Info
Severity
Not Blocking usage of gradio