transformers peft加载lora模型;TextStreamer流式输出,kv cache使用

1、transformers peft加载lora模型

https://github.com/hiyouga/LLaMA-Factory/blob/cae47379079ff811aa385c297481a27020a8da6b/scripts/loftq_init.py#L13

代码:

cpp 复制代码
from peft import AutoPeftModelForCausalLM, PeftModel
from transformers import AutoTokenizer,AutoModelForCausalLM
import torch

tokenizer = AutoTokenizer.from_pretrained("/ai/loong/Qwen1.5-7B-Chat")

model = AutoModelForCausalLM.from_pretrained("/ai/loong/Qwen1.5-7B-Chat", trust_remote_code=True, device_map="auto")

model = PeftModel.from_pretrained(model, "/ai/loong/output/checkpoint-300",offload_folder='./')


model.eval()
inputs = tokenizer("你是谁", return_tensors="pt")

outputs = model.generate(input_ids=inputs["input_ids"], max_new_tokens=500)
print(tokenizer.batch_decode(outputs, skip_special_tokens=True)[0])

TextStreamer流式输出

参考:https://zhuanlan.zhihu.com/p/694576810

cpp 复制代码
from peft import AutoPeftModelForCausalLM, PeftModel
from transformers import AutoTokenizer,AutoModelForCausalLM,TextStreamer
import torch

tokenizer = AutoTokenizer.from_pretrained("/ai/loong/Qwen1.5-7B-Chat")

model = AutoModelForCausalLM.from_pretrained("/ai/loong/Qwen1.5-7B-Chat", trust_remote_code=True, device_map="auto")

model = PeftModel.from_pretrained(model, "/ai/loong/output/checkpoint-300",offload_folder='./')



inputs = tokenizer("听说你以前叫通义千问", return_tensors="pt")
streamer = TextStreamer(tokenizer)
 
# Despite returning the usual output, the streamer will also print the generated text to stdout.
model.generate(**inputs, streamer=streamer, max_new_tokens=20)

kv cache使用

use_cache=True

cpp 复制代码
model.eval()
inputs = tokenizer("你是谁", return_tensors="pt")

outputs = model.generate(input_ids=inputs["input_ids"], max_new_tokens=500,use_cache=True)
print(tokenizer.batch_decode(outputs, skip_special_tokens=True)[0])
相关推荐
名不经传的养虾人7 小时前
从0到1:企业级AI项目迭代日记 Vol.14|正式版上线第一周:一个403、一次重构、一个新方向
人工智能·ai编程·ai创业·企业ai·多agent协作
努力努力再努力FFF7 小时前
建筑师想探索AI生成设计,需要具备哪些基础知识?
人工智能
小张同学8247 小时前
Python并发编程实战用多线程和协程加速智能体执行效率
开发语言·人工智能·python
深海鱼在掘金7 小时前
深入浅出 LangChain —— 第四章:提示词工程
人工智能·langchain·agent
郑寿昌7 小时前
UE6 AI加速Lumen光线追踪降噪技术解析
人工智能·游戏引擎
sheji1057 小时前
割草机器人实物拆解报告
人工智能·机器人·智能硬件
AI周红伟7 小时前
周红伟:OpenClaw安全防控:OpenClaw+Skills+DeepSeek-V4大模型安全部署、实操和企业应用实操
人工智能·深度学习·安全·机器学习·语言模型·openclaw
hixiong1237 小时前
C# OpenvinoSharp部署INSID3
开发语言·人工智能·ai·c#·openvinosharp
盼小辉丶7 小时前
PyTorch强化学习实战(4)——PyTorch基础
人工智能·pytorch·python·强化学习
sheji1057 小时前
泳池机器人产品设计方案
人工智能·机器人·智能硬件