license: apache-2.0

Huggingface RWKV-5 Eagle 7B模型 - 通过HF Transformers库调用
! 重要提示 !
以下是RWKV-5 Eagle 7B模型的HF transformers实现版本。该版本需配合huggingface transformers库使用
如需单独使用完整模型权重(适配其他RWKV库),请访问此处
当前版本非指令调优模型!(即将推出...)
通过HF transformers在CPU上运行
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
def generate_prompt(instruction, input=""):
instruction = instruction.strip().replace('\r\n','\n').replace('\n\n','\n')
input = input.strip().replace('\r\n','\n').replace('\n\n','\n')
if input:
return f"""指令:{instruction}
输入:{input}
回答:"""
else:
return f"""用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:{instruction}
助手:"""
model = AutoModelForCausalLM.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True).to(torch.float32)
tokenizer = AutoTokenizer.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True)
text = "请介绍北京的旅游景点"
prompt = generate_prompt(text)
inputs = tokenizer(prompt, return_tensors="pt")
output = model.generate(inputs["input_ids"], max_new_tokens=333, do_sample=True, temperature=1.0, top_p=0.3, top_k=0, )
print(tokenizer.decode(output[0].tolist(), skip_special_tokens=True))
输出示例:
用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:请介绍北京的旅游景点
助手:北京作为中国首都,拥有众多著名景点:
1. 故宫:坐落市中心,明清两朝皇宫,馆藏海量文物珍品
2. 天安门广场:中国标志性广场,人民大会堂所在地
3. 颐和园:古代皇家园林典范,蕴含深厚历史文化
4. 长城:世界奇迹,绵延万里的古代军事防御工程
5. 北京大学:百年名校,中国顶尖高等学府
6. 北京动物园:中国最大动物园,珍稀动物云集
7. 故宫博物院:世界级博物馆,中华文明瑰宝殿堂
8. 天坛:明清帝王祭天圣地...
通过HF transformers在GPU上运行
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
def generate_prompt(instruction, input=""):
instruction = instruction.strip().replace('\r\n','\n').replace('\n\n','\n')
input = input.strip().replace('\r\n','\n').replace('\n\n','\n')
if input:
return f"""指令:{instruction}
输入:{input}
回答:"""
else:
return f"""用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:{instruction}
助手:"""
model = AutoModelForCausalLM.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True, torch_dtype=torch.float16).to(0)
tokenizer = AutoTokenizer.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True)
text = "介绍一下大熊猫"
prompt = generate_prompt(text)
inputs = tokenizer(prompt, return_tensors="pt").to(0)
output = model.generate(inputs["input_ids"], max_new_tokens=128, do_sample=True, temperature=1.0, top_p=0.3, top_k=0, )
print(tokenizer.decode(output[0].tolist(), skip_special_tokens=True))
输出示例:
用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:介绍一下大熊猫
助手:大熊猫是中国特有珍稀物种,国家一级保护动物。其典型特征为黑白相间的圆润体型,黑眼圈与白腹形成鲜明对比。作为专性食竹动物,它们能高效消化纤维素。目前野生种群约1864只,主要分布于四川、陕西和甘肃的山区。由于栖息地碎片化威胁,世界自然保护联盟(IUCN)将其列为易危物种...
批量推理示例
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
def generate_prompt(instruction, input=""):
instruction = instruction.strip().replace('\r\n', '\n').replace('\n\n', '\n')
input = input.strip().replace('\r\n', '\n').replace('\n\n', '\n')
if input:
return f"""指令:{instruction}
输入:{input}
回答:"""
else:
return f"""用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:{instruction}
助手:"""
model = AutoModelForCausalLM.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True).to(torch.float32)
tokenizer = AutoTokenizer.from_pretrained("RWKV/HF_v5-Eagle-7B", trust_remote_code=True)
texts = ["请介绍北京的旅游景点", "介绍一下大熊猫", "乌兰察布"]
prompts = [generate_prompt(text) for text in texts]
inputs = tokenizer(prompts, return_tensors="pt", padding=True)
outputs = model.generate(inputs["input_ids"], max_new_tokens=128, do_sample=True, temperature=1.0, top_p=0.3, top_k=0, )
for output in outputs:
print(tokenizer.decode(output.tolist(), skip_special_tokens=True))
输出示例:
用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:请介绍北京的旅游景点
助手:北京作为千年古都,必游景点包括:
- 故宫博物院:现存最大木质结构古建筑群
- 八达岭长城:保存最完好的明长城段落
- 天坛公园:古代祭天建筑群杰作
- 798艺术区:工业遗址改造的现代艺术聚落...
用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:介绍一下大熊猫
助手:该物种具有以下特征:
1. 食性特化:99%食物为冷箭竹等竹类
2. 伪拇指结构:腕骨特化形成第六指
3. 育幼困难:新生儿体重仅为母亲1/900
4. 保护现状:中国建立67个大熊猫自然保护区...
用户:你好
助手:您好!我是您的智能助手,将为您提供专业详尽的解答。欢迎随时提问,我定会详尽回答。
用户:乌兰察布
助手:内蒙古自治区地级市,地理要点:
- 位于阴山山脉南麓
- 蒙古语意为"红色崖口"
- 著名景点:格根塔拉草原
- 特色产业:马铃薯种植基地
- 交通枢纽:京包铁路重要节点...