人工智能大模型微调模型推理服务【免费下载链接】PaddleFormersPaddleFormers is an easy-to-use library of pre-trained large language model zoo based on PaddlePaddle.项目地址https://gitcode.com/gh_mirrors/pa/PaddleFormers点击查看免费下载导读本文以 PaddleFormers 仓库中的ernie_gen_poetry模型模块为核心系统讲解基于 ERNIE-GEN 框架的中文古诗生成模型的原理、安装方式、命令行与 Python API 预测方法以及如何借助 PaddleHub Serving 将模型一键部署为在线诗歌生成服务。读完本文你将掌握从模型加载到 beam search 解码、再到 HTTP 服务调用的完整实战链路并理解 ERNIE-GEN 在生成任务上的核心机制。一、模型基本信息与 ERNIE-GEN 框架ernie_gen_poetry是一个文本-文本生成类 PaddleHub 模型模块其基本信息如下表所示模型名称ernie_gen_poetry类别文本-文本生成网络ERNIE-GEN数据集开源诗歌数据集是否支持 Fine-tuning否模型大小422M最新更新日期2021-02-26数据指标-ERNIE-GEN 的核心机制该模块基于 ERNIE-GENAn Enhanced Multi-Flow Pre-training and Fine-tuning Framework for Natural Language Generation框架构建。ERNIE-GEN 是面向生成任务的预训练-微调框架其核心创新点包括span-by-span 生成任务首次在预训练阶段加入 span-by-span 生成任务让模型每次能够生成一个语义完整的片段而不是逐词零散生成填充式生成机制Infilling与噪声感知机制Noise-aware在预训练和微调过程中通过这两种机制缓解曝光偏差exposure bias问题即训练与推理阶段解码分布不一致带来的误差累积多片段-多粒度目标文本采样策略增强源文本和目标文本的关联性加强了编码器和解码器的交互。ernie_gen_poetry正是采用开源诗歌数据集对 ERNIE-GEN 进行微调后得到的诗歌生成模型输入一句诗歌开头即可续写出对仗工整的古诗下文。模型模块的元信息定义在 module.py 中summary字段明确描述了其用途This module has fine-tuned for poetry generation task。二、安装与环境准备1、环境依赖使用ernie_gen_poetry需要满足以下依赖版本paddlepaddle 2.0.0paddlehub 2.0.0安装方式参见 PaddleHub 安装文档paddlenlp 2.0.0从 module.py 的源码可以看出模型加载链路依赖paddlehub与paddlenlp两个关键库前者负责 Module 注册、命令行与 Serving 管理后者提供ErnieTokenizer和ErnieForGeneration预训练模型实现。2、安装模型通过 PaddleHub 命令行一条命令即可完成模型安装$ hub install ernie_gen_poetry安装完成后模型会被默认放置在${HUB_HOME}/.paddlehub/modules目录下若未设置${HUB_HOME}环境变量则默认存放在主目录$HOME下之后即可通过命令行或 Python API 调用。如果安装过程遇到问题可参考零基础 Windows 安装零基础 Linux 安装零基础 MacOS 安装3、环境验证安装完成后可用hub list命令确认模型是否成功安装到本地详见 PaddleHub 命令行工具说明并检查 CUDA 环境若计划使用 GPU 预测需确保已安装paddlepaddle-gpu并设置CUDA_VISIBLE_DEVICES环境变量。三、模型 API 预测ernie_gen_poetry提供命令行与 Python API 两种预测方式二者最终都会走到 module.py 中由serving装饰器标记的generate方法。1、命令行预测$ hub run ernie_gen_poetry --input_text昔年旅南服始识王荆州。 --use_gpu True --beam_width 5命令行参数说明--input_text诗歌的开头即待续写的起始文本--use_gpu是否采用 GPU 进行预测--beam_widthbeam search 宽度决定每个诗歌开头输出的下文数目。从源码看命令行入口由runnable装饰器标记的run_cmd实现module.py它会解析--use_gpu通过ast.literal_eval将字符串转为布尔值与--beam_widthint 类型再调用generate方法返回结果。更多命令行用法可参考 PaddleHub 命令行指令。2、预测代码示例import paddlehub as hub module hub.Module(nameernie_gen_poetry) test_texts [昔年旅南服始识王荆州。, 高名出汉阴禅阁跨香岑。] results module.generate(textstest_texts, use_gpuTrue, beam_width5) for result in results: print(result) # [一见便倾盖论交更绸缪。别来二十年日月如奔流。人生会合难俯仰成春秋。, 一见便倾盖论交更绸缪。别来二十年日月如奔流。人生会合难况乃岁月遒。君家富文史我老无田畴。相逢不相识各在天一陬。人生百年内聚散如浮沤。况我与夫子相逢, 一见便倾盖论交更绸缪。别来二十年日月如奔流。人生会合难况乃岁月遒。君家富文史我老无田畴。相逢不相识各在天一陬。人生百年内聚散如浮沤。况我与君别飘零, 一见便倾盖论交更绸缪。别来二十年日月如奔流。人生会合难况乃岁月遒。君家富文史我老无田畴。相逢不相识各在天一陬。人生百年内聚散如浮沤。况复各异乡各在, 一见便倾盖论交更绸缪。别来二十年日月如奔流。人生会合难况乃岁月遒。君家富文史我老无田畴。相逢不相识各在天一陬。人生百年内聚散如浮沤。况复各异乡风雨] # [地僻无尘到山高见水深。钟声传远寺塔影落前林。欲问西来意庭前柏树林。, 地僻无尘到山高见水深。钟声传远寺塔影落前林。欲问西来意庭前柏树阴。, 地僻无尘到山高见水深。钟声传远寺塔影落前林。欲问西来意庭前有桂林。, 地僻无尘到山高见水深。钟声传远寺塔影落前林。欲问西来意庭前柏正森。, 地僻无尘到山高见水深。钟声传远寺塔影落前林。欲问西来意庭前有桂阴。]可以看到对于每个诗歌开头模型都会基于beam_width5输出 5 个候选下文且续写的诗句保持了五言对仗、押韵等古诗特征。3、generate API 详解def generate(texts, use_gpuFalse, beam_width5):功能预测 API输入诗歌开头输出诗歌下文。参数textslist[str]诗歌的开头列表use_gpubool是否使用 GPU 预测若使用 GPU请先设置CUDA_VISIBLE_DEVICES环境变量beam_widthintbeam search 宽度决定每个诗歌开头输出的下文数目。返回resultslist[list[str]]诗歌下文列表每个诗歌开头会生成beam_width个下文。输入校验与前置检查generate内部首先会对输入做严格校验module.py输入必须是元素非空且均为字符串的列表否则抛出ValueError这一检查在 1.0.2 版本中专门得到完善。随后对每个输入文本进行诗歌格式检查并给出警告若文本不含或。会被判定为不完整的诗句可能产生不合理输出若逗号前后字数不等缺乏对仗同样会提示可能产生不合理输出若文本包含非中文字符除、。外也会给出警告。设备设置与模型加载在 GPU 使用上源码做了兜底逻辑如果use_gpuTrue但环境变量CUDA_VISIBLE_DEVICES未设置会自动回退为 CPU并打印日志警告module.py随后通过paddle.set_device(gpu)或paddle.set_device(cpu)完成设备切换。模型加载流程为ErnieForGeneration.from_pretrained(ernie-1.0)加载 ERNIE 基础模型再通过paddle.load加载微调后的诗歌生成权重ernie_gen_poetry.pdparams最后用set_dict注入权重module.py。同时tokenizer 会将[PAD]、[UNK]特殊 token 在输出阶段替换为空字符串避免解码结果中出现占位符。四、解码原理beam search 续写流程诗歌续写的核心解码逻辑位于 decode.py 中。模块主流程如下module.py对输入文本调用tokenizer.encode得到input_ids与token_type_ids调用beam_search_infilling执行填充式 beam search 解码关键解码参数包括eos_id[SEP]、sos_id[CLS]、attn_id[MASK]、pad_id[PAD]、unk_id[UNK]max_decode_len80最大解码长度、max_encode_len20最大编码长度beam_width由用户指定、tgt_type_id1将解码得到的 token id 序列通过rev_lookup映射回文本截断到[SEP]位置后拼接输出。beam_search_infillingdecode.py是典型的束搜索实现其中几个关键机制值得注意cache tile 与 reorder首轮将编码器输出的 KV cache 按beam_width平铺tile_每轮解码后按父 beam id 重排reorder_实现多束共享编码器输出的高效推理mask_prob 掩码机制对已结束finished的束将其非[EOS]位置的概率压到-9999.防止已结束束继续产生新词hyp_score 长度惩罚log_probs / pow((5 length) / 6, length_penalty)对长句做适度惩罚默认length_penalty1.0首步约束第一步只在束 0 上扩展is_first_step分支保证搜索起点唯一gather_tree 回溯解码结束后通过gather_tree按父束 id 回溯整棵搜索树得到每个束的完整生成序列。此外decode.py 还提供了greedy_search_infilling贪心搜索实现decode.py其结构与 beam search 类似但不维护束状态可作为对照理解 beam search 的优势束搜索保留多个候选路径能显著降低贪心搜索的局部最优风险这也是诗歌续写这类开放式生成任务通常选用 beam search 的原因。五、服务部署一键启动在线诗歌生成服务PaddleHub Serving 可以部署一个在线诗歌生成服务将该接口用于在线 Web 应用无需自行搭建网络框架。第一步启动 PaddleHub Serving$ hub serving start -m ernie_gen_poetry -p 8866执行该命令后即完成服务化 API 的部署默认端口号为 8866。NOTE如使用 GPU 预测需在启动服务之前设置CUDA_VISIBLE_DEVICES环境变量否则不需要设置。从 PaddleHub Serving 一键服务部署文档 可以看到Serving 底层基于 Flask 与 Gunicorn 处理网络请求后端直接调用 PaddleHub 预测接口并支持通过--use_multiprocess与--workers利用多核提升并发能力。需要说明的是--use_gpu与--use_multiprocess不可共用且 Windows 操作系统只支持单进程方式。第二步发送预测请求配置好服务端后以下代码即可实现发送预测请求并获取预测结果import requests import json # 发送HTTP请求 data {texts:[昔年旅南服始识王荆州。, 高名出汉阴禅阁跨香岑。], use_gpu:False, beam_width:5} headers {Content-type: application/json} url http://127.0.0.1:8866/predict/ernie_gen_poetry r requests.post(urlurl, headersheaders, datajson.dumps(data)) # 保存结果 results r.json()[results] for result in results: print(result) # serving运行结果同本地运行结果见上请求 URL 的格式为http://127.0.0.1:port/predict/MODULE其中MODULE为模型名请求体中的texts、use_gpu、beam_width参数与本地generateAPI 一一对应。停止服务时使用hub serving stop --port 8866即可不指定端口则默认关闭 8866 端口的服务。更多信息可参考 服务部署文档。六、扩展从 ernie_gen 微调自己的文本生成模型虽然ernie_gen_poetry本身不支持 Fine-tuning其定位是直接可用的成品模型但同目录下的基础模块ernie_gen提供了完整的微调链路可用于快速制作特定场景的生成模型。其说明见 ernie_gen/README.md关键 API 为module.finetune( train_pathtrain.txt, dev_pathdev.txt, max_steps300, batch_size2 ) module.export(params_pathresult[last_save_path], module_nameernie_gen_test, authortest)其中训练数据格式为序号\t输入文本\t标签例如1\t床前明月光\t疑是地上霜注意\t不能使用空格替代。PaddleHub 官方已提供多个微调好的生成模型除本文的诗歌生成外还包括对联生成、情话生成、藏头诗生成等说明 ERNIE-GEN 框架具备较强的任务迁移能力。七、更新历史版本更新内容1.0.0初始发布1.0.1修复 Windows 中的编码问题1.0.2完善 API 的输入文本检查1.1.0修复兼容性问题如需安装指定版本可使用带版本号的安装命令$ hub install ernie_gen_poetry1.1.0总结ernie_gen_poetry是 ERNIE-GEN 生成框架在中文古诗创作场景下的直接落地成果依托 span-by-span 预训练、填充式生成与噪声感知机制结合开源诗歌数据集微调实现了高质量的古诗续写能力。在 PaddleFormers 仓库中你可以通过 module.py 查看完整的模型加载、输入校验与调用链通过 decode.py 理解 beam search 解码细节并通过hub run、Python API 或 PaddleHub Serving 三种方式快速完成本地预测与在线服务部署。赞分享人工智能大模型微调模型推理服务【免费下载链接】PaddleFormersPaddleFormers is an easy-to-use library of pre-trained large language model zoo based on PaddlePaddle.项目地址https://gitcode.com/gh_mirrors/pa/PaddleFormers点击查看免费下载相关推荐PaddleFormers 藏头诗生成实战指南ERNIE-GEN 预训练语言模型 ernie_gen_acrostic_poetry 的安装、预测与服务化部署PaddleFormers 藏头诗生成实战指南ERNIE GEN 预训练语言模型 ernie_gen_acrostic_poetry 的安装、预测与服务化部署人工智能大模型微调模型推理服务PaddleFormers 人像抠图实战modnet_mobilenetv2_matting 模块的安装、API 预测与在线服务部署PaddleFormers 人像抠图实战modnet_mobilenetv2_matting 模块的安装、API 预测与在线服务部署 导读 本文以 Paddl人工智能大模型微调模型推理服务PaddleFormers 中 ERNIE 2.0 Large 预训练语义模型ernie_v2_eng_large实战指南安装、预测 API 与服务化部署PaddleFormers 中 ERNIE 2.0 Large 预训练语义模型ernie_v2_eng_large实战指南安装、预测 API 与服务化部署人工智能大模型微调模型推理服务创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
ICMIA 2024会议论文从投稿到EI/Scopus检索全流程解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 2:03:38
STM32驱动加湿器雾化片:PWM频率与占空比动态调节实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 2:03:32
企业数字化底座建设指南:从数据仓库到BI应用的全链路设计 简介:面向企业管理者、数字化规划人员及IT架构师的PPT资源,系统梳理企业数字化底座的定义、价值与总体架构,针对当前转型中数据分散、缺乏统一视图、风险体系缺失等问题,给出建设目标与分阶段规划路径。内容以综述、总体架构、规划… · 2026/9/25 2:03:32
源师兄BH1750光照扩展完整入门:从接线到第一个积木,5分钟测出环境光照 源师兄BH1750光照扩展完整入门:从接线到第一个积木,5分钟测出环境光照 【免费下载链接】CupCode_BH1750光线模块 该模块用于测量环境光线强度 项目地址: https://gitcode.com/yuanshixiong/test
想给自己的开发板加一块能"看光"的传感器… · 2026/9/25 2:37:22
Aliens Eye递归扩展完全指南:用--recurse-depth从简介里自动挖出关联账号 Aliens Eye递归扩展完全指南:用--recurse-depth从简介里自动挖出关联账号 【免费下载链接】Aliens_eye Hunt down 840 social media accounts using AI 项目地址: https://gitcode.com/gh_mirrors/al/Aliens_eye
Aliens Eye 是一款 AI 驱动的用户名扫描工具&… · 2026/9/25 2:37:15
【Dify】腾讯云智能字幕解析应用 音视频内容的自动转写和结构化处理已成为内容管理的重要一环。腾讯云SubtitleInfo智能字幕解析工作流,面向各类音视频数据,提供了自动提取、整理字幕信息的高效方案。
本文介绍腾讯云SubtitleInfo智能字幕解析的整体流程设计、节点拆解与应用案例,重点分析如何利用自动化工… · 2026/9/25 2:37:15
【Dify】数据统计分析可视化应用 数据统计分析是理解与利用数据的基础能力,无论是商业、科研还是日常运营,数据洞察已成为必备技能。通过自动化节点协作和可视化技术,数据分析工作流不仅大大简化了操作流程,还提升了分析效率。
本文介绍一种基于自动化节点的统计分析方法,涵盖数据导入、清洗、特征工程、… · 2026/9/25 2:37:15
【Dify】诗句封面生成与语音播报应用 以AI为核心的自动化创作工具已经进入内容生产的各个领域。古诗自动生成、配套视觉封面设计、诗句语音合成等多模态创新,正成为数字内容表达的新方式。
本文介绍一种利用大模型与多种AI工具自动生成古诗、诗句封面与语音播报的完整流程,覆盖主要技术节点及实际操作方法,适合… · 2026/9/25 2:37:15
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37