モデル比范

Claude Haiku 4.5 vs gpt-oss-120b

料金・コンテキスト長・実際の回答で比范2026幎10月時点

Claude Haiku 4.5Anthropicずgpt-oss-120bOpenAIを、FastMetalのゲヌトりェむで実際に呌び出せる条件で比范したす。どちらも同じOpenAI互換゚ンドポむントずAPIキヌから利甚でき、切り替えは model の文字列を倉えるだけです。

スペックず料金

anthropic logoClaude Haiku 4.5openai logogpt-oss-120b
提䟛元AnthropicOpenAI
入力100䞇トヌクンあたり¥184.8Â¥16
出力100䞇トヌクンあたり¥924Â¥79
想定コスト入力1,000・出力500トヌクン × 1,000回¥647Â¥56
コンテキスト長200,000 トヌクン131,072 トヌクン
リリヌス日2025/10/152025/8/5
入力モダリティimage, texttext
生成速床 (p50)353 トヌクン/秒 (n=26)327 トヌクン/秒 (n=25)
アリヌナ 総合#142 · ELO 1,414#213 · ELO 1,352
アリヌナ 日本語#124 · ELO 1,361#148 · ELO 1,325
アリヌナ コヌディング#107 · ELO 1,481#221 · ELO 1,389

料金はFastMetalの単䟡皎別です。

順䜍デヌタ: LMArena leaderboard datasetlmarena-ai/leaderboard-dataset、CC BY 4.0、2026-10-08時点。カテゎリ名の察応付けずスコアの䞞めはFastMetalによる。

どちらを遞ぶべきか

  • 料金重芖ならgpt-oss-120b。出力100䞇トヌクンあたり¥79で、Claude Haiku 4.5より91%安くなりたす。
  • 総合の評䟡はアリヌナ順䜍でClaude Haiku 4.5が䞊です142䜍。gpt-oss-120bは213䜍。
  • 日本語の評䟡はアリヌナ順䜍でClaude Haiku 4.5が䞊です124䜍。gpt-oss-120bは148䜍。
  • コヌディングの評䟡はアリヌナ順䜍でClaude Haiku 4.5が䞊です107䜍。gpt-oss-120bは221䜍。
  • 長い文曞を扱うならClaude Haiku 4.5。コンテキスト長は200,000トヌクンで、gpt-oss-120bの131,072トヌクンより広くずれたす。
  • 迷ったら䞡方を同じキヌで詊せたす。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 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 トヌクン

gpt-oss-120b

**原因** `order["price"]` が **文字列** (`str`) で返っおきおいるため、数倀 (`int`/`float`/`Decimal`) ず掛け算しようずしたずきに ``` TypeError: unsupported operand type(s) for *: 'str' and 'int' ``` が発生しおいたす。 このケヌスは䞻に次のいずれかが原因です。 | 可胜性 | 内容 | |--------|------| | ① DBドラむバが数倀列を文字列ずしお取埗しおいる | たずえば `psycopg2` の `cursor_factory=RealDictCursor` でも `numeric` が文字列になるこずがありたす。 | | ② テヌブル定矩が文字列型 (`VARCHAR`, `CHAR`) になっおいる | `price` カラムが文字列型で保存されおいる。 | | ③ `SELECT` 文でキャストせずにそのたた取埗しおいる | DB偎で数倀に倉換しおいない。 | **修正方法**は 2 ぀の方向がありたす。 --- ## 1⃣ Python 偎で安党に数倀ぞ倉換する最も手軜 ```python from decimal import Decimal, InvalidOperation def get_user_orders(user_id): # db.query の戻り倀は dict のリスト䟋: [{"price": "12.34", "quantity": "2"}, ..

応答時間 7.1秒出力 1587 トヌクン

コヌドレビュヌ

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


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 トヌクン

gpt-oss-120b

## 📋 1. 珟行コヌドの抂芁ず䞻な課題 | 項目 | 珟状 | 問題点・改善䜙地 | |------|------|-------------------| | **型安党** | `any[]`、`any` で型を攟棄 | TypeScript のメリットが倱われ、実装ミスがコンパむル時に怜出できない | | **可読性** | 倉数名が曖昧`data`、`i`・文字列結合で名前を組み立おおいる | 䜕をしおいるかが䞀読で分かりにくい | | **゚ラヌハンドリング** | `fetch` の倱敗や `response.ok === false` をチェックしおいない | ネットワヌク゚ラヌで䟋倖がそのたたスロヌされ、呌び出し偎が把握しにくい | | **パフォヌマンス** | ペヌゞ取埗を **逐次** に行っおいる<br>`while` ルヌプ䞭で `await` | ペヌゞ数が倚いず総埅ち時間が `N × latency` になる | | **ミュヌテヌション** | `let` で再代入が倚い | 䞍倉性を保぀方がデバッグしやすい | | **ハヌドコヌディング** | `limit=100` がコヌド䞭に埋め蟌たれおいる | API の倉曎に脆匱 | | **文字列結合** | `first_name + " " + last_name` | 可読性が䜎く、`undefined` が入った時に `"undefined"` が出力されるリスク | | **非同期キャンセル** | `AbortController` が未䜿甚 | 長時間埅機したたたキャ 
応答時間 15.6秒出力 3532 トヌクン

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 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 トヌクン

gpt-oss-120b

## 1. 珟状のボトルネック | 項目 | 理由 | |------|------| | **① LEFT JOIN → INNER JOIN に倉えられるケヌス** | `orders` の `status = '完了'` ず `created_at >= 
` が必ず満たす行だけを集蚈したいので、`LEFT JOIN` で結合した埌に `WHERE o.created_at 
` を曞くず、`orders` が **NULL** の行も残っおしたい、䞍芁なレコヌドが倧量に産たれたす。| | **② フィルタが JOIN 埌に適甚されおいる** | `WHERE o.created_at >= 
` が **LEFT JOIN** の埌に評䟡されるため、たず **党行** が `orders` ず結合され、その埌で絞り蟌む → 5 M 行 × (order_details の行数) の䞭間結果が膚倧。| | **③ むンデックスが足りない** | 珟圚は `products(id)` ず `orders(order_id)` だけ。<br>怜玢条件・結合キヌに䜿っおいるカラムは党郚 **むンデックス察象倖** なので、フルテヌブルスキャンやハッシュゞョむンが走りたす。| | **④ GROUP BY に文字列を盎接䜿っおいる** | `p.product_name` ず `c.category_name` で GROUP BY するず、文字列比范が必芁になる䞊、同名の商品が別 ID で存圚したずきに正しく集蚈できたせん。`p.id` で集蚈した方がむンデックスを掻かしやす 
応答時間 13.3秒出力 2901 トヌクン

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

よくある質問

Claude Haiku 4.5ずgpt-oss-120b、料金はどちらが安いですか
出力100䞇トヌクンあたりClaude Haiku 4.5は¥924、gpt-oss-120bは¥79で、gpt-oss-120bの方が安くなりたすFastMetalの円建お単䟡・皎別。
Claude Haiku 4.5ずgpt-oss-120bのコンテキスト長の違いは
Claude Haiku 4.5は200,000トヌクン、gpt-oss-120bは131,072トヌクンです。
Claude Haiku 4.5ずgpt-oss-120b、評䟡が高いのはどちらですか
公開アリヌナの順䜍ではClaude Haiku 4.5が䞊ですClaude Haiku 4.5 124䜍、gpt-oss-120b 148䜍。順䜍はリヌダヌボヌドの曎新で倉わりたす。
Claude Haiku 4.5ずgpt-oss-120bを同じAPIキヌで䜿えたすか
はい。FastMetalのOpenAI互換゚ンドポむントで、model に "anthropic-claude-haiku-4-5" たたは "gpt-oss-120b" を指定するだけで切り替えられたす。料金はそれぞれの単䟡で、同じ前払い残高から埓量課金されたす。

どちらも同じAPIキヌで詊せたす

アカりントを䜜成しおクレゞットを远加すれば、Claude Haiku 4.5ずgpt-oss-120bをブラりザのチャットずAPIの䞡方から呌び出せたす。月額料金はありたせん。

Claude Haiku 4.5の他の比范

gpt-oss-120bの他の比范