Claude vs Llamaで英会話の精度比較したかった話

# はじめに
こちらは**Qiita Advent Calendar　Amazon Bedrock 17日目**の記事です。

みなさんこんにちは！hiropyです。
今回は、Amazon Bedrock（以下Bedrock）の基盤モデルであるClaudeとLlamaに対し、それぞれと英会話をしたらどのような違いが出るのか？を比較「したかった話」を書きます。

なんで「したかった」なのかは、読み進めてからのお楽しみです。


# どうやるか
今回はBedrockのChat機能で検証を行います。
リージョンは`us-east-1`です。
基盤モデルは、それぞれ以下のバージョンを使用します。
- Claude v2.1
- Llama 2 Chat 70B

それぞれの基盤モデルに対し、以下のプロンプトを投げます。
```plaintext
あなたは英語の教師です。私は英語を話す練習がしたいので、何か質問を振ってください。私が英語で回答するので、そのまま会話を続けてください。
```

このプロンプトの後に各基盤モデルと会話を進めることで、どのような話題を振ってくるのか？会話を流暢に続けてくれるか？を検証します。


# 検証スタート
## まずはClaude
まずはClaudeから検証していきます。設定値は以下の通りです。
<img width="289" alt="image.png (34.5 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/cf527d29-1b17-43c1-93cc-003126e0ab6f.png">

プロンプトを投げて会話してみました。
<img width="720" alt="image.png (124.6 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/a69828c9-480f-4e9e-8abb-03a75b2ec294.png">

<img width="720" alt="image.png (74.4 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/15de9881-8382-4074-897a-cd09842f552f.png">

<img width="772" alt="image.png (83.3 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/b1307242-fefe-464c-b126-d5318fb65727.png">

<img width="720" alt="image.png (175.5 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/b4adb70e-2c34-4dbe-acc6-15dcd21d6065.png">

会話を重ねるたびに文量が増えているのは気になるところですが、特に違和感なく会話できました。


## 続いてLlama
続いてLlamaの検証を行います。
ちなみにLlamaを選定した理由は、なんとなく気になったからです。

設定値は以下の通りです。Claudeと項目が少し異なりますが、出力される文字数をClaudeと揃えています。
<img width="350" alt="image.png (30.7 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/bc903390-efa5-4351-96f7-bdfda07898af.png">


Llamaにも同じ日本語のプロンプトを投げてみます。
<img width="480" alt="image.png (64.2 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/35406781-601d-4593-a871-2c3e2c0801fb.png">

？？？

（画像では見切れていますが）もう一度同じプロンプトを投げてみました。

<img width="480" alt="image.png (26.4 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/92f3a7ce-ab6b-455a-b2af-5e1b9bbc6290.png">

？？？
無限の空白が返されてしまいました。

日本語は無理かもと悟り、以下のように同じ意味の英語のプロンプトを投げてみました。

```plaintext
You are an English teacher.I want to practice speaking English, so please pose any questions to me. I will answer in English and you can continue the coversation with me. 
```

<img width="444" alt="image.png (67.3 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/17ec6665-3da8-45a3-8b87-f462946d7b23.png">

お！会話ができそうです。

<img width="360" alt="image.png (44.2 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/1e053ad7-f266-456d-9c44-97408fb54914.png">

ちょっと怪しい雰囲気になってきましたが会話を続けます。

<img width="360" alt="image.png (60.5 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/b42ea914-a074-4880-ac99-5e8fb5feb653.png">

？？？
Llamaが自分自身と会話し始めてしまいました。

<img width="360" alt="image.png (63.7 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/d5f7f186-51c3-4a35-9420-af8b87c5fbae.png">

もはや会話に入り込む隙も与えてくれません。
とりあえずペパロニが好きで、家にピザ窯があることはわかりました。

この後一度プロンプトを削除して最初からやり直したのですが、今度は最初から自分自身と会話してしまいました。


# 結論
Claude vs Llamaで英会話の精度を比較しようとしましたが、Llamaとはうまく会話することができませんでした。
プロンプトの書き方など工夫の余地はありますが、私のようにプロンプトエンジニアリングに対する経験が浅く、サクッと英会話の練習をしたいのであれば、まずはClaudeを使うことをお勧めします。


# ちなみに
コストについては以下の通りです。

Claude
<img width="1219" alt="image.png (25.4 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/1861ea17-171e-4493-a75f-cd3a331e9f6e.png">

Llama
<img width="1196" alt="image.png (25.5 kB)" src="https://img.esa.io/uploads/production/attachments/1854/2023/12/19/141998/492fb4f2-93cb-4305-a2c8-cfb7f2d1f2ff.png">

Llamaの方がコストが抑えられるので、大量にやり取りする際はLlamaに工夫したプロンプトを投げた方が良さそうです。（[参考](https://aws.amazon.com/jp/bedrock/pricing/)）