(三)机器学习模型的api调用之异常控制

在上一篇日志打印的基础上,本篇引入异常控制,并通过json格式输出。

#引入jsonify模块
from flask import jsonify

app = Flask(__name__)
app.config["JSONIFY_PRETTYPRINT_REGULAR"] = False
app.config['JSON_AS_ASCII'] = False

#异常定义
code10001 = {'code':'10001','errorType':'KeyError','errorMsg':'输入特征错误:'}
code10002 = {'code':'10002','errorType':'ValueError','errorMsg':'输入值错误:'}
code10003 = {'code':'10003','errorType':'UncheckException','errorMsg':'未知错误:'}
code10009 = {'code':'10009','errorType':'IOException','errorMsg':'模型文件不可达:'}

以下是一些异常的使用,

def test():
	try:
		#do something
		if os.path.isfile(modelFilePath):
			result = {}
			···
			return jsonify(result)
		return jsonify(code10009)

	except KeyError as e:
        logger.info(e)
        code10001['errorMsg']='输入特征错误:' + str(e)
        return jsonify(code10001)

    except ValueError as e:
        logger.info(e)
        code10002['errorMsg']='输入值错误:' + str(e)
        return jsonify(code10002)

    except Exception as e:
        logger.info(e)
        code10003['errorMsg']='未知错误:' + str(e)
        return jsonify(code10003)

另外如果需要屏蔽warning的输出还需要加入如下设置

#  忽略弹出的warnings
import warnings
warnings.filterwarnings('ignore')

(一)机器学习模型的api调用之初探
(二)机器学习模型的api调用之日志打印
(三)机器学习模型的api调用之异常控制
(四)机器学习模型的api调用之特征查询
(五)机器学习模型的api调用之模型执行

源代码地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值