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

如何提高知识库问题的命中精准度?在实际业务场景中,用户在发送了一些类似的问法,但并没有拿到想要的答案,反而是发送了其它问题的答案。 #93

Open
kely33 opened this issue Jun 14, 2023 · 10 comments
Assignees
Labels
help wanted Extra attention is needed

Comments

@kely33
Copy link

kely33 commented Jun 14, 2023

以上的情况,我们的机器人可以如何设置,才能避免出现这种问题呢?

@hailiang-wang hailiang-wang added the help wanted Extra attention is needed label Jun 14, 2023
@hailiang-wang
Copy link
Member

知识库优化需要上线后持续优化,主要是设置一个比较高的最佳回复阈值,比如 0.9。

然后,

1)使用聚类分析,比如每周一次,查看兜底回复和错误回复,补充到知识库问答对。

@kely33
Copy link
Author

kely33 commented Jun 14, 2023

那么如何能定位到用户提的问题是机器人进行了兜底回复的呢,我看到聚类分析的文本文件没有看到机器人进行兜底回复的数据

@kely33
Copy link
Author

kely33 commented Jun 14, 2023

还有一个问题就是我设置的建议回复阈值是0.5,但是机器人建议回复的问题的阈值score并没有达到0.5,给用户发送的这两个问题得到的阈值分别是0.4和0.25,这是什么原因?
image

@kely33
Copy link
Author

kely33 commented Jun 14, 2023

image

@hailiang-wang
Copy link
Member

那么如何能定位到用户提的问题是机器人进行了兜底回复的呢,我看到聚类分析的文本文件没有看到机器人进行兜底回复的数据

首先,在聚类结果中,检查是否有这个文件:fallbacks.tsv.clust.txt;
该文件是兜底回复对应的用户的问题。

https://docs.chatopera.com/products/chatbot-platform/howto-guides/chats/lattice.html

screenshot_20230614171607

其次,您可以使用机器人控制台-对话历史,浏览对话历史,这个工具效率比较低,如果每天产生的数据量不大,也是可行的。

screenshot_20230614171158

快速获得兜底回复的对话的用户发送的文本,这个部分,之后我们会继续优化,您有什么好的想法欢迎反馈,感谢。

@kely33
Copy link
Author

kely33 commented Jun 14, 2023

image
并没有出现fallbacks.tsv.clust.rtext文件

@kely33
Copy link
Author

kely33 commented Jun 14, 2023

还有这里是否存在建议回复阈值bug的问题呢?

还有一个问题就是我设置的建议回复阈值是0.5,但是机器人建议回复的问题的阈值score并没有达到0.5,给用户发送的这两个问题得到的阈值分别是0.4和0.25,这是什么原因? image

@hailiang-wang
Copy link
Member

您是在春松客服里用吧?
在机器人平台的设置的阈值是默认的,但是春松客服里,也有环境变量控制,并且春松客服从接口传的值,优先级高。

参考文档:https://docs.cskefu.com/docs/work-chatbot/install

找到:

BOT_PROVIDER                 # Chatopera 机器人平台地址,支持私有部署,默认为 Chatopera 云服务 https://bot.chatopera.com
BOT_THRESHOLD_FAQ_BEST_REPLY # 最佳回复阀值
BOT_THRESHOLD_FAQ_SUGG_REPLY # 建议回复阀值

的部分。

@kely33
Copy link
Author

kely33 commented Jun 15, 2023

image

是的,在用的是春松客服开源环境部署的,没有进行过环境变量的修改,都为默认值,我看到这里的建议回复阈值的默认值也是0.6,那为啥低于0.6的问题也会发送给用户呢

@hailiang-wang
Copy link
Member

有两个可能:1)是 Chatopera 云服务有这个问题 BUG;2)是传递的参数,是比 0.6 低的。

为了明确是什么问题,您帮忙做一下,打印一下日志:

1)查看传入的阈值

https://github.com/cskefu/cskefu/blob/9454a4c9fd46f8d165f60f5d4f29f705dab66d40/contact-center/app/src/main/java/com/cskefu/cc/plugins/chatbot/ChatbotEventSubscription.java#L119

2)返回值,知识库的 score 到底是什么

https://github.com/cskefu/cskefu/blob/9454a4c9fd46f8d165f60f5d4f29f705dab66d40/contact-center/app/src/main/java/com/cskefu/cc/plugins/chatbot/ChatbotEventSubscription.java#L235

以上两处,使用 logger.info 或 断点调试,可以看看值是否正确。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants