问答系统是信息检索系统的一种高级形式,它能用准确、简洁的自然语言回答用户提出的问题,问答系统广泛应用于搜索引擎、智能设备、智能客服等产品中。
    政务问答机器人 - 图1
    图:问答系统应用示例
    “开户籍证明要找谁?”、“银行服务费、刷卡手续费有收费标准吗?”、“企业税费优惠如何享受”…在智慧政务业务中,政务问答系统能够24小时响应群众、企业关于日常事务办理、民生政策、企业经营法规等咨询,大力提升了信息获取的便利性。
    政务问答机器人 - 图2
    图:政务问答系统示例
    以某地方政务网站的问答系统为例,该网站积累了大量疫情相关的标准问答对(Q-A pair),希望搭建智能问答机器人,这是一个典型的FAQ问答场景:当接收到用户的咨询问题后,系统会检索语料库中的相似问题,并返回相应问题的答案。难点在于:

    • 数据:仅有Q-A pair数据,无相似问题标注数据;
    • 模型:传统基于字面的匹配技术仅能捕捉字面上的相关性,无法准确理解语义信息,急需精准的语义匹配方案;
    • 部署:随着Q-A积累量和用户访问量越来越大,如何应对千万级语料库的并发检索,实现毫秒级快速响应,是保障用户体验的关键。

    百度飞桨自然语言处理模型库PaddleNLP近期开源的FAQ问答系统,提出了针对无监督数据的端到端检索式问答系统方案,无需标注数据也能够轻松构建起检索系统,并且提供训练、预测、最近邻搜索一站式能力。
    政务问答机器人 - 图3

    • 精度高:国际领先的检索式问答预训练模型RocketQA基础上,进一步采用无监督 SimCSE 和 Word Repetition(WR) 策略在业务数据上微调优化模型效果。

    政务问答机器人 - 图4
    RocketQA效果领先
    政务问答机器人 - 图5
    问答系统RocketQA+SimCSE+WR效果说明

    • 性能强:与开源向量数据库Milvus打通,结合百度飞桨原生推理库Paddle Inference,实现高性能建库,并在千万级数据中做到毫秒级快速查询。

    PaddleNLP是百度飞桨自然语言处理模型库,具备易用的文本领域API、丰富的预训练模型、多场景的应用示例、以及依托飞桨框架底层算子优化的高性能推理能力,旨在提升开发者在文本领域的开发效率。
    前往GitHub获取FAQ问答系统开源代码和模型:
    https://github.com/PaddlePaddle/PaddleNLP/tree/develop/applications/question_answering/faq_system/
    如果您想了解详细技术方案和完整代码,欢迎关注GitHub Repo,也可在直播中与百度高级工程师交流哦:
    PaddleNLP: https://github.com/PaddlePaddle/PaddleNLP
    RocketQA: https://github.com/PaddlePaddle/RocketQA