前面课程中,我们已经把片段向量化的任务创建好了, 接下来,需要找到合适的位置进行发起。主要是两个地方,一个是文档分割完之后,另一个是片段的新增和编辑之后,都需要发起任务。

代码示例

1、分割完成后发起任务

内容不可见,请联系管理员开通权限。

注意,此处修改的task文件,一定要重启celery才会生效。

2、新建和编辑片段后发起任务

内容不可见,请联系管理员开通权限。

3、异步任务重试

我们之所以要把文档分割和向量化做成异步任务,是不想让他们影响主体流程。大家可以想象一下,如果是同步的,那我们上传文件时,点了按钮之后,要等很长时间才能有反馈,甚至失败之后会报错,这个体验是很差的。

做成异步任务之后,文件存储完就会提示用户成功了,即使后面的分割和向量化失败了,比如OpenAI接口挂了等,我们也可以在后台重试,不影响用户体验。

内容不可见,请联系管理员开通权限。

4、删除数据后删除对应向量

内容不可见,请联系管理员开通权限。

到目前为止,后台的知识库管理的功能,才算完整的做完了。相信到这,大家应该对文档转向量的过程,都有了比较全面的认识。下节课,我们就正式开始做前端的,基于知识库问答的功能。

本文链接:http://edu.ichenhua.cn/edu/note/765

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!