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

配置python程序debug/run,避免每次运行都会重复加载数据集或模型,节约大量等待时间
使用轻量级的后端框架flask运行要加载的模型,作为后端,保持在后端运行
调用程序时直接使用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)

参考链接:https://blog.csdn.net/weixin_35757704/article/details/122923201

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478312.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 295. 数据流的中位数(大小堆)

文章目录1. 题目2. 大小堆解题1. 题目 中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 3) / 2 2.5设计一个支持以下两种操作的数据结构:void addNum(int…

论文浅尝 | 利用常识知识图谱进行多跳推理的语言生成方法

笔记整理 | 朱珈徵,天津大学硕士。链接:https://arxiv.org/pdf/2009.11692.pdf动机尽管生成式预训练语言模型在一系列文本生成任务上取得了成功,但在生成过程中需要对基础常识知识进行推理的情况下,它们仍然会受到影响。现有的方法…

成本砍砍砍!不用数据也能用 BERT 做对比学习?

文 | 小昌编 | 小戏大家好,我是小昌,今天和大家聊一聊如何从 BERT 中获取好的句子表征。大家都知道,BERT 的设计初衷是为了获得更好的单词表征。但是,利用 BERT 来表征句子的需求无论在学术界还是工业界都是非常紧迫的。因此&…

Mt-Falcon——Open-Falcon在美团点评的应用与实践

监控系统是整个业务系统中至关重要的一环,它就像眼睛一样,时刻监测机房、网络、服务器、应用等运行情况,并且在出现问题时能够及时做出相应处理。 美团点评刚开始使用的是Zabbix监控系统,几经优化,在当时能够达到2W机器…

paddlenlp 任务清单 中文分词、中文纠错、文本相似度、情感分析、词性标注等一键

PaddleNLP Taskflow https://github.com/PaddlePaddle/PaddleNLP/blob/develop/docs/model_zoo/taskflow.md#paddlenlp-taskflow PaddleNLP Taskflow PaddleNLP Taskflow 介绍 任务清单 用法 查看使用示例中文分词词性标注命名实体识别文本纠错句法分析情感分析文本相似度『解…

论文浅尝 | 以知识图谱为基础的开放域对话生成的目标规划

笔记整理 | 韩振峰,天津大学硕士。链接:https://ojs.aaai.org//index.php/AAAI/article/view/6474动机 之前有关开放域对话生成的神经模型没有有效的机制来管理聊天主题,并且往往会生成不连贯的对话。受到人与人对话策略的启发,本…

LeetCode 378. 有序矩阵中第K小的元素(二分查找)

文章目录1. 题目2. 解题2.1 暴力法2.2 二分查找1. 题目 给定一个 n x n 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第k小的元素。 请注意,它是排序后的第k小元素,而不是第k个元素。 示例: matrix [[ 1, 5, 9],[10, 11,…

LeetCode 341. 扁平化嵌套列表迭代器(双栈)

文章目录1. 题目2. 双栈解题1. 题目 给定一个嵌套的整型列表。设计一个迭代器,使其能够遍历这个整型列表中的所有整数。 列表中的项或者为一个整数,或者是另一个列表。 示例 1: 输入: [[1,1],2,[1,1]] 输出: [1,1,2,1,1] 解释: 通过重复调用 next 直到…

外卖O2O的用户画像实践

美团外卖经过3年的飞速发展,品类已经从单一的外卖扩展到了美食、夜宵、鲜花、商超等多个品类。用户群体也从早期的学生为主扩展到学生、白领、社区以及商旅,甚至包括在KTV等娱乐场所消费的人群。随着供给和消费人群的多样化,如何在供给和用户…

simbert文本相似度,短文本语义匹配模型

simbert文本相似语义召回;保存及在线服务https://blog.csdn.net/weixin_42357472/article/details/116205077 SimBERT(基于UniLM思想、融检索与生成于一体的BERT模型)【主要应用场景:相似文本生成、相似文本检索】 https://blog.…

论文浅尝 | 利用开放域触发器知识改进事件检测

笔记整理 | 申时荣,东南大学博士来源:ACL 2020源码:https://github.com/shuaiwa16/ekd.git摘要事件检测(ED)是文本自动结构化处理的一项基本任务。由于训练数据的规模小,以前的方法在unseen/标记稀疏的触发…

Beyond 预训练语言模型,NLP还需要什么样的知识?

近年来,深度学习技术已广泛应用于NLP领域,但实际应用效果往往受限于缺乏大规模高质量监督样本。2018年底,预训练语言模型横空出世,极大缓解了这个问题,通过“超大规模无监督语料上的预训练语言模型相对少量的监督样本进…

日志级别动态调整——小工具解决大问题

随着外卖业务的快速发展,业务复杂度不断增加,线上系统环境有任何细小波动,对整个外卖业务都可能产生巨大的影响,甚至形成灾难性的雪崩效应,造成巨大的经济损失。每一次客诉、系统抖动等都是对技术人员的重大考验&#…

LeetCode 324. 摆动排序 II

文章目录1. 题目2. 解题1. 题目 给定一个无序的数组 nums&#xff0c;将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]… 的顺序。 示例 1: 输入: nums [1, 5, 1, 1, 6, 4] 输出: 一个可能的答案是 [1, 4, 1, 5, 1, 6] 示例 2: 输入: nums [1, 3, 2, 2, 3,…

最全的Pycharm debug技巧

最全的Pycharm debug技巧&#xff1a; 工欲善其事&#xff0c;必先利其器。无论你的 IDE 是 IntelliJ IDEA、Pycharm、WebStorm、GoLang、还是PhpStorm &#xff0c;调试器都是标配。在遇到有问题的程序时&#xff0c;合理的利用调试器的跟踪和断点技巧&#xff0c;可以很快的…

OpenKG祝大家端午安康

—????????OpenKG祝大家端午安康????????—

两个月,刷了八千篇Arxiv,我发现……

文 | 白鹡鸰编 | 小轶从五月初到现在&#xff0c;大约刷了八千篇Arxiv之后&#xff0c;我发现我有毛病。当然&#xff0c;这是读论文上头时的牢骚&#xff0c;不是真心话&#xff0c;只是说&#xff0c;我在Arxiv上投入的精力的努力&#xff0c;与我预计的收获不成正比。故事的…

深度学习在美团的应用

近年来&#xff0c;深度学习在语音、图像、自然语言处理等领域取得非常突出的成果&#xff0c;成了最引人注目的技术热点之一。美团这两年在深度学习方面也进行了一些探索&#xff0c;其中在自然语言处理领域&#xff0c;我们将深度学习技术应用于文本分析、语义匹配、搜索引擎…

LeetCode 315. 计算右侧小于当前元素的个数(二叉查找树二分查找归并排序逆序数总结)

文章目录1. 题目2. 解题2.1 二叉查找树2.2 二分插入2.3 归并排序1. 题目 给定一个整数数组 nums&#xff0c;按要求返回一个新数组 counts。数组 counts 有该性质&#xff1a; counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。 示例: 输入: [5,2,6,1] 输出: [2,1,1…

Python实现共现语义网络

Python实现共现语义网络&#xff1a;