LLaMA 2(13b,70b)でFew-Shotをやってみたら、ちゃんと機械翻訳できた(プロンプト付き)
結論
Satoshi Takahashi様のツイートを拝見し、プロンプトをお借りして私も機械翻訳を試してみたところ、きちんと日本語に翻訳されていることを確認できました。
13bの結果
70bの結果
翻訳対象の英文
It was impossible in our time. He has done amazing things that are almost unimaginable.
日本語訳
私たちの時代には不可能だった。彼はほとんど想像もつかないようなすごいことをやっている。
評価方法
今回のタスクでは、LLaMA 2の出力文がこの日本語訳に近い文章で出力されれば良い、ということになります。
検証結果
日本語が苦手なモデルなので文字化けしている部分はありますが、ファインチューニングせずに Few-Shotだけでこの性能が出るならば、かなり期待できるのではないでしょうか。
OSSかつ商用利用OKのモデルですので、ファインチューニングすればさらに精度向上が見込めますね。
とりあえず、翻訳できそうなことが分かっただけでも良かったです。
考察
13b
一部文字化けしている
<日本語のみ出力してください。>と書いているにも関わらず、Few-Shotの例文も一緒に出力されている
例文が一緒に出力されたことで、むしろ 70b よりも文脈を捉えられた翻訳になっている
70b
一部文字化けしている
余計な出力が削減され、より命令に忠実になっている
どのように翻訳したのか? まで出力される親切設計(?)
翻訳結果は上々
13bの方が良い翻訳になっているのは面白い結果でしたが、実際に利用することを考えると、余計な文章が少ない70bの方が使いやすいと思います。
ただ、70b になると量子化しても VRAM の容量が 40GB くらいは必要そうなので、RTX 4090 では足りないですね。RTX A6000 なら動きそうです(高い…)。
プロンプト
Satoshi Takahashi様のプロンプトをベースに作成したものは下記の通りです。
Tips
<<SYS>>に「日本語のみ出力してください。」と追記したところ、出力が安定しました。
この記事が気に入ったらサポートをしてみませんか?