この例では、文字列が回文かどうかをチェックするPython関数をClaudeに書いてもらいます。

前提条件

このクイックスタートを完了するには、以下が必要です:

AnthropicはAPIに直接HTTPリクエストを送ることができますが、PythonとTypeScript SDKも提供しています。

Workbenchから始める

タスクに関係なく、APIに送るリクエストは全て、適切に設定されたプロンプトをAnthropicのAPIに送信します。Claudeを最大限に活用する方法を学ぶ際は、開発プロセスをWorkbenchから始めることをお勧めします。WorkbenchはClaudeのWebベースのインターフェースです。

Anthropic Consoleにログインし、Workbenchをクリックします。

中央のセクションのUserの下で、Claudeに質問してみましょう。

User
なぜ海は塩辛いのですか?

Runをクリックします。右側に以下のような出力が表示されます。

Response
海が塩辛い理由はいくつかあります:

1. 岩石の風化:何百万年もの間、雨や川、小川が鉱物塩を含む岩を浸食してきました。これらの塩は水の流出によって海に運ばれます。
2. 火山活動:海底火山や熱水噴出孔は、塩を含む鉱物を海水中に放出します。
3. 大気からの沈着:海水しぶきからの塩粒子は風によって運ばれ、再び海に沈着します。
4. 蒸発:海面から水が蒸発すると、溶解した塩が残り、残りの水の塩濃度が高くなります。
5. 生物学的プロセス:一部の海洋生物は、代謝の副産物として塩化合物を放出することで、海の塩分に寄与しています。

時間の経過とともに、これらのプロセスは海に塩を継続的に加えてきましたが、一方で蒸発は純水を取り除くため、海の現在の塩分濃度につながっています。海の塩の総量は比較的安定しています。これは、塩の流入が、蒸発岩の形成などのプロセスによる塩の除去とバランスが取れているためです。

これは良い答えですが、Claudeが与える答えの正確なタイプを制御したいとしましょう。例えば、Claudeが質問に詩でのみ答えることを許可する場合です。System Promptを追加することで、応答の形式、トーン、性格を制御できます。

System prompt
あなたは世界的な詩人です。短い詩でのみ答えてください。

再度Runをクリックします。

Response
海の塩辛い潮、
時と要素が織りなす物語。
岩と雨、ゆっくりと浸食され、
溶液に運ばれる鉱物。
永遠の時が過ぎ、塩は残り、
広大な、永遠の水の領域に。

Claudeの応答がどのように変化したかわかりますか?LLMは明確で直接的な指示によく反応します。役割の指示はシステムプロンプトまたはユーザーメッセージのどちらにも入れることができます。ユースケースに最適な結果が得られるよう、どちらの方法でテストすることをお勧めします。

出力に満足し、Claudeの使い方がわかったら、Workbenchを統合に変換します。

Get Codeをクリックすると、Workbenchセッションを表すコードが生成されてコピーされます。

SDKのインストール

AnthropicはPython(3.7以上)とTypeScript(4.5以上)用のSDKを提供しています。

プロジェクトディレクトリで、仮想環境を作成します。

Python
python -m venv claude-env

以下を使用して仮想環境をアクティブ化します

  • macOSまたはLinuxの場合、source claude-env/bin/activate
  • Windowsの場合、claude-env\Scripts\activate
Python
pip install anthropic

APIキーの設定

すべてのAPIコールには有効なAPIキーが必要です。SDKは環境変数ANTHROPIC_API_KEYからAPIキーを取得するように設計されています。Anthropicクライアントの初期化時にキーを指定することもできます。

export ANTHROPIC_API_KEY='your-api-key-here'

APIの呼び出し

適切なパラメータを/messages/createエンドポイントに渡すことで、APIを呼び出します。

Workbenchが提供するコードはコンストラクタでAPIキーを設定していることに注意してください。APIキーを環境変数として設定する場合は、以下のようにその行を省略できます。

claude_quickstart.py
import anthropic

client = anthropic.Anthropic()

message = client.messages.create(
    model="claude-3-5-sonnet-20240620",
    max_tokens=1000,
    temperature=0,
    system="あなたは世界的な詩人です。短い詩でのみ答えてください。",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "なぜ海は塩辛いのですか?"
                }
            ]
        }
    ]
)
print(message.content)

python3 claude_quickstart.pyまたはnode claude_quickstart.jsを使用してコードを実行します。

Response
[TextBlock(text="海の塩辛い潮、\n時と設計の物語。\n岩と川、鉱物を落とし、\n海底に蓄積。\n蒸発は塩を残し、\n広大な水の中に、永遠に祀られる。", type='text')]
Workbenchとコードサンプルはモデルのデフォルト設定(名前)、温度、サンプリングする最大トークン数を使用しています。

このクイックスタートでは、Console、Workbench、APIを使用して、基本的ではあるが機能的なClaudeを利用したアプリケーションを開発する方法を示しました。このワークフローを基盤として、さらに強力なユースケースに活用できます。

次のステップ

最初のAnthropicのAPIリクエストを行ったので、次は何ができるかを探ってみましょう: