|
--- |
|
license: apache-2.0 |
|
--- |
|
 |
|
## 概要 |
|
|
|
ArrowPro-7B-KUJIRAはMistral系のNTQAI/chatntq-ja-7b-v1.0をベースにAItuber、AIアシスタントの魂となるようにChat性能、および高いプロンプトインジェクション耐性を重視して作られました。 |
|
|
|
## ベンチマーク |
|
|
|
ArrowPro-7B-KUJIRAはベンチマーク(ELYZA-TASK100)において約3.8(LLaMa3-70B準拠)をマークし、7Bにおいて日本語性能世界一を達成しました。 |
|
|
|
 |
|
|
|
## How to use |
|
```python |
|
import torch |
|
from transformers import AutoTokenizer, AutoModelForCausalLM |
|
|
|
tokenizer = AutoTokenizer.from_pretrained("DataPilot/ArrowPro-7B-KUJIRA") |
|
model = AutoModelForCausalLM.from_pretrained( |
|
"DataPilot/ArrowPro-7B-KUJIRA", |
|
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) |
|
``` |
|
|
|
## 謝辞 |
|
助言を与えてくださったすべての皆様に感謝します。 |
|
|