Skip to content
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

1. 修改stream_chat的接口,在请求体中选择knowledge_base_id;2. 增加stream_chat_bing接口;3. 增加了调用流式接口的方法说明;4. 优化cli_demo.py的逻辑:支持 输入提示;多输入;重新输入 #630

Merged
merged 10 commits into from
Jul 2, 2023

Conversation

hzg0601
Copy link
Collaborator

@hzg0601 hzg0601 commented Jun 14, 2023

  1. 优化了[FEATURE][FEATURE] bing搜索问答有流式的API么? #617,增加了api.py的stream_chat_bing接口;

  2. 优化了api.py的stream_chat的接口,更改为在请求体中选择knowledge_base_id,从而无需两次指定knowledge_base_id;

  3. 在api.py里增加了如何调用stream_chat和steam_chat_bing的方法:

    如果想测试websocket的流式问答,需要使用支持websocket的测试工具,如postman,insomnia

    强烈推荐开源的insomnia,使用insomnia调用的方式如下:

    在测试时选择new websocket request,并将url的协议改为ws,如ws://localhost:7861/local_doc_qa/stream_chat_bing

  4. 优化了cli_demo.py的逻辑:
    4.1 增加了输入提示;
    4.2 支持多个文件输入;
    4.3 支持文件输入错误有再次输入,而非直接因报错而退出;
    4.4 支持部分文件因路径错误而未加载成功后,可选再次加载。

@hzg0601 hzg0601 changed the title 修改stream_chat的接口,在请求体中选择knowledge_base_id;增加stream_chat_bing接口 修改stream_chat的接口,在请求体中选择knowledge_base_id;增加stream_chat_bing接口;增加了调用流式接口的方法说明 Jun 14, 2023
@ucas010
Copy link

ucas010 commented Jun 15, 2023

只需更新下git是吧,大佬

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jun 15, 2023

只需更新下git是吧,大佬

要等review&merge以后才行,你如果只想测试这个功能可以clone我fork下的dev分支,但我的分支跟owner的分支是有冲突的,最好还是等merge以后再测试吧

@hzg0601 hzg0601 closed this Jun 15, 2023
@imClumsyPanda
Copy link
Collaborator

安排安排!感谢提交PR,这两天会尽快完成测试和merge。

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jun 15, 2023

刚刚被我误close了--!

@hzg0601 hzg0601 reopened this Jun 15, 2023
@hzg0601 hzg0601 changed the title 修改stream_chat的接口,在请求体中选择knowledge_base_id;增加stream_chat_bing接口;增加了调用流式接口的方法说明 1. 修改stream_chat的接口,在请求体中选择knowledge_base_id;2. 增加stream_chat_bing接口;3. 增加了调用流式接口的方法说明;4. 优化cli_demo.py的逻辑:支持 输入提示;多输入;重新输入 Jun 15, 2023
@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jun 18, 2023

安排安排!感谢提交PR,这两天会尽快完成测试和merge。

你好,我看我的PR还没有指定reviewer,是不准备引入这些特性了吗?如果是的话,我就close这个PR,因为我还有新的PR想要提交,但是跟这些特性不适合一起提交。

@imClumsyPanda
Copy link
Collaborator

不好意思哈,最近处理速度稍微有点慢,这个是我自己来做审核的所以没分配,这两天我会尽快完成处理。如果有新功能,建议新建分支提交,基于dev分支修改,并提交至dev分支,再次感谢🙏

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jun 18, 2023

不好意思哈,最近处理速度稍微有点慢,这个是我自己来做审核的所以没分配,这两天我会尽快完成处理。如果有新功能,建议新建分支提交,基于dev分支修改,并提交至dev分支,再次感谢🙏

明白,维护这样一个特性丰富的项目确实比较麻烦,加油!

@perfece
Copy link

perfece commented Jun 29, 2023

用你分支的代码问题依然存在:
调用/stream_chat接口,不是一块一块实时返回,而是最后拿到全部答案一次返回的

image

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jun 30, 2023

用你分支的代码问题依然存在:
调用/stream_chat接口,不是一块一块实时返回,而是最后拿到全部答案一次返回的

image

你应该可能恰恰说反了,http协议下,结果都是一块一块返回的,要一次返回要加额外的设置将进程阻塞才可以。至于这个时间,我觉得可能是insomnia的设置吧

cli_demo.py Outdated Show resolved Hide resolved
@imClumsyPanda imClumsyPanda merged commit c52308d into chatchat-space:dev Jul 2, 2023
@roseChainLisa
Copy link

为什么用streat_chat会出现某些情况下一直重复输出结果

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jul 3, 2023

为什么用streat_chat会出现某些情况下一直重复输出结果

如果是用cpu加载量化版本的模型,是会出现这样的问题,解决办法就是cpu和量化只选一个

@roseChainLisa
Copy link

我是GPU,而且加载的是非量化版本的模型 chatglm-6b

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jul 3, 2023

在少数情况下,模型会出现推理失败的情况,但尝试不同的query或重新加载模型会解决。但如果无论重启模型还是更换prompt都是一直都重复,那就还是环境配错了,需要检查下载的包、系统、CUDA版本等是不是与标准配置一致

@soultrans
Copy link

soultrans commented Jul 12, 2023

@hzg0601 请问除了ChatGLM以外的模型,是否有支持stream流式的问答计划呢?
在目前的代码(v0.1.16)里看到,好像MOSSLLM、LLamaLLM以及chatyuan是不支持流式问答返回的;
请问这块如何让LLamaLLM模型在服务中支持流式问答?非常感谢!

@hzg0601
Copy link
Collaborator Author

hzg0601 commented Jul 12, 2023

@soultrans 目前的开发者没有这个计划,这需要参考chatglm的model.py写chat和stream_chat,如果你有兴趣,欢迎提PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants