ローカルAIでJSON出力するには?構造化出力・JSON Schemaを初心者向けに解説

公開日
2026-06-06
更新日
2026-06-06
情報確認日
2026-06-06

構造化出力とは、AIの回答を自由な文章ではなく、決まった形のJSONとして返しやすくする考え方です。ローカルAIでも、LM StudioやOllamaなどのAPI機能を使うことで、JSON Schemaに近い形で出力を制御できる場合があります。ただし、モデルやAPIの対応状況によって安定性は変わるため、出力後の検証、短いスキーマ、失敗時の再試行まで考える必要があります。

導入前に確認すること

  • Windowsのバージョン、メモリ容量、GPU/VRAM、空き容量を確認する
  • 最初は軽量モデル、短い質問、少ない同時作業から始める
  • 公式サイトの対応OS、利用規約、モデルのライセンスを確認する

ローカルAIでJSON出力するとは

JSON出力は、AIの回答をプログラムで扱いやすくするための方法です。普通の文章ではなく、項目名と値を決めた形で返すことで、分類、CSV変換、メモ整理、問い合わせ振り分け、診断結果の生成などに使いやすくなります。

APIでローカルAIを呼び出すだけなら文章でも十分ですが、アプリやスクリプトに組み込む場合は、回答を機械的に読み取れる形にする必要があります。その入口がJSON出力と構造化出力です。

構造化出力とは

構造化出力とは、AIの返答を決まった形に近づける考え方です。たとえば「カテゴリ」「重要度」「要約」「タグ」のように、返してほしい項目を先に決めておきます。

LM StudioやOllamaでは、JSON Schemaを使ったStructured Outputを扱える場合があります。ただし、どのモデルでも同じ安定性になるわけではなく、モデルの指示追従、API実装、スキーマの複雑さに影響されます。

JSON Schemaとは

JSON Schemaは、どの項目を、どの型で返してほしいかを指定する設計図のようなものです。たとえば、titleは文字列、scoreは数値、tagsは文字列の配列、というように形を決めます。

初心者はJSON Schemaの全仕様を覚える必要はありません。まずは、返してほしい項目を少なくし、文字列、数値、真偽値、配列くらいから始めると失敗を見つけやすくなります。

普通の文章出力とJSON出力の違い

比較軸普通の文章出力JSON出力注意点
読みやすさ人間には読みやすい人間には少し硬い画面表示用には文章のほうが自然な場合もある
プログラムからの扱いやすさ取り出しにくい項目ごとに扱いやすいJSONが壊れると処理が止まる
失敗時の影響少し変でも読めるパース失敗になりやすい検証と再試行が必要
向いている用途チャット、説明、下書き分類、抽出、CSV変換、診断結果用途で使い分ける
初心者向け度高い中くらい短いJSONから始める

普通のプロンプトで「JSONで返して」と頼むだけでは弱い理由

プロンプトに「JSONで返して」と書くだけでも試せますが、コードブロック、説明文、余計な前置き、末尾のコメントが混ざることがあります。人間には読めても、プログラムから見ると正しいJSONではない場合があります。

構造化出力やJSON Schemaを使えるAPIなら、より形を制御しやすくなります。それでも必ず正しいとは断定せず、出力後にJSONとして読み込めるか検証する前提にしてください。

OpenAI互換APIと構造化出力の関係

OpenAI互換APIでは、OpenAI向けコードに近い形でローカルAIを呼び出せる場合があります。LM StudioやOllamaも構造化出力に関連する公式情報を出しています。

ただし、OpenAI互換APIだからすべての構造化出力パラメータが同じとは限りません。対応エンドポイント、response format、JSON Schemaの扱い、エラー時の挙動はツールごとに確認してください。

LM StudioでJSON出力を考えるときのポイント

LM Studioでは、ローカルサーバーやOpenAI互換API、Structured Output関連の機能を使ってJSON出力を扱える場合があります。まず短いスキーマで、1件の分類やタグ付けから試してください。

モデルが重い場合や長い入力を渡す場合は、JSON出力の安定性以前に、コンテキスト長、モデルサイズ、GPU/VRAM、応答速度が問題になります。

OllamaでJSON出力を考えるときのポイント

OllamaもStructured Outputsの公式情報があり、JSON Schemaで出力形を指定できる場合があります。コマンドやAPIで扱いやすい一方、モデル名、対応状況、スキーマ、プロンプトを自分で管理する場面が増えます。

Ollama公式では、スキーマをAPI側に渡すだけでなく、プロンプトにもスキーマの意図を含める考え方が示されています。初心者は、いきなり複雑なネスト構造にせず、少ない項目から始めてください。

JSON出力が役立つ用途表

使い道返したいJSON例のイメージ注意点
記事分類category, confidence, reasonカテゴリ候補を固定しておく
メモ整理title, summary, tags長いメモは分割する
CSV変換rows, columns表の欠損や改行に注意する
問い合わせ分類type, priority, needs_reply重要判断は人間が確認する
検索クエリ整理keywords, filters存在しない条件を作らせない
タグ付けtags, scoreタグ候補を絞る
診断結果生成result_id, reasons, next_actions表示文と内部IDを分ける

JSON出力が壊れやすい原因

  • 入力文が長すぎて、出力形式への注意が弱くなる
  • スキーマの項目数やネストが多すぎる
  • モデルが構造化出力に強くない
  • 温度が高く、自由な文章を混ぜやすい
  • コードブロックや説明文も一緒に返してしまう
  • OpenAI互換APIの対応範囲を誤解している

安定させるための工夫

最初は、項目数を3〜5個程度に絞り、短い入力、短いJSONから始めます。temperatureを低めにする、カテゴリ候補を固定する、出力後にJSON.parseのような検証を行う、失敗時に再試行する、という運用が現実的です。

スキーマを複雑にしすぎると、ローカルAIでは失敗原因を追いにくくなります。まずは「分類」「タグ付け」「短い要約」など、失敗しても直しやすい用途で練習してください。

JSON出力・MCP・RAGの役割の違い

JSON出力は、返答の形を整えるための仕組みです。MCPは、AIが外部ツールやデータソースを使うための仕組みです。RAGは、文書を検索して回答の材料にする仕組みです。

初心者はどこから試すべきか

まず、ローカルAI APIで短い文章を分類し、3項目程度のJSONを返すところから始めてください。例として、メモを「買い物」「仕事」「学習」に分類し、短い要約とタグを返す、くらいが現実的です。

外部公開や本番データへの自動反映は急がないでください。最初はテスト用データ、localhost、短いスキーマ、出力検証あり、という小さな範囲で動作を見ます。

次に読む記事

よくある質問

JSON出力と構造化出力は同じですか?

近い意味で使われますが、構造化出力はJSON Schemaなどを使って返答の形をより明確に制御する考え方です。単にJSONっぽく返すだけより、プログラムで扱いやすくする目的があります。

JSON Schemaを使えば必ず正しいJSONになりますか?

必ずとは言えません。対応APIやモデルによって安定性は変わるため、出力後の検証、短いスキーマ、失敗時の再試行を前提にしてください。

ローカルAIでもJSON出力は使えますか?

使える場合があります。LM StudioやOllamaではStructured OutputやJSON Schema関連の機能が案内されていますが、対応状況はバージョンやモデルで変わります。

普通に「JSONで返して」と頼むだけではだめですか?

簡単な用途なら試せますが、コードブロックや余計な説明が混ざることがあります。プログラムで処理するなら、構造化出力、検証、再試行を考えたほうが安全です。

個人開発でJSON出力は何に使えますか?

記事分類、メモ整理、タグ付け、問い合わせ分類、CSV変換、診断結果生成などに使えます。最初は失敗しても直しやすい小さな用途から始めてください。

OpenAI互換APIならどのツールでも同じですか?

同じとは限りません。OpenAI互換APIでも、対応エンドポイント、パラメータ、JSON Schemaの扱いはLM Studio、Ollama、Janなどで違う場合があります。

次に読むおすすめルート

開発・API連携したい人

LM StudioとOllamaの違いを確認し、API、長文処理、RAGまで段階的に進みます。

  1. ローカルAIをAPIで使う方法
  2. LM StudioとOllamaの違い
  3. コンテキスト長とは
  4. RAG・埋め込み・ベクトルDBの仕組み
  5. RAG評価と引用確認の基礎
  6. faithfulness確認
  7. ローカルRAGのプライバシー
  8. MCPとは
  9. ローカルLLMの安全性とプライバシー
  10. Gemma 4 12Bの更新メモ
  11. Hermes Desktopとは
  12. Hermes DesktopとLM Studio接続
  13. Hermes DesktopとOllama接続
  14. Hermes Desktop接続トラブル
  15. Hermes DesktopでOpenRouterを使う
  16. Hermes DesktopでDeepSeek APIを使う
  17. Hermes DesktopでProviderを使い分ける
  18. Hermes DesktopとLM Studio接続の確認ポイント
  19. Hermes AgentとDesktopの違い
  20. Ollamaとは
  21. Ollamaの解説
  22. 診断基準
  23. 比較表

あなたはどのタイプ?

関連チェック先

  • LM Studio Structured Output - LM StudioでJSON Schemaを使ったStructured Outputを扱う公式ドキュメントです。
  • Ollama Structured Outputs - OllamaでJSON Schemaによる構造化出力を扱う公式ドキュメントです。
  • LM Studio API / Developer Docs - LM StudioのSDK、REST API、OpenAI互換API、ローカルサーバー機能を確認できます。
  • Ollama API - OllamaのAPI、デフォルトのlocalhost、Python/JavaScriptライブラリを確認できます。

関連ツール

比較表を見る / 最初に検討しやすいツールを確認する