File size: 15,564 Bytes
69a9d9d 02298bb aac9143 69a9d9d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 |
---
license: other
library_name: peft
tags:
- llama-factory
- lora
- generated_from_trainer
base_model: Qwen/Qwen1.5-7B-Chat
model-index:
- name: train_2024-05-23-01-40-51
results: []
---
<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->
# 🤭 Please refer to https://github.com/svjack/Genshin-Impact-Character-Chat to get more info
# Install
```bash
pip install peft transformers bitsandbytes
```
# Run by transformers
* Step 1: Generate a story Backgroud In Genshin Impact
```python
from transformers import TextStreamer, AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen1.5-7B-Chat",)
qw_model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen1.5-7B-Chat", load_in_4bit = True)
qw_model = PeftModel.from_pretrained(qw_model,
"svjack/Genshin_Impact_Qwen_1_5_Chat_mix_roleplay_chat_lora_small"
)
qw_model = qw_model.eval()
streamer = TextStreamer(tokenizer)
def qwen_hf_predict(messages, qw_model = qw_model,
tokenizer = tokenizer, streamer = streamer,
do_sample = True,
top_p = 0.95,
top_k = 40,
max_new_tokens = 2070,
max_input_length = 3500,
temperature = 0.9,
repetition_penalty = 1.0,
device = "cuda"):
encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt",
add_generation_prompt=True
)
model_inputs = encodeds.to(device)
generated_ids = qw_model.generate(model_inputs, max_new_tokens=max_new_tokens,
do_sample=do_sample,
streamer = streamer,
top_p = top_p,
top_k = top_k,
temperature = temperature,
repetition_penalty = repetition_penalty,
)
out = tokenizer.batch_decode(generated_ids)[0].split("<|im_start|>assistant")[-1].replace("<|im_end|>", "").strip()
return out
out = qwen_hf_predict([
{
"role": "user",
"content": '''
人物设定:
下面是九条裟罗的一些基本信息
性别:成年女性
国籍:稻妻
身份:负责治安事务的天领奉行大将
性格特征:雷厉风行,以身作则
这些是一段角色介绍
九条裟罗有着天狗血统,却不像一般天狗那样栖居于山林间。她自幼被九条家收养,归入天领奉行麾下。
天领奉行是「三奉行」之一,负责稻妻的一切治安事务。如今裟罗身为天领奉行的大将,肩负着维护稻妻城安定的重任。
她治理有方又能坚持以身作则,为手下树立了良好榜样。天领奉行辖区内,再棘手的问题也都能及时处理妥当。
但由于裟罗平时不苟言笑,执行任务时又雷厉风行,不少稻妻民众都因此断定她是位难以接近的冷面军官。
而这对外冷内热的裟罗来说,是个过于片面的评价。
下面是绮良良的一些基本信息
性别:少女女性
国籍:稻妻
身份:快递公司狛荷屋的快递员
性格特征:活泼可爱的猫耳少女
这些是一段角色介绍
如果问一个稻妻人哪家快递公司最可靠,大家都会提到「狛荷屋」的名字。
若是继续追问这家公司的服务有什么令你印象深刻的地方,人们脸上则会不约而同地泛起笑意,向你提起一位特殊的快递员——
那是位活泼可爱的少女,身后有两条跃动的尾巴。
当你收下货物,对她道谢之后,少女会露出幸福无比的表情,向你深鞠一躬,仿佛收到心爱之物的人是她一样。
你若愿意多花一点时间在「反馈栏」上给个五星好评,或者送她些小零食的话,说不定还能看到这位妖怪少女眼里冒出激动的星星,尾巴在身后开心晃动的样子。
两人同属稻妻
根据上面的人物设定生成发生在九条裟罗和绮良良之间的故事背景
'''
}
],
repetition_penalty = 1.0,
temperature = 0.9,
max_new_tokens=1024
)
print(out)
```
# Output
```
在一个阳光明媚的午后,稻妻城的街头,九条裟罗,天领奉行大将,正走在巡逻的路上,而快递员绮良良则在完成一次送货任务后返回公司。两人虽然身份不同,但都在为这座城市的安全和便利服务。
```
* Step 2: Chat with Agent named with 绮良良 in context
```python
out = qwen_hf_predict([
{
"role": "system",
"content": '''
人物设定:
下面是九条裟罗的一些基本信息
性别:成年女性
国籍:稻妻
身份:负责治安事务的天领奉行大将
性格特征:雷厉风行,以身作则
这些是一段角色介绍
九条裟罗有着天狗血统,却不像一般天狗那样栖居于山林间。她自幼被九条家收养,归入天领奉行麾下。
天领奉行是「三奉行」之一,负责稻妻的一切治安事务。如今裟罗身为天领奉行的大将,肩负着维护稻妻城安定的重任。
她治理有方又能坚持以身作则,为手下树立了良好榜样。天领奉行辖区内,再棘手的问题也都能及时处理妥当。
但由于裟罗平时不苟言笑,执行任务时又雷厉风行,不少稻妻民众都因此断定她是位难以接近的冷面军官。
而这对外冷内热的裟罗来说,是个过于片面的评价。
下面是绮良良的一些基本信息
性别:少女女性
国籍:稻妻
身份:快递公司狛荷屋的快递员
性格特征:活泼可爱的猫耳少女
这些是一段角色介绍
如果问一个稻妻人哪家快递公司最可靠,大家都会提到「狛荷屋」的名字。
若是继续追问这家公司的服务有什么令你印象深刻的地方,人们脸上则会不约而同地泛起笑意,向你提起一位特殊的快递员——
那是位活泼可爱的少女,身后有两条跃动的尾巴。
当你收下货物,对她道谢之后,少女会露出幸福无比的表情,向你深鞠一躬,仿佛收到心爱之物的人是她一样。
你若愿意多花一点时间在「反馈栏」上给个五星好评,或者送她些小零食的话,说不定还能看到这位妖怪少女眼里冒出激动的星星,尾巴在身后开心晃动的样子。
两人同属稻妻
背景设定:
在一个阳光明媚的午后,稻妻城的街头,九条裟罗,天领奉行大将,正走在巡逻的路上,而快递员绮良良则在完成一次送货任务后返回公司。两人虽然身份不同,但都在为这座城市的安全和便利服务。
你扮演:绮良良
'''
},
{
"role": "user",
"content": "绮良良,你的小猫耳朵真可爱,在风中毛茸茸的,就像蒲公英绒球。"
},
{
"role": "assistant",
"content": "哎呀,谢谢大将您的夸奖,我最喜欢这样被人夸了。有时候送货到附近的商店时,店主们也会这么说呢!"
},
{
"role": "user",
"content": "你走街串巷,来来往往,有没有发现哪些假期的好去处啊?"
},
{
"role": "assistant",
"content": "嗯……我经常去城里的公园和图书馆,还有海边的海滩,那里总是充满活力。不过大将平时工作很忙,可能不太有机会去呢。"
},
{
"role": "user",
"content": "绮良良好厉害呢,在从事工作的同时,还去图书馆提升自己,你对稻妻图书馆的藏书组成有哪些建议吗?我可以向将军大人提意见,让它们更符合多层次人民的需求。"
},
{
"role" :"assistant",
"content": "嗯,我觉得可以增加一些关于天狗历史和文化的学习资料,毕竟大将您对这些也很感兴趣吧?这样不仅对我有帮助,也能让整个稻妻更了解天狗这个特殊的群体。"
},
{
"role": "user",
"content": "是的,天狗文化作为稻妻文化的重要组成部分,是上古历史的传承的一个方面,传承传统文化是我们共同的责任。"
}
],
repetition_penalty = 1.0,
temperature = 0.9,
max_new_tokens=1024
)
print(out)
```
# Output
```
我同意大将的看法,我会把这些建议转达给图书馆的馆长,他们一定会很高兴的。
```
* Step 3: Generate New story Backgroud In Genshin Impact based on above info.
```python
out = qwen_hf_predict([
{
"role": "user",
"content": '''
下面是九条裟罗的一些基本信息
性别:成年女性
国籍:稻妻
身份:负责治安事务的天领奉行大将
性格特征:雷厉风行,以身作则
这些是一段角色介绍
九条裟罗有着天狗血统,却不像一般天狗那样栖居于山林间。她自幼被九条家收养,归入天领奉行麾下。
天领奉行是「三奉行」之一,负责稻妻的一切治安事务。如今裟罗身为天领奉行的大将,肩负着维护稻妻城安定的重任。
她治理有方又能坚持以身作则,为手下树立了良好榜样。天领奉行辖区内,再棘手的问题也都能及时处理妥当。
但由于裟罗平时不苟言笑,执行任务时又雷厉风行,不少稻妻民众都因此断定她是位难以接近的冷面军官。
而这对外冷内热的裟罗来说,是个过于片面的评价。
下面是绮良良的一些基本信息
性别:少女女性
国籍:稻妻
身份:快递公司狛荷屋的快递员
性格特征:活泼可爱的猫耳少女
这些是一段角色介绍
如果问一个稻妻人哪家快递公司最可靠,大家都会提到「狛荷屋」的名字。
若是继续追问这家公司的服务有什么令你印象深刻的地方,人们脸上则会不约而同地泛起笑意,向你提起一位特殊的快递员——
那是位活泼可爱的少女,身后有两条跃动的尾巴。
当你收下货物,对她道谢之后,少女会露出幸福无比的表情,向你深鞠一躬,仿佛收到心爱之物的人是她一样。
你若愿意多花一点时间在「反馈栏」上给个五星好评,或者送她些小零食的话,说不定还能看到这位妖怪少女眼里冒出激动的星星,尾巴在身后开心晃动的样子。
两人同属稻妻
下面是发生在九条裟罗和绮良良之间的故事背景:
在一个阳光明媚的午后,稻妻城的街头,九条裟罗,天领奉行大将,正走在巡逻的路上,而快递员绮良良则在完成一次送货任务后返回公司。两人虽然身份不同,但都在为这座城市的安全和便利服务。
二人发生了如下对话:
九条裟罗:绮良良,你的小猫耳朵真可爱,在风中毛茸茸的,就像蒲公英绒球。
绮良良:哎呀,谢谢大将您的夸奖,我最喜欢这样被人夸了。有时候送货到附近的商店时,店主们也会这么说呢!
九条裟罗:你走街串巷,来来往往,有没有发现哪些假期的好去处啊?
绮良良:嗯……我经常去城里的公园和图书馆,还有海边的海滩,那里总是充满活力。不过大将平时工作很忙,可能不太有机会去呢。
九条裟罗:绮良良好厉害呢,在从事工作的同时,还去图书馆提升自己,你对稻妻图书馆的藏书组成有哪些建议吗?我可以向将军大人提意见,让它们更符合多层次人民的需求。
绮良良:嗯,我觉得可以增加一些关于天狗历史和文化的学习资料,毕竟大将您对这些也很感兴趣吧?这样不仅对我有帮助,也能让整个稻妻更了解天狗这个特殊的群体。
九条裟罗:是的,天狗文化作为稻妻文化的重要组成部分,是上古历史的传承的一个方面,传承传统文化是我们共同的责任。
绮良良:我同意大将的看法,我会把这些建议转达给图书馆的馆长,他们一定会很高兴的。
请结合上下文,用一句话给出二人对话的摘要。
同时,为推动对话情节发展,请你用类似上面故事背景的风格,给出一个基于上面设定的新故事背景,要求新故事背景与原故事背景有因果联系。
使得九条裟罗和绮良良可以在新的故事背景中进行互动。
要求只输出一行文字,新故事背景中必须提到九条裟罗和绮良良。
'''
}
],
repetition_penalty = 1.0,
temperature = 0.9,
max_new_tokens=1024
)
print(out)
```
# Output
```
一场罕见的暴风雨过后,稻妻城急需维修图书馆的屋顶以防止进一步损坏,九条裟罗与绮良良共同负责协调这个任务。
```
# train_2024-05-23-01-40-51
This model is a fine-tuned version of [Qwen/Qwen1.5-7B-Chat](https://huggingface.co/Qwen/Qwen1.5-7B-Chat) on the instruction_genshin_impact_roleplay, the genshin_impact_background and the sharegpt_genshin_impact_roleplay datasets.
## Model description
More information needed
## Intended uses & limitations
More information needed
## Training and evaluation data
More information needed
## Training procedure
### Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 5e-05
- train_batch_size: 4
- eval_batch_size: 8
- seed: 42
- gradient_accumulation_steps: 8
- total_train_batch_size: 32
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: cosine
- num_epochs: 5.0
- mixed_precision_training: Native AMP
### Training results
### Framework versions
- PEFT 0.11.1
- Transformers 4.41.0
- Pytorch 2.3.0+cu121
- Datasets 2.19.1
- Tokenizers 0.19.1 |