モデル比較

Gemini 3.1 Pro Preview vs GLM 4.7

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

Gemini 3.1 Pro Preview(Google)とGLM 4.7(Z.ai)を、FastMetalのゲートウェイで実際に呼び出せる条件で比較します。どちらも同じOpenAI互換エンドポイントとAPIキーから利用でき、切り替えは model の文字列を変えるだけです。

スペックと料金

google logoGemini 3.1 Pro Previewz-ai logoGLM 4.7
提供元GoogleZ.ai
入力(100万トークンあたり)¥336¥67.2
出力(100万トークンあたり)¥2,016¥294
想定コスト(入力1,000・出力500トークン × 1,000回)¥1,344¥214
コンテキスト長1,048,576 トークン202,752 トークン
リリース日2026/2/192025/12/22
入力モダリティaudio, file, image, text, videotext
生成速度 (p50)763 トークン/秒 (n=26)—
アリーナ 総合#20 · ELO 1,487#95 · ELO 1,441
アリーナ 日本語#13 · ELO 1,496#54 · ELO 1,439
アリーナ コーディング#33 · ELO 1,521#107 · ELO 1,484

料金はFastMetalの単価(税別)です。

順位データ: LMArena leaderboard dataset(lmarena-ai/leaderboard-dataset、CC BY 4.0、2026-10-28時点)。カテゴリ名の対応付けとスコアの丸めはFastMetalによる。

どちらを選ぶべきか

  • 料金重視ならGLM 4.7。出力100万トークンあたり¥294で、Gemini 3.1 Pro Previewより85%安くなります。
  • 総合の評価はアリーナ順位でGemini 3.1 Pro Previewが上です(20位。GLM 4.7は95位)。
  • 日本語の評価はアリーナ順位でGemini 3.1 Pro Previewが上です(13位。GLM 4.7は54位)。
  • コーディングの評価はアリーナ順位でGemini 3.1 Pro Previewが上です(33位。GLM 4.7は107位)。
  • 長い文書を扱うならGemini 3.1 Pro Preview。コンテキスト長は1,048,576トークンで、GLM 4.7の202,752トークンより広くとれます。
  • 迷ったら両方を同じキーで試せます。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…

Gemini 3.1 Pro Preview

このエラーの**原因**と**修正方法**について解説します。 ### 1. 原因:取得したデータが「文字列(str)」になっている エラーメッセージの `TypeError: unsupported operand type(s) for *: 'str' and 'int'` は、**「文字列(`str`)と数値(`int`)で掛け算などの算術演算を行おうとした」**ということを意味しています。 データベース(MySQLやSQLiteなど)からデータを取得した際、`price`(価格)や `quantity`(数量)のカラムが数値型ではなく、**文字列としてPythonに渡されている**ことが根本的な原因です。 ※Pythonでは文字列と整数の掛け算(例: `"100" * 2`)を行うと `"100100"` という文字列の繰り返しになり、その後 `sum()` で合算しようとした際に型エラーを引き起こします。 ### 2. 修正方法:数値型(int や float)に変換する 計算を行う前に、取得したデータを正しい数値型に変換(キャスト)してあげる必要があります。 - `price`(価格)は小数が含まれる可能性があるため `float` - `quantity`(数量)は整数のため `int` #### 修正例 1(最もシンプルな修正) ```python def get_user_orders(user_id): orders = db.query("SELECT price, quantity FROM orders WHERE user_id…
応答時間 31.5秒出力 3663 トークン

GLM 4.7

### 原因 このエラーは、データベースから取得した値のデータ型が原因です。 `order["price"]`(または `order["quantity"]`)が**文字列 (`str`)** 型として返ってきているのに、コード内で数値計算(掛け算)をしようとしているため発生しています。 Pythonでは、文字列と整数を直接掛け合わせることはできません(数値への変換が必要です)。 多くのデータベースライブラリ(特に標準的なもの)は、カラムの型に関係なく、結果をデフォルトで文字列として返すことがあります。 ### 修正方法 計算を行う前に、文字列を数値型(`float` または `int`)に明示的に変換(キャスト)する必要があります。 通常、価格は小数点を含むことが多いため `float`、数量は `int` で変換します。 #### 修正後のコード ```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}…
応答時間 101.4秒出力 1460 トークン

コードレビュー

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

Gemini 3.1 Pro Preview

ご提示いただいたTypeScript関数は、ページネーションされたAPIからデータを取得し、フィルタリングと整形を行うという基本的な要件を満たしていますが、**型安全性の欠如、エラーハンドリングの漏れ、モダンなJavaScript/TypeScriptの記法を活用しきれていない点**など、いくつかの改善の余地があります。 「ベストプラクティス」「可読性」「パフォーマンス」の3つの観点からレビューと改善案を提案します。 --- ### 1. ベストプラクティス(TypeScript・堅牢性)の改善 * **`any` の排除:** 戻り値や変数に `any[]` が使われており、TypeScriptの最大のメリットである型安全性が失われています。APIからのレスポンス型と、整形後のユーザー型を `interface` または `type` で定義するべきです。 * **エラーハンドリングの追加:** ネットワークエラーや、サーバーからのエラーレスポンス(500や404など)が発生した場合、現在のコードではアプリケーションがクラッシュするか、予期せぬ動作をします。`try...catch` と `response.ok` のチェックが必要です。 * **マジックナンバーの排除:** `100` という制限値がURLと判定条件の2箇所にハードコードされています。定数として切り出すことで、仕様変更時のバグを防ぎます。 ### 2. 可読性の改善 * **モダンな配列操作メソッドの利用:** 伝統的な `for` ループと `dat…
応答時間 23.0秒出力 2782 トークン

GLM 4.7

ご提示いただいたTypeScript関数をレビューしました。 動作はしますが、型安全性、エラーハンドリング、可読性の観点でいくつか改善できる点があります。 以下に主要な改善点を挙げ、最後にリファクタリング後のコードを提示します。 ### 主な改善点 #### 1. 型安全性の向上 (`any` の排除) 現在、戻り値の型が `Promise<any[]>` となっており、関数の利用者は戻り値の構造(`id`, `name`, `email`)を型情報として得られません。また、`data` も `any` として扱われています。 * **改善:** APIのレスポンス型と、返却するユーザー型を `interface` で定義します。 #### 2. エラーハンドリングの強化 `fetch` はネットワークエラー以外(404, 500など)では例外を投げず、レスポンスを返します。また、`response.json()` のパースに失敗した場合の考慮もありません。 * **改善:** `response.ok` をチェックし、HTTPエラーの場合は例外を投げるようにします。また、`try-catch` で通信エラーを捕捉します。 #### 3. 可読性とモダンなJS/TS構文の使用 * **文字列結合:** `"first_name" + " " + "last_name"` は、テンプレートリテラル `` `${first_name} ${last_name}` `` の方が簡潔で読みやすいです。 * **ループ処理:** `for` ループ内で `if`…
応答時間 89.4秒出力 3915 トークン

ビジネスメール作成

取引先の田中部長に、納品予定の製品に不具合が見つかり、納期を1週間延期する必要がある旨を伝えるビジネスメールを作成してください。 条件: - 原因は品質検査で軽微な不具合が発見されたため - 代替案として暫定版を先に納品することも可能 - 改めてお詫びの訪問をしたい - 日本のビジネスマナーに沿った丁寧な文面にすること

Gemini 3.1 Pro Preview

納品予定の製品に関する納期延期のお詫びと、代替案のご提案を記載したビジネスメールの文面を作成いたしました。 状況に合わせて [ ] の部分を書き換えてご活用ください。 --- **件名:【重要・お詫び】[製品名]の納品延期に関するご相談(株式会社[自社名])** [取引先会社名] [部署名] 部長 田中様 平素は格別のお引き立てを賜り、厚く御礼申し上げます。 株式会社[自社名]の[ご自身の氏名]です。 本日は、[〇月〇日]に納品を予定しておりました「[製品名]」につきまして、 大変申し訳ないご報告とご相談があり、ご連絡申し上げました。 誠に恐縮ながら、出荷前の最終品質検査におきまして、 本製品に軽微な不具合が発見されました。 そのままお納めするわけにはいかず、修正および万全を期した再検査を行うため、 納期を1週間ほど延期させていただきたく存じます。 ■変更後の納品予定日 [〇月〇日(曜日)] 貴社のプロジェクトの進行に多大なるご迷惑をおかけいたしますこと、 心より深くお詫び申し上げます。 なお、貴社の業務への影響を最小限に抑えるための代替案として、 現在ご用意できている「暫定版」を、当初の予定通り[〇月〇日]に 先行して納品させていただくことも可能でございます。 ※その場合、後日完成版が仕上がり次第、速やかに差し替えさせていただきます。 延期後の日程での納品とするか、あるいは暫定版の先行納品をご希望されるか、 貴社のご都合をお伺いし、ご指示を賜れますでしょうか。 本来であれば、すぐにお伺いして直接お詫び申し上げるべきところ、 まずは取り急ぎメールでのご報…
応答時間 18.9秒出力 2229 トークン

GLM 4.7

ご提示いただいた条件に基づき、田中部長へのビジネスメールを作成しました。 状況に合わせて、[ ] の部分を書き換えてご使用ください。 *** **件名:【重要】製品「[製品名]」の納期遅延に関するお詫びとお願い** **本文:** [取引先会社名] 田中 部長 いつも大変お世話になっております。 [自社名]の[あなたの名前]です。 さて、このたび納品を予定しておりました製品「[製品名]」につきまして、誠に恐縮ながら納期を延期させていただきたくご連絡いたしました。 事情としましては、出荷前の最終品質検査において、軽微な不具合が発見されたためです。 弊社といたしましては、お客様に安心してご使用いただけるよう、品質の完璧を期すべきと判断し、現在修正作業を行っております。 つきましては、誠に勝手ながら、当初の納期より1週間遅れ、**[新しい納期日]** に納品させていただきたく存じます。 田中部長におかれましては、急な計画変更となり多大なるご迷惑とご心配をおかけしますことを、深くお詫び申し上げます。 なお、もしご予定の都合上、どうしても当初の納期に製品が必要でございましたら、不具合箇所を回避して使用いただける「暫定版」を先に納品することも可能でございます。お急ぎの場合は、暫定版にて先行手配させていただきますので、ご検討いただけますでしょうか。 この度は、信頼に応えることができず誠に申し訳ございません。 後日、改めて直接お詫びに伺いたいと考えております。翌週以降で、田中部長のご都合いかがでしょうか。 急なご連絡となり恐縮ではございますが、ご確認のほど何卒よろしくお…
応答時間 67.5秒出力 1930 トークン

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

よくある質問

Gemini 3.1 Pro PreviewとGLM 4.7、料金はどちらが安いですか?
出力100万トークンあたりGemini 3.1 Pro Previewは¥2,016、GLM 4.7は¥294で、GLM 4.7の方が安くなります(FastMetalの円建て単価・税別)。
Gemini 3.1 Pro PreviewとGLM 4.7のコンテキスト長の違いは?
Gemini 3.1 Pro Previewは1,048,576トークン、GLM 4.7は202,752トークンです。
Gemini 3.1 Pro PreviewとGLM 4.7、評価が高いのはどちらですか?
公開アリーナの順位ではGemini 3.1 Pro Previewが上です(Gemini 3.1 Pro Preview 13位、GLM 4.7 54位)。順位はリーダーボードの更新で変わります。
Gemini 3.1 Pro PreviewとGLM 4.7を同じAPIキーで使えますか?
はい。FastMetalのOpenAI互換エンドポイントで、model に "gemini-3.1-pro-preview" または "glm-4.7" を指定するだけで切り替えられます。料金はそれぞれの単価で、同じ前払い残高から従量課金されます。

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

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

Gemini 3.1 Pro Previewの他の比較

GLM 4.7の他の比較