モデル比較

Claude Fable 5.1 vs Claude Haiku 4.5

料金・コンテキスト長・実際の回答で比較(2026年9月時点)

Claude Fable 5.1(Anthropic)とClaude Haiku 4.5(Anthropic)を、FastMetalのゲートウェイで実際に呼び出せる条件で比較します。どちらも同じOpenAI互換エンドポイントとAPIキーから利用でき、切り替えは model の文字列を変えるだけです。

スペックと料金

anthropic logoClaude Fable 5.1anthropic logoClaude Haiku 4.5
提供元AnthropicAnthropic
入力(100万トークンあたり)¥1,787¥184.8
出力(100万トークンあたり)¥8,935¥924
想定コスト(入力1,000・出力500トークン × 1,000回)¥6,255¥647
コンテキスト長1,000,000 トークン200,000 トークン
リリース日2026/9/12025/10/15
入力モダリティtext, image, fileimage, text
アリーナ 総合#3 · ELO 1,504#131 · ELO 1,413
アリーナ 日本語圏外#112 · ELO 1,357
アリーナ コーディング#34 · ELO 1,517#96 · ELO 1,481

料金はFastMetalの円建て単価(税別)。アリーナ順位は公開リーダーボードの最新取得時点の値です。

どちらを選ぶべきか

  • 料金重視ならClaude Haiku 4.5。出力100万トークンあたり¥924で、Claude Fable 5.1より90%安くなります。
  • 総合の評価はアリーナ順位でClaude Fable 5.1が上です(3位。Claude Haiku 4.5は131位)。
  • コーディングの評価はアリーナ順位でClaude Fable 5.1が上です(34位。Claude Haiku 4.5は96位)。
  • 長い文書を扱うならClaude Fable 5.1。コンテキスト長は1,000,000トークンで、Claude Haiku 4.5の200,000トークンより広くとれます。
  • 迷ったら両方を同じキーで試せます。model の文字列を変えるだけで切り替わり、料金はそれぞれの単価で従量課金されます。

同じプロンプトへの実際の回答

FastMetalのゲートウェイが返した回答をそのまま並べています。ベンチマークの数字ではなく、実際の出力です。

このエラーをデバッグして

以下のエラーがPythonアプリケーションで発生しています。原因を特定して修正してください。 Traceback (most recent call last): File "app.py", line 23, in get_user_orders total = sum(order["price"] * order["quantity"] for order in orders) TypeError: unsupport…

Claude Fable 5.1

## 原因 エラーメッセージ `unsupported operand type(s) for *: 'str' and 'int'` は、`order["price"]` が **文字列(str)** として返ってきていることを示しています。`quantity` は int なので、`"1200" * 3` のような演算になり失敗しています。 `price` が文字列になる典型的な原因は次のいずれかです。 1. **DBのカラム型が `VARCHAR`/`TEXT` になっている**(本来は `DECIMAL` や `INTEGER` にすべき) 2. **DBドライバやラッパー(`db.query`)が値を文字列で返している**(例:SQLite で型宣言が曖昧、あるいは独自ラッパーが全部文字列化している) 3. データ投入時に文字列として `INSERT` された行が混在している ## 修正方法 ### 根本対策(推奨):DBスキーマを直す 金額を文字列で保存しているのが問題なら、カラム型を数値型に変更します。 ```sql -- MySQL / PostgreSQL の例 ALTER TABLE orders MODIFY price DECIMAL(10, 2) NOT NULL; -- MySQL ALTER TABLE orders ALTER COLUMN price TYPE DECIMAL(10, 2) USING price::DECIMAL; -- PostgreSQL ``` 金額計算には浮動小数点誤差を避けるため `DEC…
応答時間 21.8秒出力 1362 トークン

Claude Haiku 4.5

# エラー原因と修正方法 ## 原因 **`order["price"]`が文字列型(str)で返されているため、整数との乗算ができない**ことが原因です。 データベースから取得したデータが文字列として返されており、数値計算ができない状態になっています。 ## 修正方法 ### **方法1: 型変換(推奨)** ```python def get_user_orders(user_id): orders = db.query("SELECT price, quantity FROM orders WHERE user_id = %s", user_id) total = sum(float(order["price"]) * int(order["quantity"]) for order in orders) return {"user_id": user_id, "total": total, "orders": orders} ``` ### **方法2: 各要素を個別に変換** ```python def get_user_orders(user_id): orders = db.query("SELECT price, quantity FROM orders WHERE user_id = %s", user_id) total = 0 for order in orders: price = float(order["price"]) quantity = int(order…
応答時間 4.4秒出力 729 トークン

コードレビュー

以下のTypeScript関数をレビューして、可読性・パフォーマンス・ベストプラクティスの観点から改善点を提案してください。 async function fetchAllUsers(page: number = 1): Promise<any[]> { let allUsers: any[] = []; let hasMore = true; let currentPage = page; while (hasMo…

Claude Fable 5.1

以下、観点ごとに指摘と改善案をまとめます。 ## 1. 型安全性(最優先) `any[]` だと戻り値の構造がまったく保証されず、呼び出し側でも補完・型チェックが働きません。API のレスポンス型と返却する型を分けて定義しましょう。 ```ts interface ApiUser { id: string; first_name: string; last_name: string; email: string; status: "active" | "inactive" | "deleted"; } interface ApiUsersResponse { users: ApiUser[]; // total や has_more が返るならここに追加 } export interface User { id: string; name: string; email: string; } ``` ## 2. エラーハンドリングの欠如 - `response.ok` を確認していないため、404/500 でも `.json()` を試みてしまい、意図しない例外や `data.users` が `undefined` で `TypeError` になります。 - ネットワークエラー時の挙動が未定義です。 - API 側の不具合でずっと 100 件返し続けると無限ループになります(安全弁がない)。 ## 3. 可読性 - インデックス付き `for` + `data.users[i]` の繰り返しは冗長。`filter` /…
応答時間 42.1秒出力 2619 トークン

Claude Haiku 4.5

# TypeScript関数のレビューと改善案 ## 🔴 主な問題点 ### 1. **型安全性の欠如** ```typescript // ❌ `any[]` は危険 async function fetchAllUsers(page: number = 1): Promise<any[]> // ✅ 改善: 型を定義 interface User { id: string; name: string; email: string; } interface ApiResponse { users: RawUser[]; } interface RawUser { id: string; first_name: string; last_name: string; email: string; status: string; } ``` ### 2. **エラーハンドリングがない** ```typescript // ❌ fetch失敗時の処理がない const response = await fetch(`/api/users?page=${currentPage}&limit=100`); // ✅ 改善 const response = await fetch(`/api/users?page=${currentPage}&limit=100`); if (!response.ok) { throw new Error(`Failed to fetch users: ${response.status}`); }…
応答時間 8.7秒出力 1343 トークン

SQLクエリの最適化

以下のSQLクエリは500万行のテーブルに対して実行すると30秒以上かかります。最適化してください。 SELECT p.product_name, c.category_name, COUNT(o.order_id) as order_count, SUM(o.amount) as total_sales, AVG(r.rating) as avg_rating FROM products p LEFT JOIN…

Claude Fable 5.1

## 問題点の整理 このクエリは「遅い」だけでなく**結果も正しくない**可能性が高いです。まずそこから整理します。 ### 1. 【最重要】JOIN のファンアウトで集計値が壊れている `order_details` と `reviews` を同じ商品に対して同時に JOIN しているため、行数が「注文明細数 × レビュー数」に膨張します。 - 注文10件・レビュー5件の商品 → 50行になり、`COUNT`/`SUM` は **5倍**に、`AVG(rating)` は注文数で重み付けされた値になる - パフォーマンス悪化の主因でもあり(中間結果が数億行になり得る)、正しさの面でも致命的です ### 2. LEFT JOIN が実質 INNER JOIN になっている `WHERE o.created_at >= '2024-04-01'` があるため、注文のない商品は NULL 判定で落ちます。`LEFT JOIN` にする意味がなく、オプティマイザの選択肢を狭めるだけです。`NULLS LAST` も意味を持ちません。 ### 3. インデックス不足 - `order_details(product_id)` / `order_details(order_id)` がない → 500万行の全件スキャン+Hash Join - `orders(status, created_at)` がない → 絞り込みに使えない - `reviews(product_id)` がない ### 4. GROUP BY が文字列カラム `product_name`, `cate…
応答時間 48.9秒出力 3436 トークン

Claude Haiku 4.5

# SQLクエリ最適化案 ## 🔴 主な問題点 1. **不適切なJOIN順序** - 大量データをJOINしてからFILTER 2. **インデックス不足** - WHERE/ON句のカラムにインデックスなし 3. **重複集計** - reviews テーブルとの LEFT JOIN により行が増幅 4. **GROUP BY非効率** - product_name で集計(IDの方が効率的) --- ## ✅ 最適化クエリ ```sql SELECT p.product_name, c.category_name, stats.order_count, stats.total_sales, stats.avg_rating FROM products p LEFT JOIN categories c ON c.id = p.category_id LEFT JOIN ( -- サブクエリで先に集計・フィルタリング SELECT od.product_id, COUNT(DISTINCT o.order_id) as order_count, SUM(o.amount) as total_sales FROM order_details od INNER JOIN orders o ON o.order_id = od.order_id WHERE o.status = '完了' AND o.created_at >= '2024-04-01' GROUP BY od.product_i…
応答時間 7.4秒出力 1184 トークン

他のプロンプトでも比較する →

よくある質問

Claude Fable 5.1とClaude Haiku 4.5、料金はどちらが安いですか?
出力100万トークンあたりClaude Fable 5.1は¥8,935、Claude Haiku 4.5は¥924で、Claude Haiku 4.5の方が安くなります(FastMetalの円建て単価・税別)。
Claude Fable 5.1とClaude Haiku 4.5のコンテキスト長の違いは?
Claude Fable 5.1は1,000,000トークン、Claude Haiku 4.5は200,000トークンです。
Claude Fable 5.1とClaude Haiku 4.5、評価が高いのはどちらですか?
公開アリーナの順位ではClaude Fable 5.1が上です(Claude Fable 5.1 3位、Claude Haiku 4.5 112位)。順位はリーダーボードの更新で変わります。
Claude Fable 5.1とClaude Haiku 4.5を同じAPIキーで使えますか?
はい。FastMetalのOpenAI互換エンドポイントで、model に "anthropic-claude-fable-5-1" または "anthropic-claude-haiku-4-5" を指定するだけで切り替えられます。料金はそれぞれの単価で、同じ前払い残高から従量課金されます。

どちらも同じAPIキーで試せます

アカウントを作成してクレジットを追加すれば、Claude Fable 5.1とClaude Haiku 4.5をブラウザのチャットとAPIの両方から呼び出せます。月額料金はありません。

Claude Fable 5.1の他の比較

Claude Haiku 4.5の他の比較