当前位置: 首页 > wzjs >正文

沈阳鹊起网站建设中国建设银行网上银行网站

沈阳鹊起网站建设,中国建设银行网上银行网站,网站设计过程怎么写,哈尔滨电子政务网站建设文章目录 一、环境准备二、模型下载三、LoRA微调1.构建训练集2.微调 四、合并微调结果推理1.不合并LoRA2.合并LoRA微调结果推理 API(ms-swift) 一、环境准备 本次测试环境为modelscope社区提供的免费额度环境,A10单卡环境: 二…

文章目录

  • 一、环境准备
  • 二、模型下载
  • 三、LoRA微调
    • 1.构建训练集
    • 2.微调
  • 四、合并微调结果推理
    • 1.不合并LoRA
    • 2.合并LoRA微调结果推理
  • API(ms-swift)

一、环境准备

本次测试环境为modelscope社区提供的免费额度环境,A10单卡环境:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、模型下载

本次测试目的为跑通模型部署,微调及推理全流程,首先下载模型到本地,参考https://github.com/datawhalechina/self-llm/blob/master/models/Qwen2.5/05-Qwen2.5-7B-Instruct%20Lora%20%E5%BE%AE%E8%B0%83.md#%E6%A8%A1%E5%9E%8B%E4%B8%8B%E8%BD%BD,几行代码就可以下载:

from modelscope import snapshot_download# 第一个参数指定需要下载的模型,第二个参数指定下载到本地的位置
model_dir = snapshot_download('qwen/Qwen2.5-7B-Instruct', cache_dir='/mnt/workspace/model', revision='master')

下载完成后的基座模型:
在这里插入图片描述

三、LoRA微调

使用ms-swift,通过lora方式微调下载的基座模型,产出微调的权重文件。

ms-swift是一个针对大模型微调的高层封装框架,旨在简化训练流程、统一接口并集成多种微调技术,如 LoRA、QLoRA、Prefix Tuning等。通过ms-swift实现LoRA微调,仅需配置参数,无需关心底层实现。

1.构建训练集

参考https://swift.readthedocs.io/zh-cn/latest/Customization/%E8%87%AA%E5%AE%9A%E4%B9%89%E6%95%B0%E6%8D%AE%E9%9B%86.html,本次使用的是下面格式:
在这里插入图片描述
在这里插入图片描述
850条训练数据,每个训练数据组成一个json对象,其中必须包含queryresponse,可以有其他额外字段,只要不和内置的一些字段名如systemhistory等相同就不会影响训练。所有的json对象用一个json数组包含。

2.微调

具体微调参数代表的含义可以参考https://swift.readthedocs.io/zh-cn/latest/Instruction/%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0.html,本次测试的swift环境是3.x。微调脚本:

#!/bin/bashprompt_dir=/mnt/workspace/data/charge_new_train850.json
output_dir=/mnt/workspace/output/charge_new_train850.qwen2.5_7b
model_dir=/mnt/workspace/model/qwen/Qwen2.5-7B-InstructCUDA_VISIBLE_DEVICES=0 \
swift sft \--model $model_dir \--model_type qwen2_5 \--dataset $prompt_dir \--output_dir $output_dir \--num_train_epochs 3 \--train_type lora \--lora_rank 8 \--lora_alpha 32 \--lora_dropout 0.05 \--weight_decay 0.1 \--learning_rate 1e-4 \--gradient_checkpointing true \--per_device_train_batch_size 1 \--gradient_accumulation_steps 16 

训练完成后在output文件夹下会生成指定名称charge_new_train850.qwen2.5_7b的文件夹,文件夹里的内容结构:
在这里插入图片描述
圈起来的就是最终的微调结果,在推理时加载改结果就可以了。

四、合并微调结果推理

1.不合并LoRA

使用下载的基座模型,先测试一下推理效果作为合并LoRA后推理效果的对照,参考https://swift.readthedocs.io/zh-cn/latest/Instruction/%E6%8E%A8%E7%90%86%E5%92%8C%E9%83%A8%E7%BD%B2.html#id2:

import os
from swift.llm import PtEngine, RequestConfig, InferRequestquery = """
请根据以下地址情报和文本情报生成该POI的主点、分区、楼栋、单元号、楼层、户室号、和描述信息。分区、楼栋、单元号、户室号、和描述信息出现在楼层之后提取,出现在楼层之前不提取。
POI名称:浩瀚能源充电站(ZEEKRPower重庆彩云湖万科里超充地下站)|||地址情报:重庆市九龙坡区彩云湖万科里地下LG层B3停车场57号车位旁|||文本情报:
"""os.environ['CUDA_VISIBLE_DEVICES'] = '0'# 本地模型地址
model = '/mnt/workspace/model/qwen/Qwen2.5-7B-Instruct'# 加载推理引擎 & 设置批推理最多1条
engine = PtEngine(model, max_batch_size=1)
request_config = RequestConfig(max_tokens=512, temperature=0)# 推理
infer_requests = [InferRequest(messages=[{'role': 'user', 'content': query}])]
response = engine.infer(infer_requests, request_config)  # 无论单批推理几条,返回结果都是一个列表
print(f'response: {response[0].choices[0].message.content}')

在这里插入图片描述

2.合并LoRA微调结果推理

参考https://swift.readthedocs.io/zh-cn/latest/Instruction/%E9%A2%84%E8%AE%AD%E7%BB%83%E4%B8%8E%E5%BE%AE%E8%B0%83.html

import os
from swift.llm import (PtEngine, RequestConfig, safe_snapshot_download, get_model_tokenizer, get_template, InferRequest
)
from swift.tuners import Swiftquery = """
请根据以下地址情报和文本情报生成该POI的主点、分区、楼栋、单元号、楼层、户室号、和描述信息。分区、楼栋、单元号、户室号、和描述信息出现在楼层之后提取,出现在楼层之前不提取。
POI名称:浩瀚能源充电站(ZEEKRPower重庆彩云湖万科里超充地下站)|||地址情报:重庆市九龙坡区彩云湖万科里地下LG层B3停车场57号车位旁|||文本情报:
"""# 设置推理显卡
os.environ['CUDA_VISIBLE_DEVICES'] = '0'# 本地模型地址
model = '/mnt/workspace/model/qwen/Qwen2.5-7B-Instruct'
# checkpoint路径,注意要详细到最后一个epoch对应的文件夹
ck_dir = '/mnt/workspace/output/charge_new_train850.qwen2.5_7b/v0-20250327-175653/checkpoint-156'
lora_checkpoint = safe_snapshot_download(ck_dir)
template_type = None  # 使用对应模型默认的template_type
default_system = "You are a helpful assistant."  # 使用对应模型默认的default_system# 加载模型和对话模板
model, tokenizer = get_model_tokenizer(model)
model = Swift.from_pretrained(model, lora_checkpoint)
template_type = template_type or model.model_meta.template
template = get_template(template_type, tokenizer, default_system=default_system)
engine = PtEngine.from_model_template(model, template, max_batch_size=2)
request_config = RequestConfig(max_tokens=512, temperature=0)# 推理
infer_requests = [InferRequest(messages=[{'role': 'user', 'content': query}])
]
response = engine.infer(infer_requests, request_config)
print(f'response: {response[0].choices[0].message.content}')

在这里插入图片描述
可以看到合并LoRA微调结果之后输出格式按照训练集的格式输出,推理效果也更好。

B3停车场当成B3楼,但符合标注数据的提取逻辑。

API(ms-swift)

github:https://github.com/modelscope/ms-swift
2.x:https://swift2x.readthedocs.io/zh-cn/latest/
3.x:https://swift.readthedocs.io/zh-cn/latest/

http://www.dtcms.com/wzjs/825812.html

相关文章:

  • 富阳设计网站廉价网站建设
  • 手机网站大全免费下载wordpress户外俱乐部主题
  • 如何建微信商城网站平面设计课程标准
  • 常德网站建设网站优化企业微网站
  • 建设一个属于自己网站做网站兰州
  • 电子商务网站建设配置flash网站标题和网址
  • 机械 东莞网站建设上海企业网上预登记
  • 成都建设网站那个好网站建设工作人员有哪些职责
  • 沈阳网站建设制作开发东莞网站制作公司
  • 哪里网站建设联系制作一个购物网站
  • 购物网站商城wordpress 倒计时插件
  • 做网站的项目实施方案专业软文发稿平台
  • 2015年做那个网站能致富重庆电子工程职业学院招生网
  • 网站导航栏代码做网站需要给设计提供
  • 安庆网站开发制作网页如何给背景设置颜色
  • 淄博企业网站设计公司本地搬家网站建设思路
  • 文明网站建设情况做的一个网站多少钱
  • asp服装网站源码网站在线咨询模块
  • 海口网站建设搜q479185700wordpress+火车头接口
  • 做网站的任务书响应式电商网站
  • 做网上水果网站的调查南京网站设计案例
  • 专门网站建设个人网站建立 学生
  • 广州行业网站建设易优系统助手插件
  • 增城低价网站建设建设银行手机银行登录网站
  • 梦幻西如何建立网站做代练wordpress alt 空
  • 域名网站打开慢组建一个公司网络方案
  • 网站备案 域名证书WordPress 图标字体
  • 网站开发的技术路线网站建设公司自适应源码
  • 加工企业网站这么做网站开发html工具
  • 新公司网站建设要求wordpress魔客