| | --- |
| | license: apache-2.0 |
| | --- |
| | |
| |  |
| |
|
| | ## 概要 |
| |
|
| | 当モデルはMistral系のArrowPro-7B-KUJIRAをもとに[databricks-dolly-15k-Nyan-ja](https://huggingface.co/datasets/DataPilot/databricks-dolly-15k-Nyan-ja)を用いて語尾を「にゃん!」にするファインチューニングを実施したモデルとなります。 |
| |
|
| | ## How to use |
| |
|
| | ```python |
| | import torch |
| | from transformers import AutoTokenizer, AutoModelForCausalLM |
| | |
| | tokenizer = AutoTokenizer.from_pretrained("DataPilot/ArrowPro-7B-Nyan") |
| | model = AutoModelForCausalLM.from_pretrained( |
| | "DataPilot/ArrowPro-7B-Nyan", |
| | torch_dtype="auto", |
| | ) |
| | model.eval() |
| | |
| | if torch.cuda.is_available(): |
| | model = model.to("cuda") |
| | |
| | def build_prompt(user_query): |
| | sys_msg = "あなたは日本語を話す優秀なアシスタントです。回答には必ず日本語で答えてください。" |
| | template = """[INST] <<SYS>> |
| | {} |
| | <</SYS>> |
| | |
| | {}[/INST]""" |
| | return template.format(sys_msg,user_query) |
| | |
| | # Infer with prompt without any additional input |
| | user_inputs = { |
| | "user_query": "まどマギで一番かわいいキャラはだれ?", |
| | } |
| | prompt = build_prompt(**user_inputs) |
| | |
| | input_ids = tokenizer.encode( |
| | prompt, |
| | add_special_tokens=True, |
| | return_tensors="pt" |
| | ) |
| | |
| | tokens = model.generate( |
| | input_ids.to(device=model.device), |
| | max_new_tokens=500, |
| | temperature=1, |
| | top_p=0.95, |
| | do_sample=True, |
| | ) |
| | |
| | out = tokenizer.decode(tokens[0][input_ids.shape[1]:], skip_special_tokens=True).strip() |
| | print(out) |
| | ``` |
| |
|
| | ## 謝辞 |
| |
|
| | このモデルを作成するために計算資源を貸してくれた[witness氏](https://x.com/i_witnessed_it)と[Meta Data Lab](https://x.com/Metadatalab)に感謝を申し上げます |
| |
|
| | ## お願い |
| |
|
| | このモデルを利用する際は他人に迷惑をかけないように最大限留意してください。 |