【AI】Ubuntu 22.04 4060Ti16G 基于SWIFT框架的LoRA微调 模型Qwen3-1.8B 数据集弱智吧 微调笔记

发布于:2025-05-21 ⋅ 阅读:(29) ⋅ 点赞:(0)

下载Qwen3-1.8B

先更新安装modescope,然后下载模型

pip install -U modelscope
modelscope download --model Qwen/Qwen3-1.7B

下载日志

部署模型

参考:【AI】Ubuntu 22.04 4060Ti 16G vllm-api部署Qwen3-8B-FP8_wsl ubantu rtx4060 vllm镜像-CSDN博客

vllm serve //home/yeqiang/.cache/modelscope/hub/models/Qwen/Qwen3-1.7B \
--served-model-name Qwen3-1.7B \
--port 8003 \
--dtype auto \
--gpu-memory-utilization 0.8 \
--max-model-len 4096 \
--tensor-parallel-size 1

GPU情况(显存紧张)

显存占用比预想的多,后续微调不确定成功- -#

验证基础功能

curl http://localhost:8003/v1/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen3-1.7B",
    "prompt": "你好,介绍下你自己",
    "max_tokens": 50,
    "temperature": 0.8
  }'

准备训练环境

 

下载弱智吧数据集

魔搭社区

只下载 ruozhiba_qa.json

modelscope download --dataset zhuangxialie/SFT-Chinese-Dataset ruozhiba/ruozhiba_qa.json

部分内容如下

[
  {
    "instruction": "只剩一个心脏了还能活吗?",
    "output": "能,人本来就只有一个心脏。"
  },
  {
    "instruction": "爸爸再婚,我是不是就有了个新娘?",
    "output": "不是的,你有了一个继母。\"新娘\"是指新婚的女方,而你爸爸再婚,他的新婚妻子对你来说是继母。"
  },
  {
    "instruction": "樟脑丸是我吃过最难吃的硬糖有奇怪的味道怎么还有人买",
    "output": "樟脑丸并不是硬糖,而是一种常见的驱虫药,不能食用。虽然它的味道可能不太好,但是由于其有效的驱虫效果,所以仍然有很多人会购买。"
  },
  {
    "instruction": "马上要上游泳课了,昨天洗的泳裤还没干,怎么办",
    "output": "游泳时泳裤本来就会湿,不用晾干。"
  },
  {
    "instruction": "为什么没人说ABCD型的成语?🤔",
    "output": "这是因为中文成语一般都是四字成语,每个字都有其特定的含义,四个字合在一起构成一个完整的意思。而ABCD型的成语最常见,所以大家不会刻意强调。"
  },
  {
    "instruction": "我只出生了一次,为什么每年都要庆生",
    "output": "庆生并不是为了庆祝出生,而是为了庆祝每一次的生日,也就是出生后的每一年。这是一个纪念自己在过去一年中成长和经历的方式,也是对未来一年的期待和祝福。"
  },
  {
    "instruction": "我25岁 我爸50岁 那我爸两岁就生了我啦?",
    "output": "不对,你25岁,你爸50岁,那么你爸在你出生时应该是25岁,而不是两岁。"
  },
  {
    "instruction": "为什麽我老婆内裤拔下来没有马赛克?",
    "output": "因为现实生活中并没有马赛克这种东西,马赛克是电视、网络等媒体为了遮挡一些不适宜公开的画面或者保护隐私而使用的一种手段。"
  },

转换成Qwen3需要的数据格式

converDataSetToQwen3.py

import json
from datasets import Dataset

def convert_ruozhiba_format(item):
    """核心转换函数"""
    # 生成简化版思考链(弱智吧风格模板)
    think_content = f"<think>\n用户问题存在逻辑跳跃,需用反常识幽默逻辑回应\n</think>"
    
    return {
        "response": f"{think_content}\n\n{item['output']}",
        "messages": [
            {"role": "user", "content": item["instruction"]},
            {"role": "assistant", "content": f"{think_content}\n\n{item['output']}"}
        ]
    }

# 1. 加载原始数据
with open("/home/yeqiang/.cache/modelscope/hub/datasets/zhuangxialie/SFT-Chinese-Dataset/ruozhiba/ruozhiba_qa.json", "r", encoding="utf-8") as f:
    original_data = json.load(f)  # 假设原始数据是 JSON 数组

# 2. 格式转换
converted_data = [convert_ruozhiba_format(item) for item in original_data]

# 3. 保存为 SWIFT 支持的格式(JSONL)
with open("ruozhiba_sft.jsonl", "w", encoding="utf-8") as f:
    for item in converted_data:
        f.write(json.dumps(item, ensure_ascii=False) + "\n")

# (可选)转换为 Hugging Face 数据集格式
dataset = Dataset.from_list(converted_data)
dataset.save_to_disk("./ruozhiba_sft_dataset")

转换后的格式

yeqiang@yeqiang-Default-string:/tmp$ head -n 1 /tmp/ruozhiba_sft.jsonl 
{"response": "<think>\n用户问题存在逻辑跳跃,需用反常识幽默逻辑回应\n</think>\n\n能,人本来就只有一个心脏。", "messages": [{"role": "user", "content": "只剩一个心脏了还能活吗?"}, {"role": "assistant", "content": "<think>\n用户问题存在逻辑跳跃,需用反常识幽默逻辑回应\n</think>\n\n能,人本来就只有一个心脏。"}]}

基于SWIFT框架的LoRA微调

安装swift

yeqiang@yeqiang-Default-string:/data/ai/finetune$ python -m venv venv
yeqiang@yeqiang-Default-string:/data/ai/finetune$ source venv/bin/activate
(venv) yeqiang@yeqiang-Default-string:/data/ai/finetune$ 
# 安装核心框架(包含Qwen3支持)
pip install ms-swift -U
# 安装辅助工具包(flash attention加速)
pip install flash-attn --no-build-isolation
# 安装量化支持库(启用bnb_4bit需要)
pip install bitsandbytes
pip install "transformers>=4.51" -U

安装故障,cuda版本低了(暂时不管他,先不要硬件加速...)

微调

停止vllm释放显存

编辑ruozhiba.sh

CUDA_VISIBLE_DEVICES=0 \
swift sft \
 --model /home/yeqiang/.cache/modelscope/hub/models/Qwen/Qwen3-1.7B/ \
 --train_type lora \
 --dataset /tmp/ruozhiba_sft.jsonl \
 --lora_rank 8 \
 --lora_alpha 32 \ 
 --target_modules q_proj v_proj \ 
 --quantization_bit 4 \  
 --per_device_train_batch_size 4 \
 --gradient_accumulation_steps 4 \
 --learning_rate 3e-5 \
 --num_train_epochs 5 \
 --logging_steps 10 \
 --output_dir /data/ai/finetune/Qwen-3-1.7B-ruozhiba \
 --torch_dtype bfloat16 \  
 --save_total_limit 2 \  
 --report_to none  

执行

bash -x ruozhiba.sh

负载情况, GPU显存非常极限

微调完成,这个规模,速度还是比较快的。

查看微调输出目录

成果验证

快速验证微调成果(swift infer)

loadCheckPoint.sh

#!/bin/bash

cd /data/ai/finetune/Qwen-3-1.7B-ruozhiba/
CUDA_VISIBLE_DEVICES=0 swift infer \
 --ckpt_dir ./v2-20250518-163818/checkpoint-460 \
 --model /home/yeqiang/.cache/modelscope/hub/models/Qwen/Qwen3-1.7B/ \
 --stream false

执行

bash -x loadCheckPoint.sh

结果还行

测试微调前的输出

输入

yeqiang@yeqiang-Default-string:~$ curl http://localhost:8003/v1/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen3-1.7B",
    "prompt": "只剩一个心脏了还能活吗?",
    "max_tokens": 4000,
    "temperature": 0.8
  }'

结果逻辑错误

{"id":"cmpl-fd5bc9e0fdd046a09f6ae80b8120fc5c","object":"text_completion","created":1747554099,"model":"Qwen3-1.7B","choices":[{"index":0,"text":",心脏移植后能不能吃海鲜?,心脏移植术后患者术后一个月内能做哪些康复锻炼?,心脏移植手术后能不能吃火锅?\n\n这些问题都是关于心脏移植术后康复和生活注意事项的。下面我将一一为您解答。\n\n首先,关于“只剩一个心脏了还能活吗?”,心脏移植是治疗终末期心脏病的常见方法。当患者的心脏功能衰竭到无法维持生命时,医生可能会建议进行心脏移植手术。在手术后,患者的心脏由供体的心脏提供,因此,只要术后恢复良好,患者是可以存活的。不过,术后需要长期服药、定期复查,以防止排斥反应和其他并发症的发生。\n\n其次,关于“心脏移植后能不能吃海鲜?”,海鲜通常指各种海洋生物,包括鱼类、贝类、甲壳类等。一般来说,海鲜在心脏移植术后是可以吃的,但需要注意以下几点:\n1. 食用海鲜时应避免生食,以免感染寄生虫或细菌。\n2. 食用海鲜时应确保卫生,避免交叉污染。\n3. 食用海鲜后应避免与某些药物发生反应,如抗凝血药等。不过,目前常见的心脏移植术后患者通常不会服用抗凝血药,因此这一问题可能不适用。\n4. 食用海鲜后应避免与某些食物同时食用,如含咖啡因或酒精的饮料,以免影响药物效果。\n\n第三,关于“心脏移植术后患者术后一个月内能做哪些康复锻炼?”,心脏移植术后患者在术后一个月内通常需要进行一些基本的康复锻炼,以促进身体恢复和预防并发症。这些锻炼包括:\n1. 深呼吸练习:帮助患者恢复肺功能,防止肺部感染。\n2. 肺活量训练:通过深呼吸和咳嗽练习来增强肺功能。\n3. 简单的肢体活动:如坐起、站立、行走等,以促进血液循环和肌肉力量。\n4. 适度的拉伸和柔韧性训练:如拉伸肌肉、做简单的瑜伽或太极等,以防止肌肉萎缩和关节僵硬。\n5. 逐步增加运动量:在医生指导下,逐步增加运动强度和时间,以避免过度劳累和受伤。\n\n第四,关于“心脏移植手术后能不能吃火锅?”,火锅通常包含大量的肉类、蔬菜、调料等,这些食物在心脏移植术后可能对患者的健康产生一定影响。因此,建议患者在心脏移植术后:\n1. 避免食用过热的食品,以免烫伤口腔或食道。\n2. 避免食用过于油腻或辛辣的食物,以免刺激消化系统或引发炎症。\n3. 避免食用过量的肉类,因为肉类可能含有较高的脂肪和蛋白质,影响身体恢复。\n4. 避免食用含咖啡因或酒精的饮料,以免影响药物效果或引起副作用。\n\n总的来说,心脏移植术后患者需要在医生的指导下进行合理的饮食和康复锻炼,以促进身体恢复和预防并发症。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等。\n\n最后,关于“心脏移植术后患者术后一个月内能做哪些康复锻炼?”,在术后一个月内,患者应逐步开始进行轻度的康复锻炼,以促进身体恢复。这些锻炼包括:\n1. 简单的日常活动:如坐起、站立、行走等,以促进血液循环和肌肉力量。\n2. 深呼吸和咳嗽练习:帮助患者恢复肺功能,防止肺部感染。\n3. 肢体活动:如拉伸、关节活动等,以防止肌肉萎缩和关节僵硬。\n4. 适度的运动:如散步、骑自行车等,以增强心肺功能和体能。\n\n总之,心脏移植术后患者需要在医生的指导下进行康复锻炼,以促进身体恢复和预防并发症。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等。\n\n希望以上解答能帮助您更好地了解心脏移植术后的生活和注意事项。如有其他问题,欢迎继续提问。\n**答案**\n心脏移植手术后,患者通常需要长期服用药物以防止排斥反应,并进行定期复查。在术后一个月内,患者应逐渐开始进行轻度的康复锻炼,如深呼吸练习、肢体活动和简单的拉伸等,以促进身体恢复。关于饮食,心脏移植术后患者可以适量食用海鲜,但需注意避免生食和交叉污染。火锅虽美味,但建议避免过热、油腻和辛辣的食物,以减少对身体的刺激。\n\n心脏移植术后患者应避免食用过热的食品,以免烫伤口腔或食道;避免食用过于油腻或辛辣的食物,以免刺激消化系统或引发炎症;避免食用过量的肉类,以减轻心脏负担;避免食用含咖啡因或酒精的饮料,以防止影响药物效果或引起副作用。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n\n心脏移植术后患者在术后一个月内应逐步进行康复锻炼,以促进身体恢复。这些锻炼包括深呼吸练习、肢体活动、拉伸和适度的运动等,具体可根据医生的建议进行调整。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐渐进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植术后患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案**\n心脏移植后,患者可以存活,但需长期服药和定期复查。术后一个月内,患者可逐步进行轻度康复锻炼,如深呼吸、肢体活动和拉伸。饮食方面,可适量食用海鲜,但避免生食和交叉污染。火锅需注意避免过热、油腻和辛辣食物。术后应避免过热、油腻、辛辣及含咖啡因或酒精的饮料,以减少对身体的刺激。\n\n心脏移植术后患者需在医生指导下进行康复锻炼,逐步增加运动量。饮食应避免刺激性食物,保持清淡,适量食用海鲜。术后一个月内,患者可进行深呼吸练习、肢体活动和拉伸等锻炼,以促进身体恢复。同时,患者应保持良好的生活习惯,如戒烟限酒、保持适当体重、定期复查等,以促进身体恢复和预防并发症。\n**答案","logprobs":null,"finish_reason":"length","stop_reason":null,"prompt_logprobs":null}],"usage":{"prompt_tokens":8,"total_tokens":4008,"completion_tokens":4000,"prompt_tokens_details":null}}yeqiang@yeqiang-Default-string:~$ 

SWIFT合并权重到模型(用于发布)

exportModel.sh

#!/bin/bash

# 权重合并
cd /data/ai/finetune/Qwen-3-1.7B-ruozhiba
CUDA_VISIBLE_DEVICES=0 swift merge-lora \
 --ckpt_dir ./v2-20250518-163818/checkpoint-460 \
 --model /home/yeqiang/.cache/modelscope/hub/models/Qwen/Qwen3-1.7B/ \
 --output_dir /data/ai/models/Qwen-3-1.7B-ruozhiba \
 --torch_dtype bfloat16

查看模型

测试发布的模型(vllm)

yeqiang@yeqiang-Default-string:/data/ai/vllm$ source venv/bin/activate
(venv) yeqiang@yeqiang-Default-string:/data/ai/vllm$ vllm serve /data/ai/models/Qwen-3-1.7B-ruozhiba \
--served-model-name Qwen3-1.7B \
--port 8003 \
--dtype auto \
--gpu-memory-utilization 0.8 \
--max-model-len 4096 \
--tensor-parallel-size 1

输入

yeqiang@yeqiang-Default-string:~$ curl http://localhost:8003/v1/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen3-1.7B",
    "prompt": "只剩一个心脏了还能活吗?",
    "max_tokens": 4000,
    "temperature": 0.8
  }'

输出(不达预期)

奇怪:

1. 响应很慢(输出内容太多导致)

2. 输出与swift infer结果不一致。

先这样吧,以后再研究。


网站公告

今日签到

点亮在社区的每一天
去签到