add search demo.

This commit is contained in:
shibing624 2022-03-24 17:55:07 +08:00
parent e787cac24d
commit 24360ab0dd
4 changed files with 4817 additions and 0 deletions

4667
examples/data/corpus.txt Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,100 @@
有人在煎肉。
在伊拉克的暴力袭击中有41人死亡22人受伤
莫斯科反普京抗议者形成人链
黑白相间的狗在河里游泳。
一男一女在宝莱坞跳舞。
坐在婴儿床上的婴儿,伸手去摸一个大男孩的脸。
聋子顾客告星巴克,说他们被嘲笑了
曼谷警方向抗议者发射催泪瓦斯
中国外交部发言人姜瑜表示,网络黑客是一个全球性问题。
科学家们认为,星尘捕获了数千颗尘埃。
吉尔罗伊警方和联邦调查局特工称Gehring很合作但周六表示他没有透露孩子们发生了什么事。
“我真的很喜欢他,现在也是,”科恩·阿隆昨天告诉“先驱报”。
范表示,该委员会主要关注的是未来在台湾投资的期限。
一只小猴子抓它自己。
7人死于基督教学校枪击案
英国坎特伯雷大主教转行剑桥
猴子拉狗的尾巴。
那人用棍子打了另一个人。
约旦当选为联合国安理会成员
滑板运动员试图在低矮的墙边玩一个把戏。
西班牙失业率创新高
周一,一家分裂的最高法院裁定,国会可以强制国家公共图书馆为电脑配备反色情过滤器。
格拉斯哥直升机死亡人数上升到9人
一个女人和一条狗站在草地上。
一只棕色的狗正把爪子放在笔记本电脑的键盘上。
发言人说:“自十一月起,我们已与警方通力合作。
台风菲托登陆中国东部
埃及对西奈武装分子发动进攻
持枪歹徒在巴基斯坦杀害11名外国游客
丹尼尔斯说在今晚的每人2000美元的总统筹款活动上他不知道布什会对他说些什么。
从窗户射出的阳光下的盆栽植物。
北约士兵在阿富汗袭击中丧生
一个穿着红色夹克的男人拿着他的自行车拍照。
旋风在印度留下毁灭的痕迹。
两条狗在草地上奔跑。
一个人弹钢琴。
那只黑狗躺在草地上。
巴西世界杯五颜六色的支持
Key说marae错过了一次机会
“聪明但胡思乱想”变成了“药物治疗”。
一个男人正死在手术室里。
意大利新政府达成协议
两只大狗在草地上奔跑。
曼德拉的病情已经“好转”了。
顺便说一句,他当时有适当的延期。
劳工部分析师认为,来自企业调查的工资统计数据提供了更准确的经济图景,因为调查数据基于更大的样本。
一只狗在车里。
一个年轻的女孩骑着一匹棕色的马。
所以回答问题。
獾在挖洞。
一个男人和一只狗在打拔河。
韩国驱逐老年美国人
一个人在切东西。
一只绿眼睛的灰猫看着相机。
一些女性还担心,很多女性为了追求身体的完美而转向整容手术。
思科高管表示他们对13亿美元的现金流和净利润的增加感到鼓舞但希望能出现反弹。
猫躺在地毯上的黑白图像。
美国股市下跌,希腊谈木材;苹果下跌
当不知情的计算机用户打开包含“谢谢”、“ReDetails”或“ReThat Movie”等常见标题的电子邮件中的文件附件时Sobig.F会传播。
可能是很多事情。
一个骑马的人骑着一匹白马。
该公司通过新的大型机将.NET和J2EE支持添加到其企业应用程序环境(EnterpriseApplicationEnvironmentEAE)中。
乡村音乐电台KKCS暂停了两名播放迪克西小鸡歌曲的音乐主持人的职务这违反了一名乐队成员批评布什总统后实施的禁令。
施洗约翰从出生时就是拿撒勒人。
Det总督察NormanMcKinlay说“有证据表明在这一地区有一具或多具尸体”。
俄罗斯人离开叙利亚进入黎巴嫩
一组背景中有树木的驳船。
一个女人和两个戴着帽子的男人在外面社交。
伊朗表示核谈判仍存在严重问题
澳大利亚电视台记者彼得·劳埃德在新加坡面临3项新的药物指控。
以色列批准在和谈前释放第一批巴勒斯坦囚犯
在南卡罗来纳州海滨汽车旅馆枪击事件中3人死亡1人受伤
中国煤矿事故10人死亡
中国对台风卡尔梅吉高度戒备
在海浪上骑着冲浪板的人。
袋鼠在吃东西。
我们都相信我们正在得到我们所期望的。
红色双层巴士载客。
CCAG支持罗兰德在2002年州长选举中的对手比尔·库里(Bill Curry)。
如果你想买十亿美元的XYZ公司。普通股谁在乎呢
虽然非洲其他一些地区被用作恐怖组织的集结地,但马拉维以前并不是对基地组织进行调查的主要重点。
人们聚集在伯利恒过圣诞节。
两个人在打架。
1月至6月该消费集团创造了44.7亿美元的利润和200亿美元的收入占花旗集团利润和收入的53%。
上周,该公司的法律代表开始与原告的律师会面,讨论一项和解协议。
俄罗斯经济增长乏力,普京宣誓就职
一张白色和紫色摩托车的特写照片。
结果24名球员在第一轮比赛中超过了标准杆。
巴拿马外交部公报说,该工作组将促进技术转让,促进生物燃料的生产和消费。
肉被扔进平底锅里。
食品价格上涨引起伊朗的担忧
里德列举了债务上限谈判取得的“巨大进展”。
一只棕色的狗在水中涉水。
2名巴勒斯坦人在以色列空袭中丧生
科罗拉多枪击案嫌疑人接受了精神病医生的治疗
松散的变化始于一部虚构的作品。
雅虎同意以11亿美元现金收购Tumblr
爱沙尼亚官员表示,导致爱沙尼亚政府网站暂时关闭的一些网络攻击来自俄罗斯政府的计算机,包括俄罗斯总统弗拉基米尔·普京(Vladimir Putin)的办公室。
一个男人在弹吉他和唱歌。
克里夫兰骑士赢得了选秀詹姆斯的权利,赢得了周四晚上的年度彩票。

View File

@ -0,0 +1,50 @@
# -*- coding: utf-8 -*-
"""
@author:XuMing(xuming624@qq.com)
@description: pip install gradio
"""
import gradio as gr
from similarities import Similarity
sim_model = Similarity()
def load_file(path):
with open(path, 'r', encoding='utf-8') as f:
return f.read().split('\n')
sim_model.add_corpus(load_file('data/corpus_100.txt'))
def ai_text(query):
res = sim_model.most_similar(queries=query, topn=5)
print(res)
for q_id, c in res.items():
print('query:', query)
print("search top 5:")
for corpus_id, s in c.items():
print(f'\t{sim_model.corpus[corpus_id]}: {s:.4f}')
res_show = '\n'.join(['search top5'] + [f'text: {sim_model.corpus[corpus_id]} score: {s:.4f}' for corpus_id, s in
list(res.values())[0].items()])
return res_show
if __name__ == '__main__':
examples = [
['星巴克被嘲笑了'],
['西班牙失业率超过50%'],
['她在看书'],
['一个人弹琴'],
]
input = gr.inputs.Textbox(lines=2, placeholder="Enter Query")
output_text = gr.outputs.Textbox()
gr.Interface(ai_text,
inputs=[input],
outputs=[output_text],
# theme="grass",
title="Chinese Text Semantic Search Model",
description="Copy or input Chinese text here. Submit and the machine will find the most similarity texts.",
article="Link to <a href='https://github.com/shibing624/similarities' style='color:blue;' target='_blank\'>Github REPO</a>",
examples=examples
).launch()