123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import Query
- import BertEmbedding
- import gradio as gr
- def queryVideoInfoByTitle(title):
- if title is None or len(title) == 0:
- return '查询失败'
- results = Query.queryCollection(BertEmbedding.text_to_vector(title))
- if results is None or len(results) == 0:
- return '未找到结果'
- videoInfos = []
- videoInfos.append(
- '标题\t曝光人数\t曝光次数\t播放人数\t播放次数\t分享人数\t分享次数\t回流人数\t回流次数\t相似度得分\n')
- distances = results[0].distances
- for i in range(len(results[0])):
- hit = results[0][i]
- distance = distances[i]
- videoInfo = hit.entity
- title = videoInfo.get('title')
- preview_users = videoInfo.get('preview_users')
- preview_times = videoInfo.get('preview_times')
- view_users = videoInfo.get('view_users')
- view_times = videoInfo.get('view_times')
- play_users = videoInfo.get('play_users')
- play_times = videoInfo.get('play_times')
- share_users = videoInfo.get('share_users')
- share_times = videoInfo.get('share_times')
- return_users = videoInfo.get('return_users')
- return_times = videoInfo.get('return_times')
- str = f"{title}\t{preview_users}\t{preview_times}\t{view_users}\t{view_times}\t{play_users}\t{play_times}\t{share_users}\t{share_times}\t{return_users}\t{return_times}\t{distance}\n"
- videoInfos.append(str)
- videoInfos.append(
- f'{title}\t{preview_users}\t{preview_times}\t{view_users}\t{view_times}\t{play_users}\t{play_times}\t{share_users}\t{share_times}\t{return_users}\t{return_times}\t{distance}\n')
- return '\n'.join(videoInfos)
- iface = gr.Interface(fn=queryVideoInfoByTitle,
- inputs=gr.components.Textbox(
- lines=7, label="请输入文本内容"),
- outputs="text",
- title="视频内容向量检索,相似度匹配")
- iface.launch(share=False)
|