1.例子:

    https://blog.csdn.net/z564359805/article/details/83474387

def get_embedding(bc,query_list,batch_size = 128,seq_length = 25,embedding_size = 768):
query_embedding = np.zeros((len(query_list), seq_length, embedding_size))
num_data = len(query_list)
num_batches_per_epoch = int((len(query_list) - 1) / batch_size) + 1
for batch_num in range(num_batches_per_epoch):
start_index = batch_num * batch_size
end_index = min((batch_num + 1) * batch_size, num_data)
query_embedding[start_index:end_index] = bc.encode(query_list[start_index:end_index])
return query_embedding def create_app(self):
app = Flask(__name__) @app.route('/query/', methods=['POST', 'GET'])
def inference():
try:
#用get方式传入,url带?的传参方式,如果传入多个参数,用逗号分割
if request.method == "GET":
query = request.args.to_dict()
query_list = []
for v in query.values():
query_list.extend(v.split(','))
#用post方式传入,用curl命令传参.
else:
query = request.get_data()
json_query = json.loads(query.decode("utf-8"))
query_list = json_query['query']
#传入的文本通过get_embedding 方式获取batch_size个bert embedding
batch_size = 128
query_embedding = get_embedding(self.bert_client, query_list, batch_size)
#训练的模型预测方法scorer.predict,inference获取query的分数.
scores = scorer.predict(query_embedding)
#用json方式打印分数
res = json.dumps(zip(query_list, map(lambda x: str(x[0]), scores))).decode('unicode_escape')
return str(res)
except Exception as ex:
print(ex)
return "please use post or get request to retry"
return app def run(self):
app = self.create_app()
app.run(port=self.port, host=self.host, threaded=True)

测试时:

get方式:

比如port = 127.0.0.1,host = 5000

输入网址: http://127.0.0.1:5000/queryr/?query=汶川大地震,gpu,为什么

输出:[["汶川大地震", "0.21342309"], ["gpu", "0.37715292"], ["为什么", "0.11760186"]]

post方式:

  在命令行中输入:

curl -X POST -H "Content-Type: application/json" \
 -d '{"query":["2019年黑龙江公务员培训辅导课程",
 "明星祛斑方法:15天快速祛斑,不手术不花冤枉钱,超管用!",
 "祛斑只需用这1个方法,每天5分钟,快速祛斑,超管用",
 "{地域}48岁大叔讲述追涨停技巧,方法仅如此简单,股市堪比印钞机。"]}' \
http://127.0.0.1:5000/query/

  在命令行会打印出:[query:分数]

flask例子的更多相关文章

  1. 无用之flask学习

    一.认识flask 1.短小精悍.可扩展性强 的一个web框架 注意:上下文管理机制 2.依赖wsgi:werkzurg from werkzeug.wrappers import Request, ...

  2. 例子: 自制Flask首页导航.

    # -*- coding:utf-8 -*- ''' Created on 2015年10月19日 ''' from flask import Flask, render_template impor ...

  3. Flask---第一个例子--使用Flask写的【Hello World !】的web程序

    from flask import Flask;------->引入Flask插件,pip install Flask; app=Flask(__name__) #变量app是Flask的一个实 ...

  4. python 全栈开发,Day119(Flask初识,Render Redirect HttpResponse,request,模板语言 Jinja2,用户登录例子,内置Session)

    一.Flask初识 首先,要看你学没学过Django 如果学过Django 的同学,请从头看到尾,如果没有学过Django的同学,并且不想学习Django的同学,轻饶过第一部分 三大主流Web框架对比 ...

  5. windows下测试flask的例子tuorial报错flask KeyError: 'DATABASE'

    windows下测试flask的例子tuorial报错flask KeyError: 'DATABASE' flask KeyError: 'DATABASE' 提示是 变量 database错误 由 ...

  6. flask的第一个例子

    对django有了一些基础了解,现在看看flask,然后如果有时间可以看看 web.py 那么咱们开始flask的第一个例子 先安装flask pip install flask 看官方的教程 我也把 ...

  7. Flask最强攻略 - 跟DragonFire学Flask - 第五篇 做一个用户登录之后查看学员信息的小例子

    需求: 1. 用户名: oldboy 密码: oldboy123 2. 用户登录成功之后跳转到列表页面 3. 失败有消息提示,重新登录 4.点击学生名称之后,可以看到学生的详细信息 后端: from ...

  8. flask登录注册简单的例子

    1.主程序 # app.py # Auther: hhh5460 # Time: 2018/10/05 # Address: DongGuan YueHua from functools import ...

  9. flask第二十九篇——一个例子+【更新内容通知】

    请关注公众号:自动化测试实战 大家先自己写一下,船长写这个花了半个小时,因为我和大家一样,也是新手: 写一个页面如下,点击书名以后跳转到书的详情页 书的信息如下: books = [ { 'id': ...

随机推荐

  1. 书.Windows网络与通信程序设计

    1.PDF&源码 保存到了 我的网盘fivez79513-->"PDF&源码" 目录中 “Windows网络与通信程序设计(第2版) 完整带书签PDF+源码. ...

  2. 性能优化-Bitmap内存管理及优化

    Bitmap作为重要Android应用之一,在很多时候如果应用不当,很容易造成内存溢出,那么这篇文章的目的就在于探讨Bitmap的有效运用及其优化 缓存介绍 当多次发送请求的时候,请求同一内容,为了使 ...

  3. table列表全选

    <table><tr><td><input type="checkbox" /></td><td></ ...

  4. 最新 网易java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易.京东.去哪儿等10家互联网公司的校招Offer,因为某些自身原因最终选择了网易.6.7月主要是做系统复习.项目复盘.LeetCode与牛客刷题 ...

  5. spring boot 单选按钮

    jsp代码 性别: <form:radiobutton path="xb" value="男"/>男 <form:radiobutton pa ...

  6. UIPath工具来取得邮件里面的添付文件及邮件内容

    下图是得到Outlook邮件附件的示意图 下面的图是对UIPath的属性的设定.最重要的是两个文件夹要保持一致.

  7. talend工具通过关键字来取得text文本中的数据

    问题描述: 在文件夹中有多个text文本,通过关键字来取得text文本里面我所需要的数据,并出力到Excel里面.取得的数据,在text文本里面可能是多行的存在,并且在Excel里面是一行的存在. 解 ...

  8. 如何使用Curator监听zookeeper事件变化

    掌握zookeeper事件监听机制,非常重要,可以说是跨入了进阶的门槛,只有掌握了如何监听某个节点或路径,我们才能在节点变化后,做一些我们想做的事,包括: 1,配置文件同步 2,主从切换 3,分布式队 ...

  9. (一)HTTP协议的一些知识点(来自那些年的笔记)

    目录 http协议1.0.1.1两个版本的区别 访问几次服务器? Http请求行和请求方式详解 可以在超链接上传一些数据 HTTP请求头各个头字段的详解 HTTP响应和响应行状态详解 断点下载 HTT ...

  10. golang之面向对象编程

    1.Golang语言面向对象编程说明 1)Golang也支持面向对象编程(OOP),但是和传统的面向对象编程有区别,并不是纯粹的面向对象语言.所以我们说Golang支持面向对象编程特性是比较准确的. ...