-
Notifications
You must be signed in to change notification settings - Fork 509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
请求增加执行翻译时的completion类型,以支持增量返回翻译结果 #451
Comments
你好,这个是可以考虑的,不过感觉对目前的改动会较大,麻烦加我 QQ 453942056 一起评估一下可行性。 |
好希望能够加入这个功能,每次等chat GPT给出完整回答太漫长了,还是很坐牢(但还是很感谢,bob真的太好用了 |
+1 |
@ripperhe 可以问下后续有支持的计划吗? |
后续会支持的 |
hi,我看到 1.7.0 的更新文档讲已经支持流式输出,请问近期有考虑更新 API 文档以供插件开发使用嘛 |
@liby 你好,后续会把能力封装下,开放给插件 |
各位,Bob 1.8.0 支持了这个能力,请参考这篇文档: |
halo,我看文档中并没有提到如何 parse |
这里以 OpenAI 为例,它的流式数据返回的是类似本文底部格式的文本,你收到到 你可以进行如下操作:
需要注意,每次可能会收到 1 个或多个 不过,以上说的都是 OpenAI 这一个接口,每个接口不同,有的 可以参考以下文档:
|
@liby 🤝🏻 好的,我今天一整天都在户外,晚上回去看看哈。 |
@ripperhe 请问流式请求返回的行文本会被 Bob 截断吗,我在开发 https://github.com/jtsang4/bob-plugin-claude-translator 插件,也想支持流式输出。但是在遇到长文本时总是会出现某一行的文本不完整,导致 parse 出错的情况。 Claude API 的返回不像 OpenAI 一样是只返回增量,它是持续返回全量,因此每一行的内容会越来越多,我在想 Bob 是否对行文本进行了截断,导致插件获取不到过长的行。以下是一个 Claude API 调用的示例返回:
|
@jtsang4 你好,麻烦把 streamHandler 每次回调的 text 打印一下,看下 Bob 每次返回的数据是什么,我这边也可以分析下 |
背景信息
我正在开发一个基于 OpenAI API 的 Bob 翻译插件。OpenAI 的 GPT 模型翻译质量不错,但其完成翻译的速度较 DeepL 等服务慢得多。然而,OpenAI API 允许使用流式传输,将翻译结果通过事件流的形式部分返回,我可以提前获取部分翻译结果。
我试图实现增量展示翻译结果,但是 Bob 提供的
translate
接口的 completion 只有两种类型:result 和 error。这两种类型都是在一次调用中执行并结束。如果等待 OpenAI API 返回完整的翻译结果再展示,等待时间将随文本长度的增长而增加,这不利于用户体验。功能建议
我建议将
translate
接口的 completion 类型增加一种类型 update,即调用 update 时展示翻译文本,调用 result 时结束整个translate
调用。这样,对于可以提前获取部分翻译结果的情况,可以多次调用 update 来实现部分翻译结果的提前展示,避免用户等待时间过长。
作者可以考虑这个建议吗?谢谢!
The text was updated successfully, but these errors were encountered: