实用篇 | 利用Flask+Postman为深度学习模型进行快速测试(超详细)

利用Flask+Postman为深度学习模型进行快速测试,以及算法中的一些实例,以后会更新一些新的模板~~

#本文环境:服务器Ubuntu20.04(docker)

目录

1.下载postrman

2.编写flas的app文件

3.在postrman发送请求

4.实例

在服务器创建app.py文件

 在服务器运行app.py文件

 打开Win上的postman

输入刚运行提示的网址和端口​编辑

打开form-data,在Value出输入需要合成的文本

点击发送(Send)

参考文献


1.下载postrman

在win10上下载postrman

下载地址:Download Postman | Get Started for Free

下载后双击安装就可以啦~

2.编写flas的app文件

在服务器编写app.py文件

from flask import Flaskapp = Flask(__name__)@app.route("/")
def hello_world():return "<p>Hello, World!</p>"app.run(host='0.0.0.0', port=1180)
#默认端口号5000,如果运行api后出现404,可能是端口号被占用,改一下端口号就好啦~

运行后就就会出现

3.在postrman发送请求

依次点击New->Collections->

输入网址后,点击Send发送,如图

4.语音合成实例

在服务器创建app.py文件

# @ Date: 2023.12.04
# @ Elenaimport sys
from flask import Flask, request, jsonify,render_template
from flask.views import MethodView
from flask_cors import CORS
import argparse
import base64
import librosa
import numpy as np
import matplotlib.pyplot as plt
import io
import loggingimport soundfile
import torchfrom flask import Flask, request, send_file,jsonify
from flask_cors import CORS
from flask.views import MethodView
import commons
import utils
from data_utils import TextAudioLoader, TextAudioCollate, TextAudioSpeakerLoader, TextAudioSpeakerCollate
from models import SynthesizerTrn
from text.symbols import symbols
from text import text_to_sequence
import langdetectfrom scipy.io.wavfile import write
import re
from scipy import signal
import time
from inference import vcss# check device
if torch.cuda.is_available() is True:device = "cuda:0"
else:device = "cpu"def get_text(text, hps):text_norm = text_to_sequence(text, hps.data.text_cleaners)if hps.data.add_blank:text_norm = commons.intersperse(text_norm, 0)text_norm = torch.LongTensor(text_norm)return text_normapp = Flask(__name__)
#CORS(app, resources={r'/*': {"origins": '*'}})@app.route("/")
def index():return render_template('index.html')@app.route('/test', methods=['GET','POST'])
def test():#if request.method == 'POST':# 请求用户输入的合成文本 text = request.form["text"]print('text:', text)fltstr = re.sub(r"[\[\]\(\)\{\}]", "", text)stn_tst = get_text(fltstr, hps)speed = 1output_dir = 'output'sid = 0start_time=time.time()with torch.no_grad():x_tst = stn_tst.to(device).unsqueeze(0)x_tst_lengths = torch.LongTensor([stn_tst.size(0)]).to(device)audio = net_g.infer(x_tst, x_tst_lengths, noise_scale=.667, noise_scale_w=0.8, length_scale=1 / speed)[0][0, 0].data.cpu().float().numpy()output = write(f'./{output_dir}/out.wav', hps.data.sampling_rate, audio)out_path = "./output/out.wav"return send_file(out_path,mimetype="audio/wav", as_attachment=True,download_name="out.wav")#return jsonify({'Input Text':text})if __name__ == '__main__':path_to_config = "./config.json" path_to_model = "./G_179000.pth"hps = utils.get_hparams_from_file(path_to_config)if "use_mel_posterior_encoder" in hps.model.keys() and hps.model.use_mel_posterior_encoder == True:print("Using mel posterior encoder for VITS2")posterior_channels = 80  # vits2hps.data.use_mel_posterior_encoder = Trueelse:print("Using lin posterior encoder for VITS1")posterior_channels = hps.data.filter_length // 2 + 1hps.data.use_mel_posterior_encoder = Falsenet_g = SynthesizerTrn(len(symbols),posterior_channels,hps.train.segment_size // hps.data.hop_length,n_speakers=hps.data.n_speakers, #- >0 for multi speaker**hps.model).to(device)_ = net_g.eval()_ = utils.load_checkpoint(path_to_model, net_g, None)app.run(port=6842, host="0.0.0.0", debug=True, threaded=False)

 在服务器运行app.py文件

python app.py

这里是我自己随便起的python名称 

 

 打开Win上的postman

  • 输入刚运行提示的网址和端口

  • 打开form-data,在Value出输入需要合成的文本

  • 点击发送(Send)

参考文献

【1】Templates — Flask Documentation (3.0.x) (palletsprojects.com) 

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

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

相关文章

基于Python手把手教你实现flappy bird游戏

目录 前言开始前的准备工作进入正题结束语 前言 想必玩过游戏的都知道&#xff0c;Flappy Bird是一款简单却富有挑战性的经典的小鸟飞行游戏&#xff0c;让许多玩家为之痴迷&#xff0c;而作为开发者&#xff0c;那肯定要通过技术手段来再做一遍这款经典游戏。那么本文就来通…

Maven生命周期

Maven生命周期 通过IDEA工具的辅助&#xff0c;能很轻易看见Maven的九种生命周期命令&#xff0c;如下&#xff1a; 双击其中任何一个&#xff0c;都会执行相应的Maven构建动作&#xff0c;为啥IDEA能实现这个功能呢&#xff1f;道理很简单&#xff0c;因为IDEA封装了Maven提供…

Pillow操控图像,Python必备神器全面解析!

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com Pillow 是一个强大的 Python 图像处理库&#xff0c;它提供了丰富的功能&#xff0c;能够处理图像的加载、编辑、处理和保存。这个库建立在 Python Imaging Library (PIL) 的基础上&#xff0c;并延续了 PIL 的开…

医院信息化专业人员必备医院业务运作及管理流程知识(详细)

业务流程是一家医院运作的基础,医院所有业务都需要流程加以驱动。熟知医院各项业务,了解医院管理流程,有利于医院工作人员更好地投入自身岗位,提高工作效率。本文整理了常见医院业务运作及管理流程,仅供参考! 【门诊业务】 一、门诊业务的特点: 1.接诊病人多,就诊时…

【部署】Deploying Trino on linux

文章目录 一. Requirements1. Linux operating system2. Java 环境3. Python 二. Installing Trino三. Configuring Trino1. 节点配置2. JVM 配置3. Config properties4. Log levels5. Catalog properties 四. Running Trino 一. Requirements 1. Linux operating system 64位…

Django总结

文章目录 一、Web应用Web应用程序的优点Web应用程序的缺点应用程序有两种模式C/S、B/S C/S 客户端/服务端局域网连接其他电脑的MySQL数据库1.先用其他电脑再cmd命令行ping本机ip2.开放MySQL的访问 B/S 浏览器/服务端基于socket编写一个Web应用 二、Http协议1.http协议是什么2.h…

智能优化算法应用:基于动物迁徙算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于动物迁徙算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于动物迁徙算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.动物迁徙算法4.实验参数设定5.算法结果6.参考…

用Python创建日历详细指南与实用示例

更多Python学习内容&#xff1a;ipengtao.com 大家好&#xff0c;我是彭涛&#xff0c;今天为大家分享 用Python创建日历详细指南与实用示例&#xff0c;全文4800字&#xff0c;阅读大约15分钟。 在日常生活和工作中&#xff0c;创建和管理日历是一项关键任务。Python提供了丰富…

广州招聘用什么平台

广州招聘一般都会通过“广州吉鹿力招聘网”这个平台进行。广州吉鹿力招聘网是一个拥有多年经验的招聘平台&#xff0c;用户可以通过广州吉鹿力招聘网来寻找适合自己的职位&#xff0c;对于求职者来说&#xff0c;广州吉鹿力招聘网的要求相对较高&#xff0c;广州吉鹿力招聘网是…

【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角

专栏系列文章如下&#xff1a; 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 本章将介绍视觉SLAM的基本问题之一&#xff1a;如何描述刚体在三维空间中的运动&#xff1f; 旋转向…

机器学习(1)机器学习类型和机器学习的主要概念

0.前提 深度学习&#xff08;Deep Learing&#xff09;是机器学习&#xff08;Machine Learning&#xff09;领域中的一个新的研究方向&#xff0c;在如今的时代研究深度学习的大模型是十分热门的。我不知道有多少人有关注到最近openai的事件啊&#xff0c;说个比较让我惊讶的…

[ISCTF 2023]——Web、Misc较全详细Writeup、Re、Crypto部分Writeup

前言 由于懒我直接把上交的wp稍加修改拉上来了&#xff0c;凑活看 文章目录 前言Pwntest_ncnc_shell ReverseCreakmeEasyRebabyReeasy_z3mix_reeasy_flower_tea Webwhere_is_the_flag圣杯战争!!!绕进你的心里easy_websitewafrez_ini1z_Ssqldouble_picklewebincludefuzz!恐怖G…

网盘系统设计:万亿 GB 网盘如何实现秒传与限速?

Java全能学习面试指南&#xff1a;https://javaxiaobear.cn 网盘&#xff0c;又称云盘&#xff0c;是提供文件托管和文件上传、下载服务的网站&#xff08;File hostingservice&#xff09;。人们通过网盘保管自己拍摄的照片、视频&#xff0c;通过网盘和他人共享文件&#xff…

Hdoop学习笔记(HDP)-Part.11 安装Kerberos

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

jira创建用例,与任务关联

项目用的jira&#xff0c;但之前的用例放在禅道上&#xff0c;或者归档于svn&#xff0c;都不是很好用&#xff0c;所以研究了下jira的用法 1、下载插件&#xff1a; synapseRT - Test management and QA in JIRA 完成后在tab会多出一个test 2、常用的功能 1、建立用例&#…

线上超市小程序可以做什么活动_提升用户参与度与购物体验

标题&#xff1a;线上超市小程序&#xff1a;精心策划活动&#xff0c;提升用户参与度与购物体验 一、引言 随着移动互联网的普及&#xff0c;线上购物已经成为人们日常生活的一部分。线上超市作为线上购物的重要组成部分&#xff0c;以其便捷、快速、丰富的商品种类和个性化…

unity3d模型中缺失animation

在 模型的Rig-Animationtype 设置成Legacy https://tieba.baidu.com/p/2293580178

巧借C++算法实现冒泡排序算法

目录 引言冒泡排序原理具体实现步骤示例代码时间复杂度和稳定性优化可能性结束语 引言 作为计算机专业出身的开发者&#xff0c;以及从事软件开发相关的小伙伴&#xff0c;想必对C语言并不陌生&#xff0c;它是一门非常厉害的编程语言&#xff0c;不仅是基于程序底层的语言&a…

全网最新最全的自动化测试教程:python+pytest接口自动化-请求参数格式的确定

我们在做接口测试之前&#xff0c;先需要根据接口文档或抓包接口数据&#xff0c;搞清楚被测接口的详细内容&#xff0c;其中就包含请求参数的编码格式&#xff0c;从而使用对应的参数格式发送请求。例如某个接口规定的请求主体的编码方式为 application/json&#xff0c;那么在…

python中的字典

文章目录 字典字典的创建设置默认值&#xff08;fromkeys函数&#xff09;字典的基本操作字典的内建函数update方法&#xff08;更新字典&#xff09;删除字典字典的常用方法 字典 在Python中&#xff0c;字典是一种无序的、可变的数据结构&#xff0c;用于存储键值对。字典使…