君は Anthropic Claude を知っているか?

ハンバーガーを食べたいとき、マクドナルドはまず思い浮かぶ候補でしょう。生成系 AI のサービスなら、 ChatGPT がまず思い浮かぶでしょう。しかしマクドナルドだけがハンバーガーを提供しているわけではないのと同様、生成系 AI も ChatGPT だけではありません。本記事では、様々な生成系 AI の中でも **Anthropic Claude** を掘り下げます。

Anthropic Claude を取り上げるのは、 OpenAI のモデルに匹敵する性能を持つためです。いくつかのベンチマークで、英語でだけでなく日本語でも GPT3.5 / GPT-4 に匹敵する精度であることが確認できます。

| [HuggingFace Chatbot Arena](https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard) | [The Rakuda Ranking of Japanese AI](https://yuzuai.jp/benchmark)  |
| --------------------------| ------|
|![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25990/779588c7-901f-6bfd-f3f5-734fc982a9ca.png) |  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25990/16fab5e0-904f-4fe1-5d74-fc516ca204dc.png) |

先日 Claude 2.1 発表に伴い価格変更があり、 GPT-4 turbo より安価かつ扱えるトークンが長くなりました。表中の Claude Instant は軽量かつ速度重視のモデルで、 ChatGPT 3.5 より割高なものの 100k の長いコンテキストと 2 倍超高速かつ安定したレスポンスを提供します ( 社内で検証 ) 。 Claude と Claude Instant は、 ChatGPT と十二分に互角な、マクドナルドに対するモスバーガー的位置づけのモデルといえると言えます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25990/f246d05a-e25f-863f-bec8-7b508684da1b.png)

ちなみにハンバーガーチェーンについて Claude に教えてもらったのが次の図です。 [LINE リサーチによると](https://lineresearch-platform.blog.jp/archives/42655290.html) マクドナルド、モスバーガー、ケンタッキー、バーガーキング、ロッテリア の順で挙げています。モデル自身の記憶のみから回答させているため不正確な部分はありますが、なかなか的を得ているのではないでしょうか。

```plantuml
@startuml
<style>
root {
  Padding 0
  Margin 10
}
footer {
  FontColor black
  FontSize 18
}
</style>
footer Anthropic Claude に日本のバーガーチェーンについて聞いた図
title <img:https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25990/ed0ec5f2-11f3-2e9f-e5bd-5489c05b53d7.png>
@enduml
```

上の回答は [Claude.ai](https://claude.ai) から得ています。 Claude はすぐに使える Claude.ai 、また AWS の  Amazon Bedrock からも利用できます。 Amazon Bedrock での使い方は [Amazon Bedrock のはじめ方](https://qiita.com/icoxfog417/items/869e2093e672b2b8a139) に詳しくまとめています。

次のセクションでは、 Anthropic とはどんな企業で Claude とはどんなモデルなのか深堀していきたいと思います。

## Anthropic が設立された背景

Anthropic は 2021 年に創業された企業です。 CEO の [Dario Amodei](https://www.linkedin.com/in/dario-amodei-3934934/) と [Daniela Amodei](https://www.linkedin.com/in/daniela-amodei-790bb22a/) を含め、創業時の 7 名はいずれもOpenAI のメンバーです ( ちなみに Dario さんと Daniela さんは兄妹です ) 。特に Dario さんは Vice President of Research として GPT-2 、 GPT-3 の開発を指揮していました。実際、 GPT-2 と GPT-3 の論文の著者に Dario さんの名前を見ることができます。

* GPT-2 : [Language Models are Unsupervised Multitask Learners](https://www.semanticscholar.org/paper/Language-Models-are-Unsupervised-Multitask-Learners-Radford-Wu/9405cc0d6169988371b2755e573cc28650d14dfe)
* GPT-3 : [Language Models are Few-Shot Learners](https://arxiv.org/abs/2005.14165)

なぜ Anthropic を創業したのか ? について、 Dario さんと Daniela さんは「 AI の安全性について長く一緒に仕事をし、同じ方向を向いて 7 名で密な仕事をしたかったから」と語っています (*1) 。
安全性という言葉に、理論先行や長々した議論のイメージがあるかもしれません。 Anthropic は **"Empirical Safety"** と呼ぶ「実際に観測された危険に対する安全策をとる」アプローチをとっています (*2) 。「実際観測された危険性」について対策をとるということです。このアプローチをとるためには、先進的なモデルをまず開発することが不可欠です。そのため、 Anthropic では性能を追求する Capabilities　、 モデルを安全・無害・有用にコントロールする Alignment Capabilities 、Alignment の結果を検証する Alignment Science の 3 つの研究を推進しています。 Scaling Law は Anthropic の研究の基本原則です。モデルやデータの拡大により Capabilities の向上を図るだけでなく、安全性対策も Alignment Capabilities により人力に依存せずスケールする手法を追求しています。

会社設立の背景を知ると、 Anthropic が OpenAI に匹敵するモデルが作れた理由がしっくりきます。

* 1 : [Daniela and Dario Amodei on Anthropic](https://futureoflife.org/podcast/daniela-and-dario-amodei-on-anthropic/)
* 2 : [Core Views on AI Safety: When, Why, What, and How](https://www.anthropic.com/index/core-views-on-ai-safety)

## Anthropic の生成系 AI : Claude の特徴

Claude は安全、無害、有用であるよう学習されています。 Anthropic は [Model Card](https://www-files.anthropic.com/production/images/Model-Card-Claude-2.pdf) を公開しており、それを読むことで学習データの内容やどのような安全性に関わるテストをしているのか知ることができます。 

長い入力を扱えるのは Claude の特徴です。最新の Claude 2.1 では非常に長い 200,000 もの入力を扱うことができます。[トークン数を数えられるアプリケーション](https://huggingface.co/spaces/icoxfog417/llm-token-counter)を使うと、手元の日本語書籍 1 章分 (15 ページ) が 13,000 トークンほどでした。なので 15 章、市販の書籍一冊まるまる入れることができます。論文や書籍をまとめたり、キャラクター性のあるチャットボットを作成するときに長大な記憶領域を入れるのに適した性質と言えます。

長い文章は構造をとらえにくい、指示と文章の境界が曖昧になる問題があります。この問題を解決するため、 Claude は XML タグをよく認識するようトレーニングされています。次に、 XML タグを効果的に使った質問回答のプロンプトの例を示します。

> 次のdocumentを注意深く読んでください。なぜなら、読み終わった後文章について質問するからです。
> 
> **\<document>**
>
>Amazon Bedrock は、AI21 Labs、Anthropic、Cohere、Meta、Stability AI、Amazon などの大手 AI 企業が提供する高性能な基盤モデル (FM) を選択できるフルマネージド型サービスです。また、生成系 AI アプリケーションの構築に必要な幅広い機能も備えているため、プライバシーとセキュリティを維持しながら開発を簡素化できます。Amazon Bedrock の包括的な機能を使用すると、さまざまなトップレベルの FM を簡単に試したり、微調整や検索拡張生成 (RAG) などの手法を使用してデータを使用してプライベートにカスタマイズしたり、旅行の予約や保険金請求の処理や広告キャンペーンの作成や在庫管理といった、複雑なビジネスタスクを実行するマネージドエージェントを作成したりできます。これらすべてを、コードを記述することなく実現できます。Amazon Bedrock はサーバーレスであるため、インフラストラクチャを管理する必要がありません。また、使い慣れた AWS サービスを使用して、生成系 AI 機能をアプリケーションに安全に統合してデプロイできます。
>
>**\</document>**
>
>document から、質問に対する回答の根拠となるquotesを抽出し順に番号をつけ書き出してください。quotesはなるべく短くしてください。見つからない場合は「関連するquotesはありませんでした」と回答してください。
>
>次に、質問に答えてください。quotesを回答に含める時は、回答の末尾に引用したquotesの番号を記載してください。
>
>質問: Bedrockでできるビジネスタスクを教えてください?
>
>応えられない場合は答えられないと回答してください。

外部から与える情報を document のタグで囲っています。今回は AWS のホームページからとってきた Amazon Bedrock の説明を document に入れています。タグを利用することで情報の境界が明確になり、文章を読ませた後に指示を記載できます。大規模言語モデルは次に続くテキストを予測するモデルですから、基本的に指示は末尾にあったほうが有利になります。

上記プロンプトを Claude に入力すると、次の回答が得られます。

> Bedrockでできるビジネスタスクに関するquotesを抜き出します。
>
>"旅行の予約や保険金請求の処理や広告キャンペーンの作成や在庫管理といった、複雑なビジネスタスクを実行する"
>質問: Bedrockでできるビジネスタスクを教えてください?
>
>回答: Bedrockでは、旅行の予約、保険金請求の処理、広告キャンペーンの作成、在庫管理などの複雑なビジネスタスクを実行することができます。(1)

きちんと入力文章の該当箇所が抜けていることがわかります。質問する前に次の指示を与えることで、 JSON 形式で回答も得られます。

> 結果はquestionに質問、answerに回答、quotesにquoteの配列をセットしたJSON形式で出力してください。JSON以外のあらゆる出力は結果に含めないでください。

得られた出力は次の通りです。きちんと構造化できていることがわかります。

```json
{
   "question": "Bedrockでできるビジネスタスクを教えてください?",
   "answer": "Bedrockでできるビジネスタスクとして、旅行の予約や保険金請求の処理、広告キャンペーンの作成や在庫管理といった複雑なタスクを実行するマネージドエージェントを作成できる。",
   "quotes": [
      "旅行の予約や保険金請求の処理や広告キャンペーンの作成や在庫管理といった、複雑なビジネスタスクを実行するマネージドエージェントを作成"
   ]
}
```

Anthropic Claude ではオフィシャルのプロンプトガイドが提供されており、目的に応じたプロンプトの使い方を学ぶことができます。

* [Guide to Anthropic's prompt engineering resources](https://docs.anthropic.com/claude/docs)

[Anthropic Claude Advent Calendar](https://qiita.com/advent-calendar/2023/anthropic-claude) には、 Claude を使うための知見がガッツリまとまっています。ぜひ Claude ライフを始めてみましょう！