Upgrade to Pro — share decks privately, control downloads, hide ads and more …

国立国語研究所通時コーパスシンポジウム2025

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Yasuhiro Kondo Yasuhiro Kondo
March 09, 2025
310

 国立国語研究所通時コーパスシンポジウム2025

2025年3月8日国立国語研究所・オンライン

Avatar for Yasuhiro Kondo

Yasuhiro Kondo

March 09, 2025
Tweet

Transcript

  1. 7 例1: 基本的なデータ取得 日本語命令: 「顧客テーブルから全ての顧客情報を取得してください」 SQL: SELECT * FROM customers;

    例2: 条件付きデータ取得 日本語命令: 「東京に住んでいる顧客の名前と電話番号を表示してください」 SQL: SELECT name, phone_number FROM customers WHERE city = '東京'; 次の日本語をSQLに変換しなさい
  2. 1 源氏物語コーパスの作成 1 CSVデータ ['平安-仮名文学', '20-源氏1010_00001', '10', '20', 'B', '\u3000', '',

    '', '\u3000', '\u3000' '空白', '', '', '6330815488512', '', '10', '10', '20', '記号', '0', '1', '', '', '23', '', '\u3000', '', '', '', '17', '\u3000', '', '', '', '737', '188673', '10', '20-源氏1010_00001', '10', '20'] ['平安-仮名文学', '20-源氏1010_00001', '20', '50', 'I', 'いづれ', 'イズレ', 'イズレ', '何れ', 'いづれ', '代名詞', '', '', '534646253298176', '', '20', '20', '50', '和', '0', '1', 'イズレ', 'イヅ レ', '1945', '', 'いづれ', '', '', '', '17', '何れ', '', '', '', '62241', '15933700', '10', '20- 源氏1010_00001', '20', '50'] ['平安-仮名文学', '20-源氏1010_00001', '50', '60', 'I', 'の', 'ノ', 'ノ', 'の', 'の', '助詞-格助 詞', '', '', '7968444268028416', '', '30', '50', '60', '和', '0', '1', 'ノ', 'ノ', '28989', '', 'の', '', '', '', '17', 'の', '', '', '', '927649', '237478145', '10', '20-源氏1010_00001', '50', '60']
  3. 15 源氏物語SQLDBのカラム構成 id (INTEGER, 主キー) subcorpus_name (TEXT) sample_id (TEXT) char_start

    (INTEGER) char_end (INTEGER) sentence_boundary (TEXT) key (TEXT) pronunciation_form (TEXT) lemma_reading (TEXT) lemma (TEXT) original_text (TEXT) pos (TEXT) conjugation_type (TEXT) conjugation_form (TEXT) lemma_id (TEXT) lemma_subclass (TEXT) serial_number (INTEGER) written_form_start (INTEGER) written_form_end (INTEGER) word_class (TEXT) fixed_length_flag (INTEGER) variable_length_flag (INTEGER) word_form (TEXT) kana_form (TEXT) lemma_id_2 (TEXT)
  4. 16 カラムの新設の工夫 usage (TEXT) written_form (TEXT) text_type (TEXT) speaker (TEXT)

    style (TEXT) page_number (INTEGER) word_form_rep (TEXT) furigana (TEXT) text_type_filter (TEXT) poem_number (INTEGER) word_form_id (INTEGER) written_form_id (INTEGER) sentence_number (INTEGER) p_sample_id (TEXT) p_open (INTEGER) p_close (INTEGER) text_title (TEXT) vol_title (TEXT) p_sampleIDを分割して、後者を vol_titleに置き換え。これによっ て、「桐壺」などでの検索が可能 になる
  5. 18 LLMが生成するSQL文 [{'cid': 0, 'name': 'id', 'type': 'INTEGER', 'notnull': 0,

    'dflt_value': None, 'pk': 1}, {'cid': 1, 'name': 'subcorpus_name', 'type': 'TEXT', 'notnull': 0, 'dflt_value': None, 'pk': 0}, {'cid': 2, 'name': 'sample_id', 'type': 'TEXT', 'notnull': 0, 'dflt_value': None, 'pk': 0}, {'cid': 3, 'name': 'char_start', 'type': 'INTEGER', 'notnull': 0, 'dflt_value': None, 'pk': 0}, {'cid': 4, 'name': 'char_end', 'type': 'INTEGER', 'notnull': 0, 'dflt_value': None, 'pk': 0}, {'cid': 5, 'name': 'sentence_boundary', 'type': 'TEXT', 'notnull': 0, 'dflt_value': None, 'pk': 0}, {'cid': 6, 'name': 'key', 'type': 'TEXT',
  6. 19 LLMが生成する文(続き) corpusテーブルには以下の43個のカラムがあります: id (INTEGER, 主キー) subcorpus_name (TEXT) sample_id (TEXT)

    char_start (INTEGER) char_end (INTEGER) sentence_boundary (TEXT) key (TEXT) 最終的な出力 は、自然な日 本語文として 生成される。
  7. 源氏物語ベクトル検索システム 源氏物語 文単位に分割 (センテンス分割) intfloat/multilingual-m5 各センテンスを ベクトル化 FAISS ベクトルDB (高速検索用)

    検索クエリ 「光る源氏について」 (ユーザーの問い合わせ文) intfloat/multilingual-m5 クエリを ベクトル化 FAISS検索 ベクトル間の 内積で類似度計算 検索結果 最も類似度の高い 源氏物語の文 (内積の値が高いもの) [0.24, -0.13, 0.56, ..., 0.78] cos(θ) = A・B / (|A|×|B|) ①文分割 ②エンコード ④クエリ入力 ⑤検索 ⑥結果取得 ③インデックス構築 27
  8. 源氏物語ベクトル検索サーバーシステム サーバーサイド 源氏物語 文単位に分割 (センテンス分割) multilingual-m5 各センテンスを ベクトル化 FAISS ベクトルDB

    (高速検索用) API サーバー Flask/FastAPI (REST API) クライアントサイド https://genji-search.example.com 源氏の恋愛について教えて 検索 検索結果: 「かくてうち過ぐる程に、いとどしく心を... 「姫君の御心ばへいとらうたげにおはす... JavaScript fetch API (HTTPリクエスト) DOM操作 結果をHTMLに 表示 APIリクエスト JSON レスポンス サーバー技術スタック: - Python (Flask/FastAPI) - FAISS (ベクトル検索エンジン) - Multilingual M5 Embedding model クライアント技術スタック: - HTML5/CSS3 (レスポンシブデザイン) - JavaScript (モダンJS/フレームワーク) - Fetch API (非同期通信) 28
  9. 29