使用gradio生成检索机器人界面
可以使用gradio生成一个简单的检索机器人界面,当用户输入问题后经过检索后将最接近的3个选项的标题及内容显示出来。
其效果类似如下:

将相应的模型加载进来后,接收到用户输入的问题后将其进行嵌入并向量化后,经过召回和重排序后直接显示:

相应数据集来自百度知道,可以访问进行下载。
其相应界面代码如下:
import gradio as gr
def process_fn(question):
...
response = ["1111","22222","","3333","4444","","5555","6666"]
return response
demo = gr.Interface(
process_fn,
inputs=gr.Textbox(label="问题"),
outputs=[
gr.Textbox(label="问题"),gr.Textbox(label="回复",lines=3,max_lines=3),
gr.HTML("""<div style="width: 60px"></div>"""),
gr.Textbox(label="问题"),gr.Textbox(label="回复",lines=3,max_lines=3),
gr.HTML("""<div style="width: 60px"></div>"""),
gr.Textbox(label="问题"),gr.Textbox(label="回复",lines=3,max_lines=3)
])
demo.launch()
由于gradio输出没有相应组合的组件,因此直接用6个文本框和2个空行进行分隔开来。