BUG: gradio RuntimeError: async generator raised StopAsyncIteration

BUG: gradio RuntimeError: async generator raised StopAsyncIteration

环境

python 复制代码
gradio                        4.20.0

详情

在使用gradio编写大模型可视化demo的时候,大模型正常输出,但gradio弹出此错误。

经过排除,发现是返回方式的问题,gradio传输信息给web网页的时候,我使用了return,但实际上应该 使用yield

解决方法

return改为yield

例子

python 复制代码
# 旧
def generate(message: str) -> Iterator[str]:
    stream = False
    response = "你好"
    if stream:
        for _ in range(5):
		        response += response
            yield response
    else:
        return response  # 错误

# 新
def generate(message: str) -> Iterator[str]:
    stream = False
    response = "你好"
    if stream:
        for _ in range(5):
		        response += response
            yield response
    else:
        yield response  # 正确

相关推荐
buyue__10 分钟前
Python实现连接MySQL数据库并执行目录下的所有SQL文件,遇到错误时终止执行。
python·mysql
SuperByteMaster27 分钟前
autosar 架构脚本提示语
python
Zane199441 分钟前
钻石继承调用哪个方法?一文讲透 MRO 与 C3 线性化算法
后端·python
kevinnett1 小时前
图片生成跑到一半“失踪”了:我重新设计了异步任务状态机
python
小白勇闯网安圈1 小时前
Django 模板复用、ORM 查询与多对多关系
数据库·python·django
TheBestRucy1 小时前
基于Dify的旅游攻略&王者荣耀攻略智能助手项目
服务器·开发语言·人工智能·python·算法·旅游
天才少女爱迪生1 小时前
KIMI-K3技术博客写作思路分析
python
丨白色风车丨1 小时前
MCP 入门指南:大模型时代的“USB-C”接口
python·mcp
EXI-小洲2 小时前
Web Spider 某渣渣企业平台 表单参数逆向 Webpack
python·webpack·js逆向·spider
玫幽倩2 小时前
2026聚合獬豸杯决赛wp(手机取证)
python·电子取证·misc·取证·聚合·手机取证·獬豸杯