自作データを、聞き流す。音声学習アプリ Sokqa

AIを使えば、あなただけのオリジナル問題集が一瞬で完成!

ChatGPTやClaudeなどのAIに「〇〇の問題を作って」とお願いするだけで、Sokqaですぐに読み込める学習パックが作れます。
以下の3ステップで、簡単に自分だけの学習コンテンツを作りましょう!

  1. AIにプロンプト(指示文)を送信する
  2. 出力されたテキスト(JSON)をコピーする
  3. Sokqaアプリで「JSON貼り付けインポート」をする

🔰 【初心者向け】とりあえず作ってみよう!

まずは最もシンプルな「標準プロンプト」を使って、AIに問題を作ってもらいましょう。余計な設定がないため、誰でも簡単にエラーなく作成できます。

1. 4択問題を作る

単語帳や資格試験などの4択問題を作るためのプロンプトです。以下のテキストをコピーしてAIに貼り付けてください。

以下のテーマで、4択問題を5問作成し、指定されたJSONフォーマットで出力してください。

テーマ:[★ここに学習したいテーマを入力(例:TOEIC頻出英単語)★]
言語:ja

【厳守するフォーマット】
{
  "id": "★任意の英数字(例:pack_1)★",
  "type": "quiz",
  "schemaVersion": 1,
  "title": "★学習パックのタイトル★",
  "language": "ja",
  "questions": [
    {
      "id": "q1",
      "question": "★問題文★",
      "choices": ["選択肢1", "選択肢2", "選択肢3", "選択肢4"],
      "answerIndex": 0,
      "explanation": "★解説文★",
      "tags": ["★タグ1★", "★タグ2★"]
    }
  ]
}

【ルール】
・tags は文字列の配列で指定し、各問題に関連するキーワードを1〜3つ程度設定してください。
・choices(選択肢)は必ず4つにしてください。
・answerIndex(正解番号)は、0〜3の数字で指定してください(0が1番目の選択肢)。
・各問題の id は "q1", "q2", "q3"... のように重複しない英数字を割り当ててください。
・出力は必ず波括弧 { から始め、 } で終わるプレーンテキストにしてください。マークダウン(```json など)は絶対に使用しないでください。
・JSONの構文エラーを防ぐため、文字列内でダブルクォーテーション(")を使う場合は必ずエスケープ(\")してください。
・文字列の途中で改行(\n)を使用しないでください。解説文などが長くなる場合も1行で出力してください。

2. 長文・スピーチを聞き流す

長文やスピーチ、ニュース記事などをアプリに自動で読み上げさせたい(リスニングしたい)場合はこちらのプロンプトを使用します。

以下のテーマ・文章を、Sokqaの長文読み上げ用(documentモード)JSONフォーマットに変換して出力してください。
文章は、意味の区切りや1文ごとに "documents" の配列に分割してください。

テーマ:[★ここに文章やテーマを入力(例:スティーブ・ジョブズのスピーチ)★]
言語:en

【厳守するフォーマット】
{
  "id": "★任意の英数字(例:doc_pack_1)★",
  "type": "document",
  "schemaVersion": 1,
  "title": "★タイトルの入力★",
  "language": "en",
  "documents": [
    {
      "id": "doc1",
      "text": "★1文目★",
      "tags": ["★タグ1★", "★タグ2★"]
    },
    {
      "id": "doc2",
      "text": "★2文目★",
      "tags": ["★タグ1★", "★タグ2★"]
    }
  ]
}

【ルール】
・tags は文字列の配列で指定し、文章に関連するキーワードを1〜3つ程度設定してください。
・出力は必ず波括弧 { から始め、 } で終わるプレーンテキストにしてください。マークダウン(```json など)は絶対に使用しないでください。
・JSONの構文エラーを防ぐため、文字列内でダブルクォーテーション(")を使う場合は必ずエスケープ(\")してください。
・文字列の途中で改行(\n)を使用しないでください。解説文などが長くなる場合も1行で出力してください。

作成したJSONをアプリに取り込む

AIが出力したテキストをSokqaアプリに読み込ませる手順です。

  1. AIが出力したテキスト({ から } まで)をすべてコピーする
  2. Sokqaアプリを開き、パック一覧画面右上の「+」またはインポートボタンから「JSON貼り付け」を選択する
  3. コピーしたテキストを貼り付けて、「インポート」をタップする
SokqaでのJSONインポート手順

✨ 【上級者向け】さらに高品質な問題集を作る

Sokqaの強みである「ハンズフリー学習」を極めるための、高度なカスタマイズ方法です。

TTS(読み上げ)最適化とは?

Sokqaでは、画面の表示テキストとは別に「音声読み上げ専用のテキスト(tts)」を設定できます。
スマホの読み上げ機能(TTS)が誤読したり、早口すぎると感じる場合は、JSONのテキストを以下のように調整することで、より自然でアナウンサーのような発音になります。

  • 読点(、)で息継ぎを作る:
    文章が長すぎる場合は、少し多めに読点(、)を打つことで自然なポーズ(間)が生まれます。
    例:画面を見ずに耳だけで → 画面を見ずに、耳だけで
  • 英語の略語は半角スペースを空ける:
    「AI」が「アイ」と読まれてしまう場合は、アルファベットの間に半角スペースを入れます。
    例:ChatGPT → C h a t G P T、AI → A I
  • 特殊な漢字・専門用語はカタカナにする:
    誤読しやすい単語は、思い切ってカタカナで書き換えると確実に正しい発音になります。
    例:1日 → ついたち、JSON → ジェイソン

TTS対応の高品質プロンプト

上記の最適化ルールをAIに指示し、最初から高品質な読み上げデータを作らせるプロンプトです。

▶ 4択問題(Quiz)用

以下のテーマで、4択問題を5問作成し、Sokqaアプリの音声読み上げ(TTS)に最適化されたJSONフォーマットで出力してください。

テーマ:[★ここに学習したいテーマを入力(例:ITパスポート試験対策)★]
言語:ja

【厳守するフォーマット】
{
  "id": "★任意の英数字(例:pack_1)★",
  "type": "quiz",
  "schemaVersion": 1,
  "title": "★学習パックのタイトル★",
  "language": "ja",
  "questions": [
    {
      "id": "q1",
      "question": "★画面表示用の問題文★",
      "choices": ["選択肢1", "選択肢2", "選択肢3", "選択肢4"],
      "answerIndex": 0,
      "explanation": "★画面表示用の解説文★",
      "tts": {
        "questionText": "★読み上げ用の問題文(読点を多めに)★",
        "choicesText": "1番、★選択肢1★。2番、★選択肢2★。3番、★選択肢3★。4番、★選択肢4★。",
        "answerText": "正解は1番の、★正解の選択肢★です。",
        "explanationText": "★読み上げ用の解説文(話し言葉・カタカナ化)★"
      },
      "tags": ["★タグ1★", "★タグ2★"]
    }
  ]
}

【読み上げ(ttsオブジェクト)作成ルール】
・tags は文字列の配列で指定し、各問題に関連するキーワードを1〜3つ程度設定してください。
・ttsオブジェクト内のテキストは、スマホの音声合成エンジンが自然に読み上げられるように工夫してください。
・読点(、)を多めに配置し、意図的なポーズ(息継ぎ)を作ってください。(例:「画面を見ずに、耳だけで」)
・英単語やアルファベットの略語は、必ずカタカナで記述してください。(例:CPU → シーピーユー、JSON → ジェイソン)
・英語のアルファベットを一文字ずつ読ませる場合は、半角スペースを空けてください。(例:A I、S A T)
・不要な接続詞(「あるいは」など)は削り、読点で繋ぐなど、耳で聞いて理解しやすい話し言葉に調整してください。
・その他のJSONルール(choicesは4つ、波括弧のみ出力など)は標準ルールに従ってください。

▶ 長文(Document)用

以下のテーマ・文章を、Sokqaの長文読み上げ(Documentモード)に最適化されたJSONフォーマットに変換してください。
文章は「documents」配列の中で、1文または意味の区切りごとに分割してください。

テーマ:[★ここに文章やテーマを入力(例:スティーブ・ジョブズの卒業式スピーチ)★]
言語:ja

【厳守するフォーマット】
{
  "id": "★任意の英数字(例:doc_pack_1)★",
  "type": "document",
  "schemaVersion": 1,
  "title": "★タイトルを入力★",
  "language": "ja",
  "documents": [
    {
      "id": "doc1",
      "text": "★画面表示用の1文目★",
      "tts": {
        "text": "★読み上げ用の1文目(読点を多めに・カタカナ化)★"
      },
      "tags": ["★タグ1★", "★タグ2★"]
    },
    {
      "id": "doc2",
      "text": "★画面表示用の2文目★",
      "tts": {
        "text": "★読み上げ用の2文目★"
      },
      "tags": ["★タグ1★", "★タグ2★"]
    }
  ]
}

【読み上げ(ttsオブジェクト)作成ルール】
・tags は文字列の配列で指定し、文章に関連するキーワードを1〜3つ程度設定してください。
・ttsオブジェクト内のテキストは、スマホの音声合成エンジンが自然に読み上げられるように工夫してください。
・読点(、)を多めに配置し、意図的なポーズ(息継ぎ)を作ってください。
・英単語やアルファベットの略語は、必ずカタカナで記述してください。(例:CPU → シーピーユー)
・英語のアルファベットを一文字ずつ読ませる場合は、半角スペースを空けてください。(例:A I)
・不要な接続詞は削り、読点で繋ぐなど、耳で聞いて理解しやすい話し言葉に調整してください。
・出力は必ず波括弧 { から始め、 } で終わるプレーンテキストにしてください。マークダウン(```json など)は絶対に使用しないでください。

トラブルシューティング

もしアプリへのインポート時にエラーが出た場合は、以下のよくある原因を確認してください。

よくあるエラー

  • choices (選択肢)が3つや5つになっている → 必ず4つにする
  • answerIndex が 4 になっている → 正解が4番目の場合は 3 を指定する
  • 最後の要素の後にカンマ( , )が残っている → 波括弧 } や角括弧 ] の直前にある余分なカンマ(,)を削除してください。

Sokqa JSONフォーマット 仕様書

SokqaにインポートするJSONデータの構造と、各タグの意味を解説します。
必要最低限の「必須タグ」だけで動かすことも、よりリッチな体験のための「オプションタグ」を追加することも可能です。

必須タグ(最低限これだけで動きます)

学習パックを認識し、動作させるために必ず必要なタグです。

  • schemaVersion : 常に 1 を指定します。
  • type : 学習の形式を指定します(quiz = 4択問題、document = 長文読み上げ)。
  • id : パック全体、または各問題/文章に割り当てる一意のIDです(例:pack_1, q1)。他のIDと重複しない英数字を指定してください。
  • title : 学習パックのタイトルです。アプリの一覧画面に表示されます。
  • language : 学習する言語のコードです(例:日本語なら ja、英語なら en)。

【quiz(4択問題)の場合に必須】

  • questions : 問題のリスト(配列)です。
  • question : 問題文です(画面に表示されます)。
  • choices : 選択肢です。必ず4つ指定してください。
  • answerIndex : 正解の番号です。0〜3の数字で指定します(0が1番目、3が4番目の選択肢)。

【document(長文読み上げ)の場合に必須】

  • documents : 文章のリスト(配列)です。意味の区切りや1文ごとに分割します。
  • text : 文章のテキストです(画面に表示されます)。

オプションタグ(より高品質な学習体験のために)

必須ではありませんが、追加することでアプリの機能をフル活用できます。

  • explanation (quizのみ) : 問題の解説文です。正解・不正解時に画面に表示され、学習の理解を深めます。
  • tts (quiz / document 共通) : 音声読み上げ(TTS)専用のテキストを指定するオブジェクトです。画面表示用のテキストとは別に、聞き取りやすい話し言葉やカタカナ、読点(間)を設定したい場合に使用します。

    【quizの場合のtts構造】

    • questionText: 読み上げ用の問題文
    • choicesText: 読み上げ用の選択肢(例:「1番、〇〇。2番、〇〇。」)
    • answerText: 読み上げ用の正解文(例:「正解は1番の、〇〇です。」)
    • explanationText: 読み上げ用の解説文

    【documentの場合のtts構造】

    • text: 読み上げ用の文章テキスト
  • tags (quiz / document 共通) : 問題や文章に付けるタグのリスト(配列)です。アプリ内でのタグ検索や、学習対象の絞り込みに利用できます(例:["英単語", "TOEIC"])。