基于 Notebook 的 NLP 通用模板使用指南

全功能AI开发平台 BML

  • 版本发布记录
  • 快速开始
    • 用BML实现表格预测
    • 用BML实现序列标注
    • 用BML实现文本实体抽取
    • 用BML实现图片分类
    • 用BML实现实例分割
    • 用BML评价短文本相似度
    • 用BML实现开源大模型的预训练(Post-pretrain)
    • 用BML实现文本分类
    • 用BML实现物体检测
  • 模型仓库
    • 从训练任务导入模型
    • 查看模型
    • 创建模型
    • 模型仓库简介
    • 从本地导入模型
    • 校验模型
    • 服务代码文件示例
      • Sklearn服务代码文件示例
      • XGBoost服务代码文件示例
  • 平台管理
    • 权限管理
    • 在BML平台使用并行文件系统PFS和对象存储BOS
    • 在BML平台使用容器镜像服务CCR
    • 在BML使用外部镜像
    • 项目空间管理
    • 镜像管理
      • 镜像使用
      • 镜像管理简介
      • 常见问题
      • 自定义镜像
    • 资源管理
      • 资源池管理简介
      • 资源池使用简介
  • 预测部署
    • 批量预测(用户资源池)API
    • 文字识别模型部署
      • 文字识别任务API参考文档
      • 文字识别任务公有云部署
    • 通用模型部署
      • 标准接口规范参考
      • Paddle框架API调用文档
      • sklearn框架API调用文档
      • 公有云部署
      • XGBoost框架API调用文档
      • tensorflow框架API调用文档
      • Pytorch框架API调用文档
      • 通用类模型API参考
      • 错误码
    • 语音技术模型部署
      • 声音分类API调用文档
    • 视觉模型部署
      • 智能边缘控制台-多节点版
      • 端云协同服务部署
      • 智能边缘控制台-单节点版
      • 视觉任务模型部署整体说明
      • 软硬一体方案部署
        • 视觉任务Jetson专用SDK集成文档
        • 如何获取视觉任务软硬一体产品
        • 视觉任务EdgeBoard(VMX)专用SDK集成文档
        • 视觉任务EdgeBoard(FZ)专用SDK集成文档
        • 视觉任务专用辨影SDK集成开发文档
      • 私有服务器部署
        • 视觉模型如何部署在私有服务器
        • 私有API
          • 如何发布私有API
          • 图像分类-单图单标签私有API集成文档
          • 图像分类-单图多标签私有API集成文档
          • 物体检测私有API集成文档
        • 服务器端SDK
          • 视觉任务服务器端LinuxSDK集成文档-Python
          • 视觉任务服务器端LinuxSDK集成文档-C++
          • 如何发布服务器端SDK
          • 视觉任务服务器端WindowsSDK集成文档
          • 视觉任务服务器端SDK简介
      • 设备端SDK部署
        • 视觉任务WindowsSDK集成文档
        • 视觉任务iOSSDK集成文档
        • 视觉任务LinuxSDK集成文档-Python
        • 视觉任务LinuxSDK集成文档-C++
        • 视觉任务设备端SDK使用说明
        • 如何发布视觉任务设备端SDK
        • 视觉任务AndroidSDK集成文档
      • 公有云部署
        • 文字识别API参考文档
        • 视觉任务公有云部署
        • 物体检测API参考文档
        • 图像分类-单图单标签API参考文档
        • 实例分割API参考文档
        • 图像分类-单图多标签API参考文档
    • 表格预测模型部署
      • 整体说明
      • 公有云部署
    • 公有云部署管理
      • 配置AB测试版本
      • 批量预测服务
      • 公有云部署
      • 公有云部署简介
      • 配置休眠策略
    • NLP模型部署
      • 自然语言处理任务模型部署整体说明
      • 私有服务器部署
        • 如何部署在私有服务器
        • 私有服务API说明
          • 私有部署说明-短文本相似度
          • 私有化部署接口说明-文本分类
          • 私有部署文档-序列标注
          • 文本实体抽取API调用文档
      • 公有云部署
        • 短文本匹配API调用文档
        • 文本实体抽取私有API调用说明
        • 如何发布自然语言处理任务API
        • 文本分类-多标签API调用文档
        • 文本分类API调用文档
        • 序列标注API调用文档
  • 数据服务
    • 数据服务简介
    • 智能数据API
    • 公有云服务调用数据反馈
    • 智能标注
      • 文本智能标注介绍及原理说明
      • 图像智能标注介绍说明
    • 管理视觉数据
      • 实例分割数据导入与标注
        • 数据标注说明
        • 导入未标注数据
        • 导入已标注数据
      • 物体检测数据导入与标注
        • 物体检测数据标注说明
        • 物体检测导入未标注数据
        • 物体检测导入已标注数据
      • 图像分类数据导入与标注
        • 图像分类导入未标注数据
        • 图像分类导入已标注数据
        • 图像分类数据标注说明
    • 管理文本数据
      • 文本分类数据导入与标注
        • 文本分类数据标注说明
        • 文本分类数据导入与标注
        • 数据去重策略
      • 序列标注数据导入与标注
        • 序列标注标注说明
        • 序列标注数据导入
        • 数据去重策略
      • 文本实体抽取数据标注
        • 文本实体抽取数据标注
        • 文本实体抽取数据导入
        • 数据去重策略
      • 短文本匹配数据导入与标注
        • 短文本匹配数据导入与标注
        • 数据去重策略说明
        • 短文本匹配数据标注
  • 产品简介
    • BML平台升级公告
    • 平台重点升级介绍
    • 产品优势
    • 产品功能
    • 什么是BML
    • 文心大模型
  • 产品定价
    • 服务器部署价格说明
    • 专项适配硬件部署价格说明
    • 公有云部署计费说明
    • 批量预测计费说明
    • 模型训练计费说明
    • 通用小型设备部署价格说明
  • 模型训练
    • Notebook建模
      • 创建并启动Notebook
      • Notebook导入数据集
      • 保存Notebook中的模型
      • Notebook使用参考
      • 常见问题
      • 数据模型可视化功能说明
      • Notebook简介
      • 发布模型
      • 配置模型
      • 使用Notebook开发模型
      • 如何使用Notebook SSH 功能
      • Notebook从训练到部署快速入门
        • Codelab Notebook自定义环境部署最佳实践
        • 基于Notebook的图像分类模板使用指南
        • 基于 Notebook 的 NLP 通用模板使用指南
        • Notebook 模板使用指南概述
        • 基于 Notebook 的通用模板使用指南
        • 基于 Notebook 的物体检测模板使用指南
    • 自定义作业建模
      • 自定义作业简介
      • 训练作业API
      • 训练作业
        • 使用训练作业训练模型
        • 创建训练作业
        • 发布模型
        • 训练作业代码示例
          • TensorFlow 1.13.2
          • AIAK- Training Pytorch版
          • TensorFlow 2.3.0
          • Blackhole 1.0.0
          • Pytorch 1.7.1
          • Sklearn 0.23.2
          • XGBoost 1.3.1
          • PaddlePaddle 2.0.0rc
      • 自动搜索作业
        • 创建自动搜索作业
        • yaml文件编写规范
        • 自动搜索作业简介
        • 自动搜索作业代码编写规范
        • 自动搜索作业代码示例
          • XGBoost 1.3.1代码规范
          • TensorFlow 1.13.2代码规范
          • Sklearn 0.23.2代码规范
          • Pytorch 1.7.1代码规范
          • Tensorflow2.3.0代码规范
          • PaddlePaddle 2.1.1代码规范
    • 可视化建模
      • 快速入门
      • 概述
      • 组件菜单
        • 001-基本操作
        • 003-查看模型特征溯源
        • 007-组件状态
        • 008-组件资源配置
        • 006-组件列选择
        • 002-查看模型可解释性
        • 004-查看特征重要性
      • 组件说明
        • 015-图算法
        • 004-特征工程组件
        • 003-数据处理组件
        • 012-预测组件
        • 008-聚类算法
        • 009-Python算法组件
        • 002-数据集组件
        • 014-自然语言处理组件
        • 010-NLP算法
        • 016-统计分析组件
        • 006-回归算法
        • 007-异常检测算法
        • 013-模型评估组件
        • 005-分类算法
        • 018-时间序列组件
      • 画布操作说明
        • 005-AutoML(自动调参)
        • 002-开始训练
        • 001-概述
    • 预置模型调参建模
      • 预置模型调参简介
      • 神经网络训练搜索
      • 开发视觉模型
        • 视觉任务简介
        • 查看训练结果
        • 创建视觉任务
        • 配置视觉任务
        • 开发参考
          • 视觉预训练模型
          • 超参数配置参考
          • 评估报告参考
          • 自动超参搜索配置参考
          • 数据增强算子参考
          • 训练时长设置参考
          • 网络选型参考
      • 开发表格预测模型
        • 创建表格预测任务
        • 配置专家模式表格数据预测任务
        • 查看训练结果
        • 配置AUTOML模式表格数据预测任务
        • 表格预测任务简介
      • 开发文字识别模型
        • 文字识别任务简介
        • 文字识别任务操作流程
      • 开发自然语言处理模型
        • 查看训练结果
        • 自然语言处理任务简介
        • 配置NLP任务
        • 创建NLP任务
        • 代码模板升级及迁移说明
所有文档
menu
没有找到结果,请重新输入

全功能AI开发平台 BML

  • 版本发布记录
  • 快速开始
    • 用BML实现表格预测
    • 用BML实现序列标注
    • 用BML实现文本实体抽取
    • 用BML实现图片分类
    • 用BML实现实例分割
    • 用BML评价短文本相似度
    • 用BML实现开源大模型的预训练(Post-pretrain)
    • 用BML实现文本分类
    • 用BML实现物体检测
  • 模型仓库
    • 从训练任务导入模型
    • 查看模型
    • 创建模型
    • 模型仓库简介
    • 从本地导入模型
    • 校验模型
    • 服务代码文件示例
      • Sklearn服务代码文件示例
      • XGBoost服务代码文件示例
  • 平台管理
    • 权限管理
    • 在BML平台使用并行文件系统PFS和对象存储BOS
    • 在BML平台使用容器镜像服务CCR
    • 在BML使用外部镜像
    • 项目空间管理
    • 镜像管理
      • 镜像使用
      • 镜像管理简介
      • 常见问题
      • 自定义镜像
    • 资源管理
      • 资源池管理简介
      • 资源池使用简介
  • 预测部署
    • 批量预测(用户资源池)API
    • 文字识别模型部署
      • 文字识别任务API参考文档
      • 文字识别任务公有云部署
    • 通用模型部署
      • 标准接口规范参考
      • Paddle框架API调用文档
      • sklearn框架API调用文档
      • 公有云部署
      • XGBoost框架API调用文档
      • tensorflow框架API调用文档
      • Pytorch框架API调用文档
      • 通用类模型API参考
      • 错误码
    • 语音技术模型部署
      • 声音分类API调用文档
    • 视觉模型部署
      • 智能边缘控制台-多节点版
      • 端云协同服务部署
      • 智能边缘控制台-单节点版
      • 视觉任务模型部署整体说明
      • 软硬一体方案部署
        • 视觉任务Jetson专用SDK集成文档
        • 如何获取视觉任务软硬一体产品
        • 视觉任务EdgeBoard(VMX)专用SDK集成文档
        • 视觉任务EdgeBoard(FZ)专用SDK集成文档
        • 视觉任务专用辨影SDK集成开发文档
      • 私有服务器部署
        • 视觉模型如何部署在私有服务器
        • 私有API
          • 如何发布私有API
          • 图像分类-单图单标签私有API集成文档
          • 图像分类-单图多标签私有API集成文档
          • 物体检测私有API集成文档
        • 服务器端SDK
          • 视觉任务服务器端LinuxSDK集成文档-Python
          • 视觉任务服务器端LinuxSDK集成文档-C++
          • 如何发布服务器端SDK
          • 视觉任务服务器端WindowsSDK集成文档
          • 视觉任务服务器端SDK简介
      • 设备端SDK部署
        • 视觉任务WindowsSDK集成文档
        • 视觉任务iOSSDK集成文档
        • 视觉任务LinuxSDK集成文档-Python
        • 视觉任务LinuxSDK集成文档-C++
        • 视觉任务设备端SDK使用说明
        • 如何发布视觉任务设备端SDK
        • 视觉任务AndroidSDK集成文档
      • 公有云部署
        • 文字识别API参考文档
        • 视觉任务公有云部署
        • 物体检测API参考文档
        • 图像分类-单图单标签API参考文档
        • 实例分割API参考文档
        • 图像分类-单图多标签API参考文档
    • 表格预测模型部署
      • 整体说明
      • 公有云部署
    • 公有云部署管理
      • 配置AB测试版本
      • 批量预测服务
      • 公有云部署
      • 公有云部署简介
      • 配置休眠策略
    • NLP模型部署
      • 自然语言处理任务模型部署整体说明
      • 私有服务器部署
        • 如何部署在私有服务器
        • 私有服务API说明
          • 私有部署说明-短文本相似度
          • 私有化部署接口说明-文本分类
          • 私有部署文档-序列标注
          • 文本实体抽取API调用文档
      • 公有云部署
        • 短文本匹配API调用文档
        • 文本实体抽取私有API调用说明
        • 如何发布自然语言处理任务API
        • 文本分类-多标签API调用文档
        • 文本分类API调用文档
        • 序列标注API调用文档
  • 数据服务
    • 数据服务简介
    • 智能数据API
    • 公有云服务调用数据反馈
    • 智能标注
      • 文本智能标注介绍及原理说明
      • 图像智能标注介绍说明
    • 管理视觉数据
      • 实例分割数据导入与标注
        • 数据标注说明
        • 导入未标注数据
        • 导入已标注数据
      • 物体检测数据导入与标注
        • 物体检测数据标注说明
        • 物体检测导入未标注数据
        • 物体检测导入已标注数据
      • 图像分类数据导入与标注
        • 图像分类导入未标注数据
        • 图像分类导入已标注数据
        • 图像分类数据标注说明
    • 管理文本数据
      • 文本分类数据导入与标注
        • 文本分类数据标注说明
        • 文本分类数据导入与标注
        • 数据去重策略
      • 序列标注数据导入与标注
        • 序列标注标注说明
        • 序列标注数据导入
        • 数据去重策略
      • 文本实体抽取数据标注
        • 文本实体抽取数据标注
        • 文本实体抽取数据导入
        • 数据去重策略
      • 短文本匹配数据导入与标注
        • 短文本匹配数据导入与标注
        • 数据去重策略说明
        • 短文本匹配数据标注
  • 产品简介
    • BML平台升级公告
    • 平台重点升级介绍
    • 产品优势
    • 产品功能
    • 什么是BML
    • 文心大模型
  • 产品定价
    • 服务器部署价格说明
    • 专项适配硬件部署价格说明
    • 公有云部署计费说明
    • 批量预测计费说明
    • 模型训练计费说明
    • 通用小型设备部署价格说明
  • 模型训练
    • Notebook建模
      • 创建并启动Notebook
      • Notebook导入数据集
      • 保存Notebook中的模型
      • Notebook使用参考
      • 常见问题
      • 数据模型可视化功能说明
      • Notebook简介
      • 发布模型
      • 配置模型
      • 使用Notebook开发模型
      • 如何使用Notebook SSH 功能
      • Notebook从训练到部署快速入门
        • Codelab Notebook自定义环境部署最佳实践
        • 基于Notebook的图像分类模板使用指南
        • 基于 Notebook 的 NLP 通用模板使用指南
        • Notebook 模板使用指南概述
        • 基于 Notebook 的通用模板使用指南
        • 基于 Notebook 的物体检测模板使用指南
    • 自定义作业建模
      • 自定义作业简介
      • 训练作业API
      • 训练作业
        • 使用训练作业训练模型
        • 创建训练作业
        • 发布模型
        • 训练作业代码示例
          • TensorFlow 1.13.2
          • AIAK- Training Pytorch版
          • TensorFlow 2.3.0
          • Blackhole 1.0.0
          • Pytorch 1.7.1
          • Sklearn 0.23.2
          • XGBoost 1.3.1
          • PaddlePaddle 2.0.0rc
      • 自动搜索作业
        • 创建自动搜索作业
        • yaml文件编写规范
        • 自动搜索作业简介
        • 自动搜索作业代码编写规范
        • 自动搜索作业代码示例
          • XGBoost 1.3.1代码规范
          • TensorFlow 1.13.2代码规范
          • Sklearn 0.23.2代码规范
          • Pytorch 1.7.1代码规范
          • Tensorflow2.3.0代码规范
          • PaddlePaddle 2.1.1代码规范
    • 可视化建模
      • 快速入门
      • 概述
      • 组件菜单
        • 001-基本操作
        • 003-查看模型特征溯源
        • 007-组件状态
        • 008-组件资源配置
        • 006-组件列选择
        • 002-查看模型可解释性
        • 004-查看特征重要性
      • 组件说明
        • 015-图算法
        • 004-特征工程组件
        • 003-数据处理组件
        • 012-预测组件
        • 008-聚类算法
        • 009-Python算法组件
        • 002-数据集组件
        • 014-自然语言处理组件
        • 010-NLP算法
        • 016-统计分析组件
        • 006-回归算法
        • 007-异常检测算法
        • 013-模型评估组件
        • 005-分类算法
        • 018-时间序列组件
      • 画布操作说明
        • 005-AutoML(自动调参)
        • 002-开始训练
        • 001-概述
    • 预置模型调参建模
      • 预置模型调参简介
      • 神经网络训练搜索
      • 开发视觉模型
        • 视觉任务简介
        • 查看训练结果
        • 创建视觉任务
        • 配置视觉任务
        • 开发参考
          • 视觉预训练模型
          • 超参数配置参考
          • 评估报告参考
          • 自动超参搜索配置参考
          • 数据增强算子参考
          • 训练时长设置参考
          • 网络选型参考
      • 开发表格预测模型
        • 创建表格预测任务
        • 配置专家模式表格数据预测任务
        • 查看训练结果
        • 配置AUTOML模式表格数据预测任务
        • 表格预测任务简介
      • 开发文字识别模型
        • 文字识别任务简介
        • 文字识别任务操作流程
      • 开发自然语言处理模型
        • 查看训练结果
        • 自然语言处理任务简介
        • 配置NLP任务
        • 创建NLP任务
        • 代码模板升级及迁移说明
  • 文档中心
  • arrow
  • 全功能AI开发平台BML
  • arrow
  • 模型训练
  • arrow
  • Notebook建模
  • arrow
  • Notebook从训练到部署快速入门
  • arrow
  • 基于 Notebook 的 NLP 通用模板使用指南
本页目录
  • 创建并启动Notebook
  • 训练文本分类-单文本单标签模型
  • 下载文心套件
  • 准备训练数据
  • 训练模型
  • 配置并发布模型
  • 校验模型
  • 部署在线服务

基于 Notebook 的 NLP 通用模板使用指南

更新时间:2025-08-21

目录

1.创建并启动Notebook
2.训练文本分类-单文本单标签模型
3.配置并发布模型
4.校验模型
5.部署在线服务

基于 Notebook 的 NLP 通用模板使用指南

本文采用模板中预置的文心套件开发文本分类-单文本单标签模型的过程为例,介绍在使用 NLP 模板时,从创建 Notebook 任务到引入数据、训练模型,再到保存模型、部署模型的全流程。

创建并启动Notebook

1、在 BML 左侧导航栏中点击『Notebook』

2、在 Notebook 页面点击『新建』,在弹出框中填写公司/个人信息以及项目信息,示例如下:

填写基础信息

image.png

填写项目信息

image.png

3、对 Notebook 任务操作入口中点击『配置』进行资源配置,示例如下:

选择开发语言、AI 框架,由于本次采用 wenxin 进行演示,所以需要选择 python3.7、PaddlePaddle2.0.0。选择资源规格,由于深度学习所需的训练资源一般较多,需要选择GPU V100的资源规格。

image.png

完成配置后点击『确认并启动』,即可启动 Notebook,启动过程中需要完成资源的申请以及实例创建,请耐心等待。

4、等待 Notebook 启动后,点击『打开』,页面跳转到 Notebook,即完成 Notebook 的创建与启动,示例如下:

image.png

训练文本分类-单文本单标签模型

下载文心套件

打开进入 Notebook,在左侧包管理插件找到 wenxin,点击安装最新版本。

image.png

安装成功后,回到用户当前目录,即可看到 wenxin 文件夹。

image.png

准备训练数据

1、数据来源一:导入用户数据。

通过左边选择栏的导入数据集选项,进行数据集导入。导出的数据位于用户目录的 data/ 文件夹。

image.png

2、数据来源二:使用 wenxin 套件自带的数据集。

训练模型

1、若需要使用用户导入的数据集,则需要更改训练的配置文件中的数据集路径。

例如使用wenxin/tasks/text_classification/examples/cls_ernie_2.0_base_cnn_ch.json配置文件,则使用 vim 进行编辑,修改 data_path。

image.png

2、下载预训练模型,在终端中执行命令如下:

Plain Text
1cd wenxin/tasks/model_files/
2bash download_ernie_2.0_base_ch.sh

3、模型训练。

Plain Text
1cd ../text_classification
2python run_with_json.py --param_path examples/cls_ernie_2.0_base_cnn_ch.json

训练完成后会在该目录中生成 output 文件夹,里面存放了训练生成的模型。

image.png

4、模型拷贝,由于生成模型版本的组件只能读取 PretrainedModel 文件夹下的文件,所以需要将模型部署相关的文件都拷贝至该文件夹下。

在终端中执行命令,将模型拷贝至 PretrainedModel 文件夹下。

Plain Text
1cp output /home/work/PretrainedModel/ -r

拷贝训练参数配置 cls_ernie_2.0_base_cnn_ch.json 中 reader 的 vocab 和 embedding.config_path 指定的文件,以便用于后续的公有云部署。

Plain Text
1cp ../model_files/config/ernie_2.0_base_ch_config.json /home/work/PretrainedModel/ernie_2.0_base_ch_config.json
2cp ../model_files/dict/vocab_ernie_2.0_base_ch.txt /home/work/PretrainedModel/vocab.txt
3cp output/cls_ernie_2.0_base_cnn_ch/save_inference_model/inference_step_126_enc/infer_data_params.json /home/work/PretrainedModel/infer_data_params.json

5、生成模型版本。

点击左侧导航栏中的生成模型版本组件,打开弹窗填写信息。

image.png

image.png

image.png

点击『生成』即可生成模型版本,生成模型版本一般需要数十秒,请耐心等待。

配置并发布模型

BML NoteBook 的 NLP 通用模板产出的模型支持基于百度自研的PaddlePaddle深度学习框架和文心套件进行开发的文本分类-单文本单标签、文本分类-单文本多标签、短文本相似度、序列标注四种应用方向的模型进行部署。下面以文本分类-单文本单标签的模型为例,详细介绍如何配置模型:

1、查看前置条件是否满足:需要训练完成,并生成了相应的模型生成版本(详见训练模型的第五步)。

2、回到 BML Notebook 列表页,点击『模型发布列表』即可进入配置页面。

image.png

3、点击配置,即可进入配置流程。

image.png

4、填写模型信息。

image.png

5、选择待发布的模型文件,点击确定按钮。

image.png

其中:vocab.txt 为词表文件,output为模型文件,ernie_2.0_base_ch_config.json 和 infer_data_params.json 为配置文件,非必须。

6、配置出入参及数据逻辑处理。

点击立即编辑,即可进入代码编辑页面。主要需要修改 vocab_path 和 inference_model_path 两个字段的路径为所选择的路径(注:『选择模型文件』后的模型文件将存放在系统制定的路径下,用户在代码中可直接采用相对路径,如 vocab.txt 文件的路径为 ./vocab.txt ,output 文件夹的路径为 ./output)。

在本次示例中, vocab_path 默认路径就是所选择的路径,无须修改,仅需要修改inference_model_path即可。

image.png

修改为:

image.png

最终的代码如下:

Plain Text
1{
2  "dataset_reader": {
3    "predict_reader": {
4      "name": "predict_reader",
5      "type": "BasicDataSetReader",
6      "fields": [
7        {
8          "name": "text_a",
9          "data_type": "string",
10          "reader": {
11            "type": "ErnieTextFieldReader"
12          },
13          "tokenizer": {
14            "type": "FullTokenizer",
15            "split_char": " ",
16            "unk_token": "[UNK]"
17          },
18          "need_convert": true,
19          "vocab_path": "./vocab.txt",
20          "max_seq_len": 512,
21          "truncation_type": 0,
22          "padding_id": 0,
23          "embedding": {
24            "type": "ErnieTokenEmbedding",
25            "use_reader_emb": false,
26            "emb_dim": 768,
27            "config_path": "ernie_2.0_base_ch_config.json"
28          }
29        }
30      ],
31      "config": {
32        "data_path": "./data/predict_data",
33        "shuffle": false,
34        "batch_size": 8,
35        "epoch": 1,
36        "sampling_rate": 1.0
37      }
38    }
39  },
40
41  "inference": {
42    "output_path": "./output/predict_result.txt",
43    "inference_model_path": "./output/cls_ernie_2.0_base_cnn_ch/save_inference_model/inference_step_126_enc",
44    "PADDLE_USE_GPU": 1,
45    "PADDLE_IS_LOCAL": 1,
46    "num_labels": 2,
47    "extra_param": {
48      "meta":{
49        "job_type": "text_classification"
50      }
51
52    }
53  }
54}

配置文件对于服务部署来说包括两个部分: dataset_reader(数据部分)和 inference 部分,相关字段的解释如下表所示:

dataset_reader 数据部分

Plain Text
1{
2  "dataset_reader": {
3    "predict_reader": { ## 预测推理,则必须配置predict_reader,其配置方式与train_reader、test_reader类似,需要注意的是predict_reader不需要label域,shuffle参数必须是false,epoch参数必须是1。
4      "name": "predict_reader",
5      "type": "BasicDataSetReader", ## 采用BasicDataSetReader,其封装了常见的读取tsv、txt文件、组batch等操作。
6      "fields": [ ## 域(field)是文心的高阶封装,对于同一个样本存在不同域的时候,不同域有单独的数据类型(文本、数值、整型、浮点型)、单独的词表(vocabulary)等,可以根据不同域进行语义表示,如文本转id等操作,field_reader是实现这些操作的类。
7        {
8          "name": "text_a", ## 文本分类只有一个文本特征域,命名为"text_a"。
9          "data_type": "string", ## data_type定义域的数据类型,文本域的类型为string,整型数值为int,浮点型数值为float。
10          "reader": {
11            "type": "ErnieTextFieldReader"  ## 文本域的通用reader "CustomTextFieldReader",数值数组类型域为"ScalarArrayFieldReader",数值标量类型域为"ScalarFieldReader",这里的取值是对应FieldReader的类名
12          },
13          "tokenizer": {
14            "type": "FullTokenizer", ## 指定该文本域的tokenizer为FullTokenizer,type的取值是对应Tokenizer的类名,
15            "split_char": " ", ## 非Ernie任务需要自己切词,切词之后的明文使用的分隔符在这里设置,默认是通过空格区分不同的token。
16            "unk_token": "[UNK]" ## unk标记为"[UNK]", 即词表之外的token所对应的默认id,unk必须是词表文件中存在的token。
17          },
18          "need_convert": true, ## "need_convert"为true说明数据格式是明文字符串,需要通过词表转换为id。
19          "vocab_path": "./vocab.txt", ## 指定该文本域的词表,"need_convert"为true时一定要设置
20          "max_seq_len": 512, ## 设定当前域转为id之后的最大长度
21          "truncation_type": 0, ## 选择文本超长截断的策略,0为从头开始到最大长度截断,1为从头开始到max_len-1的位置截断,末尾补上最后一个id(词或字),2为保留头和尾两个位置,然后按从头开始到最大长度方式截断。
22          "padding_id": 0, ## 设定padding时对应的id值,文心内部会按batch中的最长文本大小对整个batch中的数据进行padding补齐。
23          "embedding": {
24            "type": "ErnieTokenEmbedding",
25            "use_reader_emb": false,
26            "emb_dim": 768,
27            "config_path": "ernie_2.0_base_ch_config.json"
28          }
29        }
30      ],
31      "config": {
32        "data_path": "./data/predict_data",
33        "shuffle": false, ## 注意!这里的参数必须关掉,打乱顺序输出之后不方便比对数据看结果
34        "batch_size": 8,
35        "epoch": 1, ## 注意!这里的epoch要设置为1,重复多次预测没意义。
36        "sampling_rate": 1.0
37      }
38    }
39  }

inference 部分

Plain Text
1  "inference": {
2    "output_path": "./output/predict_result.txt", ## 预测结果的输出路径,封装成Web服务可忽略
3    "inference_model_path": "./output/cls_ernie_2.0_base_cnn_ch/save_inference_model/inference_step_126_enc", ## 待预测模型的路径,相对路径
4    "PADDLE_USE_GPU": 1, ## 是否使用GPU进行训练,1为使用GPU
5    "PADDLE_IS_LOCAL": 1, ## 是否单机预测,必须设置为1,目前文心的python版本预测仅支持单机
6    "num_labels": 2, ## 必填参数,表示分类模型的类别数目是多少,预测结果解析时会用到
7    "extra_param": {  ## 同trainer,除核心必要信息之外,需要额外标明的参数信息,比如一些meta信息可以作为日志统计的关键字。
8      "meta":{
9        "job_type": "text_classification"
10      }
11    }
12  }
13}

7、点击提交即可进入模型验证阶段,验证时间一般需要数十秒,请耐心等待。

image.png

验证通过后,显示有效。

image.png

8、点击发布,填写相关信息,即可发布模型。

image.png

点击左侧导航栏的『模型管理』,即可进入模型管理列表页查看已发布的模型。

image.png

校验模型

1、点击『版本列表』。

image.png

2、点击『校验模型』。

image.png

3、点击『启动模型校验』,启动约需5分钟,请耐心等待。

image.png

4、输入文本或者上传文本即可开始校验,示例如下:

image.png

部署在线服务

1、点击『版本列表』。

image.png

2、点击部署-在线服务。

image.png

3、完成信息填写及资源规格选择后,即可开始部署。

image.png

4、部署过程需要数十秒时间,请耐心等待。部署完成后,示例如下:

image.png

5、API调用方法请参考 文字识别模型部署文档。

上一篇
基于Notebook的图像分类模板使用指南
下一篇
Notebook 模板使用指南概述