← レッスンに戻る
第3章 · Claude API入門

パラメータ: temperature, top_p, max_tokens

Parameters · 約 8 分

重要キーワード

English日本語説明
Temperature 温度 出力のランダム性 (0.0 ≒ 決定論, 1.0 ≒ 多様)
top_p Nucleus sampling 累積確率 p までの候補からサンプリング
max_tokens 最大出力 応答の上限トークン数
stop_sequences 停止文字列 出現すると応答が止まる文字列リスト

主要パラメータ

🗓️ 2026 年の大きな変化 — 「ツマミ」の世代交代 このレッスンの temperature / top_p は Haiku 4.5 や Sonnet 4.6 などでは今も使えます が、 Opus 4.7 以降と Claude 5 世代 (Sonnet 5 / Opus 5 / Opus 5.5 / Fable 5.1) では指定すると 400 エラー になります。 最新モデルで回答の性質を変えるツマミは、次の 2 つに移りました。

変えたいもの 旧来のツマミ 最新モデルでのやり方
ばらつき・創造性 temperature / top_p プロンプトで「大胆に 3 案」「一番無難な 1 案」と頼む
考える深さ budget_tokens output_config={"effort": "high"} (→ ch4-l8)
出力の形 プリフィル 構造化出力 output_config.format (→ ch4-l7)

🎚️ たとえるなら「音響卓からスマートスピーカーへ」 ——以前は低音・高音のつまみを 1 つずつ回していましたが、 今は「落ち着いた感じで」と 言葉で頼む と、細かい調整はモデルがやってくれる、という方向に進んでいます。 下の解説は「今も使えるモデル向けの知識」+「なぜ廃止されたかを理解するための基礎」として読んでください。

temperature (温度)

ランダム性 を制御します。 - 0.0: ほぼ決定論的 (毎回同じ出力)。 - 1.0: 多様で創造的。 - 推奨: - 分類・抽出: 0.0 - 文章生成: 0.7 - 創作: 1.0

top_p (Nucleus Sampling)

確率の累積が p になるまでのトークン候補からサンプリング。 通常は temperature と併用せず、どちらか一方で十分です (Anthropic 公式は temperature 派)。

max_tokens

出力 の上限トークン数 (入力ではない)。 不足するとレスポンスが途中で切れて stop_reason="max_tokens" になります。

⚠️ 入力との合算で課金 されるので、入力 + 出力 が極端に大きくならないよう注意。

stop_sequences

ここに含まれる文字列が出力に現れたら停止します。 区切り文字を強制したいときに有効。

競合の料金プランを調べて。

metadata.user_id

ユーザー単位のレートリミットや乱用検知に使われる識別子。 個人特定情報 (PII = Personally Identifiable Information) ではなく、 ハッシュ化した ID を入れるのが推奨です。

## 目的
来週月曜の経営会議で「競合プライシング動向」を 5 分で報告するため。

## 入力
Drive 内 `/marketing/competitors.csv` の 30 社分のリスト。
- 列: 会社名, 公式サイト URL, セグメント, 国
- 主要セグメントは「mid-market」「enterprise」「smb」のいずれか

## 手順
1. 各社の公式サイトから「Pricing」「料金」「Plans」ページを探す
2. プラン名・月額・年額・含まれる機能をスクレイピング
3. 取れない場合は「N/A」と記録 (推測しない)
4. 通貨は USD に統一 (為替は当日のレートで概算)
5. プランの構造 (フリーミアム / 段階制 / 商談型) を分類

## 出力
Drive `/marketing/competitor-pricing-report-2026-05.md` に以下を保存:

```markdown
# 競合プライシング動向 (2026-05)

## サマリ (3 行)
...

## 全社一覧表
| 会社 | プラン構造 | 最安 (USD/月) | エンタープライズ | 典拠 URL | 取得日 |
| --- | --- | --- | --- | --- | --- |
...

## セグメント別の傾向
### Mid-market
...
### Enterprise
...

## 注目すべき動き 5 点
...

実例: 決定論的 vs 創造的

→ これくらい書いて初めて、人間相当の品質の成果物が返る。

---

## 結果の受け渡し (Handoff) パターン

成果物をどう受け取るかも設計の一部。

### パターン 1: Drive / Notion へのファイル保存

最も一般的。Connector 経由でクラウドに保存。

試して比較

同じプロンプトで temperature を変えると応答がどう変わるか体感しましょう。

▶ T=0 で詩を書かせる
temperature=0.0 想定で「春の雨」をテーマに俳句を 1 句書いてください。
▶ T=1 で詩を書かせる
temperature=1.0 で創造的に「春の雨」をテーマに俳句を 1 句書いてください。意外な角度を歓迎します。

演習問題

演習 1: temperature を変えて再現性を測る

同じ分類タスクを temperature=0.0 と 1.0 で 5 回ずつ 実行し、答えのばらつきを観察してください。

プロンプト:

次のレビューの感情を positive / negative / neutral のいずれかで答えてください。 レビュー: 「思っていたよりは普通でした」

0.0 では同じ答えに、1.0 では揺らぎが出るはずです。

スタータープロンプト:
次のレビューの感情を positive / negative / neutral のいずれかで答えてください。理由は不要、ラベルだけ返答。

レビュー: 「思っていたよりは普通でした」
ヒントを見る

Playground 上部の temperature を 0 と 1 に切り替えて 5 回ずつ送ってみましょう。境界事例 (中立っぽい) ほど 1.0 で揺れます。

理解度チェック

  1. 決定論的な分類タスクに最適な temperature は?
    1. 0.0 付近
    2. 0.5
    3. 1.0
    4. 2.0
  2. max_tokens は何を制限する?
    1. 入力
    2. 出力
    3. 両方
    4. 保存期間
  3. metadata.user_id に入れるべきは?
    1. 本名・メールアドレス
    2. ハッシュ化された不可逆 ID
    3. クレジットカード番号
    4. API キー
  4. `stop_sequences=["</end>"]` を指定したときの挙動は?
    1. </end> が出力されると停止
    2. </end> が入力にあるとエラー
    3. max_tokens を上書きする
    4. ストリーミングを無効化
  5. Sonnet 5 や Opus 5 で temperature=0.2 を指定したら 400 エラーになりました。最新モデルで回答のばらつきを抑えたいときの正しい方法は?
    1. top_p を 0.1 にする
    2. プロンプトで「一番無難な答えを 1 つだけ」のように言葉で頼む
    3. temperature を 0 にすれば通る
    4. 最新モデルではばらつきを抑える方法はない
解答と解説を見る
  1. A — ランダム性を抑えたいので 0.0 付近にします。
  2. B — max_tokens は出力 (生成) の上限です。
  3. B — PII を避け、ハッシュ化された ID を使うのが推奨です。
  4. A — 出力中に該当文字列が出現すると応答を打ち切ります。
  5. B — Opus 4.7 以降と Claude 5 世代では temperature / top_p / top_k の指定自体が 400 エラーになります。つまみを回す代わりに、言葉で「どんな答えが欲しいか」を伝えるのが最新の作法です。