![見出し画像](https://assets.st-note.com/production/uploads/images/111566642/rectangle_large_type_2_e3955fefb0b0a0253a79ae04b8a44bab.jpeg?width=1200)
LLaMA 2(13b,70b)でFew-Shotをやってみたら、ちゃんと機械翻訳できた(プロンプト付き)
結論
Satoshi Takahashi様のツイートを拝見し、プロンプトをお借りして私も機械翻訳を試してみたところ、きちんと日本語に翻訳されていることを確認できました。
![](https://assets.st-note.com/img/1690164345372-gTdyo253Ld.png?width=1200)
13bの結果
![](https://assets.st-note.com/img/1690164574974-XsmLbfVbcM.png?width=1200)
70bの結果
![](https://assets.st-note.com/img/1690164616478-sRlDNOyQ5n.png?width=1200)
翻訳対象の英文
It was impossible in our time. He has done amazing things that are almost unimaginable.
日本語訳
私たちの時代には不可能だった。彼はほとんど想像もつかないようなすごいことをやっている。
評価方法
今回のタスクでは、LLaMA 2の出力文がこの日本語訳に近い文章で出力されれば良い、ということになります。
検証結果
======= 正解 =======
私たちの時代には不可能だった。彼はほとんど想像もつかないようなすごいことをやっている。
======= 13b =======
我々の時代には不可能でした。��は想像以上の素��らしいことをやってのけました。
======= 70b =======
そんな時代には不可能でした。��は実に��くほどのことを成し��げています。
日本語が苦手なモデルなので文字化けしている部分はありますが、ファインチューニングせずに Few-Shotだけでこの性能が出るならば、かなり期待できるのではないでしょうか。
OSSかつ商用利用OKのモデルですので、ファインチューニングすればさらに精度向上が見込めますね。
とりあえず、翻訳できそうなことが分かっただけでも良かったです。
考察
13b
一部文字化けしている
<日本語のみ出力してください。>と書いているにも関わらず、Few-Shotの例文も一緒に出力されている
例文が一緒に出力されたことで、むしろ 70b よりも文脈を捉えられた翻訳になっている
70b
一部文字化けしている
余計な出力が削減され、より命令に忠実になっている
どのように翻訳したのか? まで出力される親切設計(?)
翻訳結果は上々
13bの方が良い翻訳になっているのは面白い結果でしたが、実際に利用することを考えると、余計な文章が少ない70bの方が使いやすいと思います。
ただ、70b になると量子化しても VRAM の容量が 40GB くらいは必要そうなので、RTX 4090 では足りないですね。RTX A6000 なら動きそうです(高い…)。
プロンプト
Satoshi Takahashi様のプロンプトをベースに作成したものは下記の通りです。
[INST]<<SYS>>
あなたは英語を日本語に翻訳することが得意なAIアシスタントです。あなたのタスクは英語を日本語に翻訳することです。日本語のみ出力してください。
<</SYS>>
Translate English to Japanese:\n{The Los Angeles Angels lost to the Kansas City Royals 10-9.} \n -> \n {ロサンゼルス・エンゼルスがカンザスシティ・ロイヤルズに10対9で敗れた。} \n\n
Translate English to Japanese:\n{Ohtani hit Taylor Clark's first pitch changeup over the center field wall in the seventh inning at Kauffman Stadium, a solo shot that gave the Angels an 8-2 lead.} \n -> \n {大谷は、カウフマン・スタジアムの7回に、テイラー・クラークの初球チェンジアップをセンターオーバーに打ち取り、このソロ・ショットでエンゼルスは8-2とリードを広げた。} \n\n
Translate English to Japanese:\n{Matsui hit 175 MLB homers during his active career in the United States, primarily with the Yankees.} \n -> \n {松井はアメリカでの現役時代、主にヤンキースでMLB通算175本塁打を放った。} \n\n
Translate English to Japanese:\n{It was impossible in our time. He has done amazing things that are almost unimaginable.} \n -> \n[/INST]
Tips
<<SYS>>に「日本語のみ出力してください。」と追記したところ、出力が安定しました。