文章目录

  • 整体思路
  • 逐步构建
  • 完整代码
  • 参考文章

整体思路

  1. 使用轻量级的后端框架flask运行要加载的模型,作为后端,保持在后端运行
  2. 调用程序时直接使用url访问即可

需要用到的依赖包:

pip install flask

逐步构建

首先新建一个文件运行flask的文件,文件名随便:

from flask import Flask, requestapp = Flask(__name__)@app.route('/model', methods=['GET'])
def get_model():if request.method == 'GET':param = request.args.get("input", None)"""调用模型处理""" # 这里直接把传入的输出,可以在这里加入调用模型的逻辑return paramif __name__ == '__main__':app.run(host='127.0.0.1', debug=True, port='8999') # debug模式运行,如果不想看日志可以使debug=False

在本地浏览器中运行:http://127.0.0.1:8999/model?input="aaa",可以看到输出:

"aaa"

保持这个程序全程一直运行即可。

再次新建一个文件,用于调用这个接口:

import json
import requestsdef use_flask(analyze_input) -> json:  # 传入待分析的文本,与tokenurl = "http://127.0.0.1:8999/model" # 这里是访问的urlrequest = requests.get(url, params={'input': analyze_input # 这里传入})if request.status_code == 200:return request.textif __name__ == '__main__':data = use_flask("my_input_value")print(data)

当我们调试主程序时,不论运行多少次这个文件,都不会影响到flask的后端程序,因此可以方便我们多次快速调试。

如果有多个参数,可以在requests.get(url, params)这里添加

完整代码

Flask文件:

from flask import Flask, requestapp = Flask(__name__)@app.route('/model', methods=['GET'])
def get_model():if request.method == 'GET':param = request.args.get("input", None)"""调用模型处理"""return paramif __name__ == '__main__':app.run(host='127.0.0.1', debug=True, port='8999')

使用示例:

import json
import requestsdef use_flask(analyze_input) -> json:  # 传入待分析的文本,与tokenurl = "http://127.0.0.1:8999/model"request = requests.get(url, params={'input': analyze_input})if request.status_code == 200:return request.textif __name__ == '__main__':data = use_flask("my_input_value")print(data)

参考文章

  • Flask 快速上手:https://dormousehole.readthedocs.io/en/latest/quickstart.html#id2

  • GET and POST requests using Python:https://www.geeksforgeeks.org/get-post-requests-using-python/

  • Add params to given URL in Python:https://stackoverflow.com/questions/2506379/add-params-to-given-url-in-python

配置python程序debug/run,避免每次运行都会重复加载数据集或模型,节约大量等待时间相关推荐

  1. 使用flask调用接口去加载模型和数据集,避免每次运行都会重复加载数据集或模型,节约大量等待时间

    配置python程序debug/run,避免每次运行都会重复加载数据集或模型,节约大量等待时间 使用轻量级的后端框架flask运行要加载的模型,作为后端,保持在后端运行 调用程序时直接使用url访问即 ...

  2. 解决python调试模型时,多次重复加载数据集与模型,节约大量等待时间

    思路/流程请参考:配置python程序debug/run,避免每次运行都会重复加载数据集或模型,节约大量等待时间 整体思路 使用轻量级的后端框架flask运行要加载的模型,作为后端,保持在后端运行 调 ...

  3. python编写的程序可以在任何平台中执行-在Windows平台上编写的Python程序无法在Unix平台运行。...

    [单选题]在中华人民共和国境内飞行的民用航空器必须具有: ( ) [单选题]属于发热激活物的是: [单选题]年满( )周岁可以独立实施民事法律行为视为完全民事行为能力人 [单选题]在DIC的原发病中, ...

  4. python程序只能使用源代码进行运行、不能打包_中国大学MOOC计算机程序设计语言(Python)网课答案...

    中国大学MOOC计算机程序设计语言(Python)网课答案 表达式[3] in [1, 2, 3, 4]的值为________________. python 3.x语句 print(1, 2, 3, ...

  5. python只能运行在windows平台上吗_在Windows平台上编写的Python程序无法在Unix平台运行。...

    问题:在Windows平台上编写的Python程序无法在Unix平台运行. 更多相关问题 Because plants cannot move or talk, most people believe ...

  6. python可以在多种平台运行、体现了_在Windows平台上编写的Python程序无法在Unix平台运行。...

    问题:在Windows平台上编写的Python程序无法在Unix平台运行. 更多相关问题 某船公司2003年2月,建造了两艘航行于武汉-南京的2000吨油船,双壳结构形式,至今使用良好,为公司创 肾病 ...

  7. windows平台上编写的python无法在unix_【判断题】在Windows平台上编写的Python程序无法在Unix平台运行...

    [判断题]在Windows平台上编写的Python程序无法在Unix平台运行 更多相关问题 分别将下列物质滴入苯酚溶液中,产生白色沉淀的是A.浓溴水B.氢氧化钠溶液C.稀盐酸D.氯化铁溶液 有机物分子 ...

  8. Android Studio 每次运行都会再下载一遍

    Android Studio 每次运行都会再下载一遍 as小白,仅个人保存,亲测有效! https://www.cnblogs.com/hoge66/p/9773265.html

  9. python程序只能使用源代码进行运行吗-谈谈 Python 程序的运行原理

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,谈谈 Python 程序的运行原理 这篇文章准确说是『Python 源码剖析』的 ...

最新文章

  1. 如何将char类型数据转化给int
  2. oracle+内存错误,oracle使用内存的错误,ORA-27102: out of memory
  3. 眼前一亮的UI设计案例|插画世界里的网页首图
  4. Bugku-Web-Cookies欺骗
  5. 【渝粤教育】国家开放大学2018年春季 8616-22T食品营养卫生 参考试题
  6. readyread信号不触发_什么是示波器的触发,意外发现!
  7. adb工具下载及配置使用
  8. Android音视频——H.264帧码流(SODB、RBSP、EBSP)浅析
  9. 佳博LabelShop模板文件转成佳博打印机指令软件
  10. 机器学习:模型评估与选择:性能度量——代价敏感错误率与代价曲线
  11. java植物大战僵尸,我家ADC直呼内行,甚至喊出辅助牛逼、666
  12. 巨头特斯拉的进击之路
  13. 如何获取微信小程序页面路径
  14. understand中几个重要的工具
  15. 在vue里面使用eval()函数
  16. Leetcode 858. 镜面反射 Python解法
  17. C语言基础教学——认识C语言(第一课)
  18. 解决No module named numpy问题
  19. 研发、开发和制造的概念和关系
  20. SpringBoot整合最新Elasticsearch Java API Client 7.16教程

热门文章

  1. 如何查询Linux内核版本
  2. 《程序员面试宝典》精华 编程语言部分
  3. 虚幻4属性系统(反射)翻译
  4. CryEngine新引擎正式开放源代码,但仅限开发游戏
  5. UE4 在游戏中使用Slate
  6. Docker(三)关于docker 的应用场景
  7. layDate1.0正式公布,您一直在寻找的的js日期控件
  8. 杭电 2015 偶数求和
  9. Android Studio 2.2:新布局、Firebase、OpenJDK以及Java 8
  10. 天天动听 半透明Menu效果