Webサービスから自分のデータをダウンロードしたら、「xxxx.json」という見慣れないファイルが入っていた。
生成AIの設定方法を調べていたら、「JSONを貼り付けてください」と書かれていた。
最近、このような場面で「.json」というファイルを見かける機会が増えています。
JSONはプログラマーだけが使う特殊なファイルに見えますが、その正体は、情報を整理して保存するためのテキストファイルです。ただし、Wordの文書のように人が読むことを第一にしたものではなく、主にコンピューター同士が情報を受け渡すために使われます。
この記事では、JSONファイルとは何か、なぜ広く使われるようになったのか、生成AIとどのような関係があるのかを、専門知識のない人にも分かるように解説します。
JSONファイルを一言でいうと
JSONは「JavaScript Object Notation」の略で、「ジェイソン」と読みます。
難しそうな正式名称ですが、基本的な役割は「項目名を付けて、情報を整理すること」です。
たとえば、紙に人の情報を書く場合、単に「山田太郎、35、東京」と並べただけでは、それぞれが何を意味するのか分かりにくいでしょう。そこで、「名前:山田太郎」「年齢:35」「住所:東京」と項目名を付けます。
JSONも考え方は同じです。コンピューターが読み取れる決まりに従って書くと、次のようになります。

画像のキャプション:名前、年齢、都市を項目ごとに整理したJSONの例。
英語の部分は項目名です。「nameは名前」「ageは年齢」「cityは都市」を表しています。
つまりJSONは、情報を入れる箱に一つずつ名札を付けたようなものです。名札があるため、別のアプリに渡しても、どの情報が名前で、どの情報が年齢なのかを判断できます。
JSONは新しい技術なのか
JSONは、新しい技術ではありません。2000年代の初めからWeb開発で使われ始め、2006年にはインターネット技術の文書で仕様が定められました。現在の代表的な標準仕様は2017年に公開されたRFC 8259です。
それでも一般のPCユーザーがJSONファイルを目にする機会が増えたのは、私たちが利用する機器やサービスが大きく変化したためです。
以前のパソコンソフトは、1台のパソコンの中だけで処理が完結するものが多く、データ交換の仕組みを利用者が意識する場面は限られていました。
現在は、Webサービス、スマートフォンアプリ、クラウド、SNS、スマート家電などが、インターネットを通じて絶えず情報をやり取りしています。その受け渡しに使いやすい形式として、JSONの利用が広がりました。
JSONが広く使われるようになった背景
Webページが「見るもの」から「操作するもの」へ変わった
以前のWebページは、すでに用意された文章や画像を読むことが中心でした。しかし現在のWebサービスでは、地図を動かす、商品を検索する、コメントを投稿する、予約を変更するといった様々な操作ができます。
このようなサービスでは、画面を表示するブラウザーと、データを管理するサーバーが頻繁に情報を交換します。
JSONが普及する以前は、コンピューター間のデータ交換にXMLという形式がよく使われていましたが、開始タグと終了タグを何度も書くため、データによっては記述が長くなります。
その点、JSONは比較的少ない文字で同じような構造を表しやすいため、Webサービスやアプリで急速に採用されるようになりました。
スマートフォンとクラウドが普及した
スマートフォンのアプリは、天気、地図、交通情報、写真、買い物履歴などをインターネット上のサーバーから受け取ります。パソコン、スマートフォン、タブレットなど、種類の異なる機器で同じデータを扱うには、共通して理解できる形式が必要です。
JSONは特定の機器やプログラミング言語だけに縛られないため、こうした用途に向いています。
利用者が自分のデータを受け取る機会が増えた
近年は、各種サービスから投稿履歴、利用記録、設定、会話履歴などを一括ダウンロードできるようになりました。その中身がJSON形式で保存されていることがあります。
以前からサービスの内部では使われていたJSONが、データのエクスポート機能を通じて、一般ユーザーの目にも触れるようになったのです。
JSONと生成AIにはどのような関係があるのか?
生成AIの普及も、JSONを見かける機会が増えた大きな理由の一つです。
生成AIは、人に対しては自然な文章で答えられます。しかし、AIの回答を別のアプリで自動処理するときは、普通の文章では都合が悪い場合があります。
たとえば、AIに商品レビューを要約させた結果が、次の文章だったとします。
「この商品の評価は星4で、長所は軽さ、短所はバッテリーの短さです」
人間なら意味を理解できますが、アプリが「評価」「長所」「短所」を毎回正確に切り分けるのは簡単ではありません。AIの言い回しが変わる可能性もあるからです。
そこで、AIに次のようなJSON形式で答えさせます。

AIの回答をアプリが処理しやすい形に整理したJSONの例。
この形なら、アプリはratingの数字を評価欄へ、good_pointの内容を長所欄へ入れる、と機械的に処理できます。
AIに決まった形式で回答させる
生成AIを別のアプリから利用するときには、「API(Application Programming Interface)」と呼ばれる仕組みが使われます。
APIとは、あるサービスの機能やデータを、別のアプリから利用するための窓口です。生成AIのAPIには、回答をJSON形式にしたり、あらかじめ指定した項目に沿って出力させたりする機能があります。
たとえば、OpenAIの「Structured Outputs」もその一例です。JSON Schemaという設計図を与えることで、必要な項目やデータの種類に合った形式でAIに回答させます。これにより、AIの回答を業務システムやアプリへ正確に渡しやすくなります。
AIが外部の機能を呼び出す
AIエージェントが天気を調べる、予定を登録する、商品を検索するといった外部機能を利用するときにも、JSONが使われます。
たとえば、利用者が「明日の午前10時に歯科の予定を入れて」と頼んだ場合、AIはアプリに対して、「予定名は歯科」「日時は明日の午前10時」という情報を、決められたJSON形式で渡します。
JSONは、人間の曖昧な言葉を、アプリが処理できる整理された情報へ橋渡しする役割を果たしているのです。
AIサービスの設定や履歴を保存する
AI関連ツールの設定ファイル、プロンプトのテンプレート、処理の手順、会話履歴のエクスポートなどにもJSONが使われます。そのため、生成AIを活用する一般ユーザーもJSONファイルに触れるようになりました。
ただし、AIは常に完全なJSONを作れるとは限りません。括弧やカンマが抜ける、指定した項目が変わるといったことがあります。重要な処理に使う場合は、専用の検証機能で形式が正しいか確認するか、JSON Schemaに対応した構造化出力機能を使う必要があります。
JSONで使う記号は画像で覚えよう
JSONでは、波括弧、角括弧、コロン、カンマ、ダブルクォーテーションなどを使います。文章だけで説明すると記号を見失いやすいため、次の画像にまとめました。

JSONでよく使う記号。すべて半角で入力します。※画像はAIによるイメージです。
WindowsでJSONファイルを開く方法
JSONは普通の文字で作られたテキストファイルなので、内容を見るだけならWindowsの「メモ帳」で開けます。
JSONファイルを右クリックし、「プログラムから開く」から「メモ帳」を選びます。ダブルクリックしても開けない場合は、この方法を試してください。
ただし、大きなJSONファイルは一行が非常に長く、メモ帳では読みにくいことがあります。その場合は、Visual Studio Codeなどのテキストエディターを使うと、色分けや自動整形によって構造を確認しやすくなります。
内容を確認したいだけなら、無理に編集する必要はありません。また、アプリの設定用JSONを書き換えると、そのアプリが起動しなくなることもあります。
JSONファイルを見るときの注意点
個人情報が入っていないか確認する
JSONファイルには、氏名、メールアドレス、利用履歴、会話履歴、サービスの設定などが保存されている場合があります。内容が分からないまま、掲示板やSNSへアップロードしないでください。
特に「token」「api_key」「password」などの項目があるファイルは、認証に関係する秘密情報を含む可能性があります。他人へ送ったり、公開のAIサービスへそのまま貼り付けたりしないようにしましょう。
拡張子を変えただけでは変換できない
「data.json」を「data.txt」や「data.csv」に名前変更しても、中身の形式は変わりません。メモ帳で読みやすくしたいだけなら.txtへ変更する必要はなく、「プログラムから開く」でメモ帳を選べば十分です。
編集前にコピーを残す
設定ファイルを編集する必要がある場合は、元のJSONファイルを別の場所へコピーしてから作業しましょう。問題が起きても元に戻せます。
JSONを編集するとエラーになりやすい理由
JSONは、人間には小さな違いに見えるものでも、コンピューターには別物として扱われます。
よくある原因は、項目間のカンマを忘れる、最後の項目にも余分なカンマを付ける、ダブルクォーテーションを閉じ忘れる、波括弧や角括弧の数が合わない、といったものです。
さらに、日本語入力中にコロンやカンマが全角になっている場合もあります。見た目が似ていても、JSONで使う記号は原則として半角です。
また、一般的なJSONには説明用のコメントを書き込めません。「//ここを変更」のような文を加えると、読み込みエラーになることがあります。
AIにJSONを修正してもらう方法もありますが、秘密情報を含むファイルはそのまま送らないでください。名前、メールアドレス、認証情報などを削除したうえで相談する必要があります。
JSONとCSVは何が違うのか
JSONと同じく、データをテキストファイルでまとめる形式にはCSVファイルもありますね。使い分け方は簡単です。
Excelなどの表計算ソフト(スプレッドシート)で扱う住所録や商品一覧のように、縦と横の表で表せるデータにはCSVが向いています。
ある人物の情報の中に複数の住所や注文履歴があり、さらに各注文に複数の商品が含まれる、といった複雑な入れ子状のデータにはJSONが向いています。
JSONは複雑な情報を整理できますが、そのままでは表として見にくいことがあります。人が一覧を読むことが目的ならCSV、アプリ同士が構造を保ったまま情報を渡すことが目的ならJSON、という大まかな違いがあります。
JSONは一般ユーザーにも関係する身近なファイル
JSONはプログラミング用の難しいファイルに見えます。しかし実際には、Webサービス、スマートフォン、クラウド、そして生成AIをつなぐ、共通の仕様書のような存在です。
JSON自体は、最近になって生まれたわけではありません。多くのサービスがインターネット上で連携するようになり、データのダウンロード機能やAIツールを一般ユーザーも利用するようになったため、目に触れる機会が増えました。
JSONを見かけたときは、まず「項目名を付けて情報を整理したテキストファイル」と考えてください。内容を見るだけならメモ帳で開けます。ただし、設定ファイルの編集や、個人情報を含むファイルの取り扱いには注意が必要です。
JSONの役割を知っておけば、AIサービスの設定やデータのエクスポートで突然.jsonファイルが現れても、必要以上に戸惑わずに済むでしょう。

