Enison
お問い合わせ
  • ホーム
  • サービス
    • AIハイブリッドBPO
    • 債権管理プラットフォーム
    • MFIプラットフォーム
    • RAG構築支援サービス
  • 会社概要
  • 採用情報

Footer

Enison

エニソン株式会社

🇹🇭

Chamchuri Square 24F, 319 Phayathai Rd Pathum Wan,Bangkok 10330, Thailand

🇯🇵

〒104-0061 2F Ginza Otake Besidence, 1-22-11 Ginza, Chuo-ku, Tokyo 104-0061 03-6695-6749

🇱🇦

20 Samsenthai Road, Nongduang Nua Village, Sikhottabong District, Vientiane, Laos

Services

  • AIハイブリッドBPO
  • 債権管理プラットフォーム
  • MFIプラットフォーム
  • RAG構築支援

Support

  • お問い合わせ
  • 営業案内

Company

  • 会社案内
  • ブログ
  • 採用情報

Legal

  • 利用規約
  • プライバシーポリシー

© 2025-2026Enison Sole Co., Ltd. All rights reserved.

🇯🇵JA🇺🇸EN🇹🇭TH🇱🇦LO
ラオス語対応 AI チャットボットの作り方 — 低リソース言語×RAG で実用レベルを実現する | エニソン株式会社
  1. Home
  2. ブログ
  3. ラオス語対応 AI チャットボットの作り方 — 低リソース言語×RAG で実用レベルを実現する

ラオス語対応 AI チャットボットの作り方 — 低リソース言語×RAG で実用レベルを実現する

2026年3月9日
ラオス語対応 AI チャットボットの作り方 — 低リソース言語×RAG で実用レベルを実現する

リード文

ラオス語で質問したのに英語で返ってきた——当社がラオスで AI チャットボットを初めて構築したとき、最初にぶつかった壁がこれだった。世界の主要 LLM にとってラオス語は「ほぼ知らない言語」であり、英語と同じアプローチでは実用レベルに届かない。本記事では、当社がラオス向けプロジェクトで実際に採用している RAG(検索拡張生成)+ LLM のアーキテクチャをもとに、ラオス語 LLM の選定基準、構築手順、品質評価の自動化までをステップバイステップで解説する。ラオス語で「使える」チャットボットを作りたい方への実践ガイドだ。

なぜラオス語のチャットボットは難しいのか?

なぜラオス語のチャットボットは難しいのか?

英語のチャットボットなら API を叩いてプロンプトを書けば動く。しかしラオス語では同じアプローチが通用しない。その原因は言語そのものの特性と、LLM の学習データの偏りにある。

学習データ量の絶対的な不足 — 英語の 0.02% 以下

LLM の多言語性能は学習コーパスに含まれるテキスト量にほぼ比例する。Common Crawl のデータ比率を見ると、英語が約 46% を占めるのに対し、ラオス語は 0.01% 未満だ。4,000 倍以上の格差がそのまま応答品質の差として現れる。

当社がラオスで最初の AI プロジェクトを立ち上げた際、汎用 LLM にラオス語で業務マニュアルの要約を依頼したところ、固有名詞の誤変換と文法崩れが頻発した。「ທະນາຄານແຫ່ງ ສປປ ລາວ」(ラオス中央銀行)が「ラオスの銀行」に丸められ、どの銀行を指しているのか判別不能になるケースもあった。英語なら問題なく動くプロンプトがラオス語では機能しない——これが低リソース言語の現実だ。

ラオ文字のトークナイゼーション問題 — スペースなし・文末記号なし

ラオス語には単語間にスペースがなく、明確な文末記号もない。英語なら "I love cats" が 3 トークンで済むところ、ラオス語の "ຂ້ອຍຮັກແມວ" は BPE(Byte Pair Encoding)トークナイザーで 10 トークン以上に分割されることがある。

これが実務に及ぼす影響は 2 つだ。

  • コンテキスト窓の圧迫: 同じ情報量でも英語の 2〜3 倍のトークンを消費する。会話が長くなるほど過去の文脈が押し出されて応答品質が落ちる
  • テキスト分割の困難: RAG 用の文書分割(チャンキング)で、単語の途中や文の途中で切れる「分割ミス」が高頻度で発生する。英語向けの sentence splitter はラオス語ではほぼ機能しない

「英語に翻訳してから処理」が通用しない理由

ラオス語の LLM 性能が低いなら、「質問をまず英語に翻訳 → 英語で検索・推論 → 結果をラオス語に翻訳」すればよいのでは——と考える人は多い。当社も初期にこの方式を試した。

結果は散々だった。

  • ラオス語 → 英語の翻訳精度がそもそも低い: 「ສິນເຊື່ອ」(信用貸付)が "credit" に丸められ、金融の文脈が消失する。ラオスの法律用語・行政用語は英語に直訳できないものが多い
  • 二重翻訳でレイテンシが 2〜3 秒加算: チャットボットの応答に 5 秒以上かかると、ユーザーの離脱率が急増する
  • 固有名詞が英訳で崩壊: ラオスの地名(ルアンパバーン県の村名等)や機関名が翻訳を往復するうちに変形し、元に戻らない

この経験から、当社はラオス語テキストをラオス語のまま処理するアプローチ——つまり RAG によるナレッジ補完——に方針を転換した。

ラオス語に使える LLM はどれか?主要モデルを検証する

ラオス語に使える LLM はどれか?主要モデルを検証する

チャットボットの品質は LLM の選定でほぼ決まる。しかし「ラオス語対応」を謳うベンチマークは存在しないに等しい。自分で検証するしかない。

検証の方法と評価軸

当社では以下の 4 軸でラオス語の LLM 性能を評価した。

  1. 日常会話の自然さ: 基本的な質疑応答が文法的に正しく、自然に成立するか
  2. 専門用語の正確性: 金融・行政・IT 分野のラオス語用語を正しく扱えるか
  3. 指示追従性: 「ラオス語で回答せよ」「参照情報のみに基づいて回答せよ」という制約を守れるか
  4. コスト効率: ラオス語はトークン膨張するため、英語の 2〜3 倍のコストがかかる。それを踏まえた実質コスト

検証にはラオス語の業務 FAQ(50 問)を用意し、各モデルに同一条件で回答させた。

モデル別ラオス語性能比較表

2025 年時点の主要モデルの検証結果をまとめる。

評価軸Claude Sonnet(Bedrock)GPT-4o(OpenAI)Gemini 2.5 Pro(Google)
日常会話○ 文法は概ね正確。丁寧語の使い分けも可○ 同程度。長文になると語順が乱れることがある△ 短文は可だが、複雑な構文で破綻しやすい
専門用語△ 金融用語は RAG 補完が必須。単体では不正確△ 同程度。行政用語でハルシネーションが目立つ× 専門用語の大半が英語に置き換わる
指示追従性◎ 「ラオス語のみで回答」の制約を安定して守る○ 概ね守るが、コンテキストが英語だと英語に引きずられやすい△ 指示を無視してラオス語→英語に切り替えるケースが散発

※ 価格は時期により変動する。ラオス語はトークン膨張により、実質コストは英語の 2〜3 倍になる。

全モデルに共通するのは、ラオス語単体では専門領域の質問に正確に答えられないという点だ。どのモデルを選んでも RAG によるナレッジ補完は必須になる。

当社が Bedrock Claude を選んだ理由

当社のチャットボット基盤では AWS Bedrock 経由の Claude Sonnet を採用している。決め手は 3 つだ。

1. 指示追従性の安定性。RAG では検索結果をシステムプロンプトに注入する。このとき「提供されたコンテキストのみに基づいて回答せよ」という指示を LLM が守らないと、ハルシネーション(事実と異なる応答)が発生する。Claude はこの制約への追従性が最も高く、ラオス語のコンテキストでも逸脱が少なかった。

2. AWS エコシステムとの統合。Bedrock を使うことで IAM によるアクセス制御、CloudWatch によるログ監視、VPC 内からのプライベート接続が可能になる。当社のクライアントには金融機関が多く、データがリージョン外に出ないことは必須要件だった。

3. マルチモデル切り替えの柔軟性。Bedrock は Claude 以外にも Mistral、Llama、Amazon Nova を同一 API で呼び出せる。将来ラオス語に強いモデルが登場した際、コード変更なしで切り替えられる。

RAG がラオス語チャットボットに不可欠な理由

RAG がラオス語チャットボットに不可欠な理由

前章で確認した通り、どの LLM もラオス語単体では専門知識を持たない。RAG を組み合わせることで、この根本的な限界を補う。

LLM 単体ではラオス語の専門知識がほぼゼロ

RAG(Retrieval-Augmented Generation)は、ユーザーの質問に関連するドキュメントをベクトル検索で取得し、その内容を LLM のプロンプトに注入して回答を生成する手法だ。

LLM 単体と RAG の差はラオス語において特に顕著になる。

LLM 単体RAG
ラオスの法規制ほぼ回答不能。英語の一般論に逃げる法令文書をナレッジに入れれば正確に回答
社内業務フロー当然知らない業務マニュアルを参照して手順を説明
ハルシネーションラオス語では特に多発参照元がない場合は「わからない」と回答できる
最新情報学習カットオフ以降は不可ナレッジ更新で即座に反映

英語なら LLM 単体でもそれなりに回答できる質問が、ラオス語では全くできない。だからこそ RAG の効果がラオス語で最も大きくなる。

多言語 RAG のアーキテクチャ

当社が採用しているパイプラインは以下の構成だ。

ユーザーの質問(ラオス語)
  ↓
[Embedding] テキストをベクトル化
  ↓
[Vector Search] Supabase pgvector で類似チャンク 50 件を取得
  ↓
[Reranking] 類似度スコアでフィルタ → 上位 5 件に絞り込み
  ↓
[LLM] AWS Bedrock Claude にコンテキスト + 質問を送信
  ↓
[Streaming] SSE で段階的に応答を配信
  ↓
[Auto Scoring] Mastra Evaluations で品質スコアを自動計測

ポイントはエンベディングと LLM で異なるモデルを使い分けている点だ。エンベディングには多言語対応・低コストのモデルを、応答生成には指示追従性の高い Claude を配置する。この組み合わせがコストと品質のバランスに優れている。

エンベディングモデルのラオス語性能と限界

エンベディング(テキストのベクトル化)は RAG の検索精度を左右する最重要コンポーネントだ。

多言語対応のエンベディングモデルを使用すれば、ラオス語テキストもベクトル化できる。100 以上の言語をサポートするモデルであれば、ラオス語にも対応している。

ただし限界もある。ラオス語は学習データが少ないため、同義語や言い換えのベクトル距離が英語ほど正確でない。具体的には「ສິນເຊື່ອ」(信用貸付)と「ເງິນກູ້」(ローン)が同じ概念として近い距離に配置されないケースがある。この問題は、初期検索を広く取って(50 件)からリランキングで絞り込む(5 件)というパイプライン設計で緩和している。

構築手順 — 5 ステップでラオス語チャットボットを作る

構築手順 — 5 ステップでラオス語チャットボットを作る

ここからは具体的な構築手順を解説する。技術スタックは TypeScript + Next.js + Supabase + Mastra を前提とするが、アーキテクチャの考え方は他のスタックにも応用できる。

Step 1: ラオス語ナレッジの準備とテキスト分割戦略

チャットボットが参照するナレッジ(業務マニュアル、FAQ、規約文書など)を準備し、検索可能な単位に分割する。

ラオス語のテキスト分割は最大の難所だ。 スペースで単語が区切られず、文末記号(「。」に相当するもの)もほぼ使われないため、英語向けの sentence splitter が機能しない。当社では Mastra RAG の分割戦略を以下のように使い分けている。

分割戦略適するコンテンツラオス語での実績
recursive一般的な文書◎ 段落・改行ベースで分割するため最も安定
semantic-markdownMarkdown 形式の文書○ 見出し構造が明確なら精度が高い
token長文レポート○ トークン数上限で機械的に分割。言語を問わず動作
sentenceFAQ・短文集× ラオス語では文境界を検出できず使用不可

推奨設定: ラオス語文書には recursive(チャンクサイズ 512 トークン、オーバーラップ 50 トークン)を基本とする。オーバーラップを入れる理由は、分割位置がラオス語の文脈の途中に当たっても、前後のチャンクで内容が補完されるようにするためだ。

Step 2: ベクトル DB の構築(Supabase pgvector)

分割したテキストチャンクをベクトル化し、検索可能な状態で格納する。当社では Supabase の pgvector 拡張を使用している。

Supabase pgvector を選んだ理由は 3 つだ。

  • テナント分離: PostgreSQL の RLS(Row Level Security)で、クライアントごとにナレッジを分離できる
  • 追加コスト不要: 既存の Supabase プロジェクトに拡張を追加するだけ。Pinecone 等の外部サービスが不要
  • SQL との統合: ベクトル検索と通常のフィルタ(言語コード、カテゴリ等)を 1 クエリで組み合わせられる

テーブル設計のポイントは言語コードをメタデータに含めることだ。ラオス語のナレッジのみ検索する場合は language = 'lo' でフィルタし、全言語横断で検索する場合はフィルタを外す——この切り替えが SQL の WHERE 句 1 行で実現できる。

Step 3: 検索パイプラインの実装(50件取得 → リランキング → 5件)

ベクトル検索は「似ている順に返す」だけでは精度が足りない。ラオス語ではエンベディングの精度が英語ほど高くないため、関連性の低いチャンクが上位に混入しやすい。

当社のパイプラインは 2 段階でフィルタリングする。

  1. 初期検索: pgvector で上位 50 件を広く取得
  2. 類似度フィルタ + リランキング: コサイン類似度スコアでノイズを除去し、関連性で再順位付けした上位 5 件を LLM に渡す

なぜ 50 件も取るのか。ラオス語のエンベディングでは、本来 1 位であるべきチャンクが 20 位に埋もれることがある。「ສິນເຊື່ອ」で検索しても「ເງິນກູ້」を含むチャンクが上位に来ない、という同義語問題が原因だ。広く拾ってからリランキングで正しい順位に並べ替える方が、検索漏れが少ない。

Step 4: LLM ストリーミング応答の実装と言語制御

検索結果を LLM に渡してラオス語で応答を生成する。ユーザー体験を考慮し、SSE(Server-Sent Events)によるストリーミング配信を採用する。

ストリーミングにより、TTFT(最初のトークンが表示されるまでの時間)を約 0.8 秒に短縮できる。RAG のコンテキスト注入で入力トークンが増えると、全文生成を待つ方式では 5〜10 秒かかるが、ストリーミングなら 1 秒以内に最初の文字が表示され始める。

ラオス語固有のシステムプロンプト設計:

ラオス語チャットボットでは、以下の指示をシステムプロンプトに明示する必要がある。

  • 応答言語の固定: 「ユーザーがラオス語で質問した場合、必ずラオス語で回答せよ。検索結果が英語や日本語であっても、回答はラオス語に翻訳して出力すること」——この指示がないと、英語のナレッジを参照したとき LLM が英語で応答してしまう
  • コンテキスト制約: 「提供された参照情報のみに基づいて回答せよ。情報がない場合はそう伝えること」——ラオス語のハルシネーション率は英語より高いため、制約の明示が不可欠
  • 参照元の提示: 応答に使用したチャンクの出典を返すよう指示する。ユーザーが根拠を確認できることで、低リソース言語であっても信頼性を担保できる

Step 5: RAG 品質の自動評価で劣化を検知する

チャットボットは「動いている」だけでは不十分だ。ナレッジの追加や LLM のアップデートで応答品質は常に変動する。

当社では Mastra Evaluations を使い、以下の 3 指標をリアルタイムで自動計測している。

指標計測内容合格ライン
Answer Relevancy応答がユーザーの質問に的確に答えているか0.7 以上
Faithfulness応答が検索結果の内容に忠実か(ハルシネーションがないか)0.8 以上
Retrieval Precision検索で取得したチャンクが質問に関連しているか0.6 以上

評価にはメインの応答生成モデルとは別の LLM を使用する。「自分が生成した回答を自分で評価する」自己採点のバイアスを避けるためだ。

ラオス語チャットボットで実際にハマった 3 つの落とし穴

ラオス語チャットボットで実際にハマった 3 つの落とし穴

当社がラオス向けプロジェクトで経験した失敗パターンを共有する。いずれも事前に知っていれば回避できたものだ。

1. sentence splitter が沈黙する — ラオス語に文末記号がない問題

何が起きたか: ラオス語の業務マニュアルを sentence 戦略で分割したところ、文書全体が 1 チャンクになるか、逆にバイト単位でバラバラになるかの両極端な結果になった。原因は単純で、ラオス語には「。」に相当する文末記号がほぼ使われない。sentence splitter は文末記号を区切りとして動作するため、ラオス語のテキストではどこにも分割点を見つけられない。

どう直したか: recursive 戦略に切り替えた。改行と段落区切りをベースにチャンキングし、チャンクサイズ 512 トークン、オーバーラップ 50 トークンで設定した。ラオス語文書は段落ごとに改行が入っていることが多いため、この方式で実用的な分割ができる。

2. ラオス語で聞いたのに英語で返ってくる問題

何が起きたか: ナレッジベースに英語と日本語のドキュメントも含まれていたため、ラオス語の質問に対して英語のチャンクがヒットし、LLM がそのまま英語で応答してしまうケースが頻発した。システムプロンプトに応答言語の指示を入れていなかったことが原因だ。

2 年前まで英語のみだった社内ナレッジを多言語化する過渡期に、この問題が集中的に発生した。ラオス語のナレッジが揃っていないセクションでは、英語のチャンクしかヒットしないため LLM が英語に引きずられる。

どう直したか: 2 つの対策を同時に実施した。(1) システムプロンプトに「ユーザーの言語と同じ言語で必ず回答すること」を明示追加。(2) ナレッジベースのメタデータに言語コードを付与し、ラオス語の質問にはラオス語のチャンクを優先的に検索するフィルタを実装した。

3. ラオ文字のトークン膨張でコンテキスト窓が枯渇する問題

何が起きたか: マルチターンのラオス語会話で 20 メッセージ分のコンテキストを保持した結果、入力トークンが 15,000 を超え、応答品質が目に見えて劣化した。ラオス語は英語の 2〜3 倍のトークンを消費する。メッセージ 20 件は英語なら余裕でも、ラオス語ではコンテキスト窓の大半を食いつぶす。

RAG のコンテキスト(5 チャンク分、約 3,000〜5,000 トークン)を注入する余地がなくなり、検索結果が切り捨てられて「ナレッジを見ていない」回答が増えた。

どう直したか: 会話履歴の保持をメッセージ数ではなくトークン数上限で制御するよう変更した。当社では直近の会話履歴を最大 8,000 トークンに制限し、RAG コンテキスト用に十分な余裕を確保している。ラオス語の場合、これは実質 8〜10 メッセージ分に相当する。

運用と改善 — 品質スコアで「使えるボット」を維持する

運用と改善 — 品質スコアで「使えるボット」を維持する

チャットボットは構築して終わりではない。ナレッジの追加、LLM のバージョンアップ、ユーザーの質問パターンの変化——これらによって応答品質は常に変動する。

Mastra Live Evaluations による自動スコアリング

当社では Mastra の Live Evaluations 機能を使い、本番環境のチャット応答をリアルタイムでスコアリングしている。スコアリングは応答生成と非同期で実行されるため、ユーザーの体感速度には影響しない。

計測した 3 指標(Answer Relevancy / Faithfulness / Retrieval Precision)はデータベースに保存し、時系列で推移を追える。スコアの急激な低下はナレッジの欠損やモデルの挙動変化を示すシグナルだ。

サンプリング戦略とコスト管理

全リクエストをスコアリングすると評価用 LLM のコストが膨らむ。当社では環境ごとにサンプリング率を変えている。

環境サンプリング率理由
開発・検証100%全応答を評価してプロンプトチューニングに活用
ステージング30〜50%リリース前の品質ゲート
本番10%コストを抑えつつ傾向を把握

本番 10% でも 1 日 1,000 リクエストなら 100 件/日のスコアデータが蓄積される。週次で平均値を確認すれば品質の傾向は十分に把握できる。

スコアが落ちたときの改善フロー

指標ごとに改善アプローチが異なる。

Retrieval Precision が低い(< 0.6): 検索が的外れなチャンクを返している。チャンクサイズの調整(512 → 256 トークンに縮小)、ラオス語ナレッジの追加、メタデータフィルタの見直しを検討する。ラオス語の場合、チャンクを小さくすると改善するケースが多い。

Faithfulness が低い(< 0.8): LLM が検索結果にない情報を補完している。システムプロンプトの制約を強化するか、temperature を下げる(0.3 → 0.1)ことで対処する。ラオス語は LLM の学習データが少ないため、英語よりハルシネーションが起きやすい点に注意。

Answer Relevancy が低い(< 0.7): 応答がユーザーの質問とずれている。まず Retrieval Precision を確認する。検索側に問題がなければ、プロンプトの改善(回答フォーマットの指定、質問の言い換え指示)に取り組む。

FAQ

FAQ

Q1: ラオス語のナレッジが少なくても RAG は効果があるか?

ある。むしろナレッジが少ないほど効果が実感しやすい。LLM 単体ではラオス語の専門知識がほぼないため、FAQ 50 件分のナレッジを入れるだけでも回答の正確性が劇的に変わる。「ゼロの状態に 50 件入れる」効果は、「1,000 件の状態に 50 件足す」効果より遥かに大きい。

Q2: ラオス語と他言語(タイ語・英語)を 1 つのボットで扱えるか?

扱える。ナレッジベースに各言語のドキュメントを格納し、メタデータの言語コードでフィルタリングすればよい。当社のシステムでは日本語・英語・タイ語・ラオス語の 4 言語を 1 つの RAG パイプラインで処理している。タイ語はラオス語と文字体系・文法が近縁のため、同じチャンキング戦略・エンベディングモデルで対応できる。

Q3: 構築コストと期間の目安は?

FAQ 対応レベル(ナレッジ 100 件以下)なら 2〜4 週間で構築可能。月額のインフラ・API コストは $200〜500 程度だ。業務システム連携を含む本格的なチャットボットは 2〜3 ヶ月、月額 $500〜2,000 が目安になる。コストの大部分は LLM の API 利用料であり、ラオス語はトークン膨張で英語の 2〜3 倍かかる点を予算に織り込む必要がある。

まとめ・次のステップ

まとめ・次のステップ

ラオス語は世界の主要 LLM にとって「ほぼ知らない言語」だ。だからこそ、RAG によるナレッジ補完が決定的な差を生む。適切なチャンキング戦略、リランキングによる検索精度の向上、品質の自動モニタリング——この 3 つを組み合わせることで、低リソース言語でも信頼性の高い応答が実現できる。

本記事で解説した 5 ステップを振り返る。

  1. ラオス語の特性に合ったテキスト分割(recursive 戦略 + オーバーラップ)
  2. Supabase pgvector によるベクトル DB 構築(言語コード付きメタデータ)
  3. 50 件取得 → リランキング → 5 件の検索パイプライン
  4. Bedrock Claude によるストリーミング応答 + 言語制御プロンプト
  5. Mastra Evaluations による 3 指標の自動モニタリング

チャットボットの AI セキュリティ対策は「ラオス企業の AI セキュリティ対策チェックリスト」で詳しく解説している。AI 導入の全体像を把握したい方は「ラオス企業の AI 導入ガイド」も参考にしてほしい。

筆者情報

Yusuke Ishihara
Enison

Yusuke Ishihara

13歳でMSXに触れプログラミングを開始。武蔵大学卒業後、航空会社の基幹システム開発や日本初のWindowsサーバホスティング・VPS基盤構築など、大規模システム開発に従事。 2008年にサイトエンジン株式会社を共同創業。2010年にユニモン株式会社、2025年にエニソン株式会社を設立し、業務システム・自然言語処理・プラットフォーム開発をリード。 現在は生成AI・大規模言語モデル(LLM)を活用したプロダクト開発およびAI・DX推進を手がける。

お問い合わせはこちら

おすすめ記事

ラオスのマイクロファイナンスと金融 DX — 6州850 の村落銀行(ビレッジ・バンク)の金融デジタル化
更新日:2026年3月6日

ラオスのマイクロファイナンスと金融 DX — 6州850 の村落銀行(ビレッジ・バンク)の金融デジタル化

LLM セキュリティ実装ガイド|OWASP Top 10 準拠・TypeScript コード付き
更新日:2026年3月6日

LLM セキュリティ実装ガイド|OWASP Top 10 準拠・TypeScript コード付き

カテゴリ

  • ラオス(4)
  • AI・LLM(3)
  • DX・デジタル化(2)
  • セキュリティ(2)
  • フィンテック(1)

目次

  • リード文
  • なぜラオス語のチャットボットは難しいのか?
  • 学習データ量の絶対的な不足 — 英語の 0.02% 以下
  • ラオ文字のトークナイゼーション問題 — スペースなし・文末記号なし
  • 「英語に翻訳してから処理」が通用しない理由
  • ラオス語に使える LLM はどれか?主要モデルを検証する
  • 検証の方法と評価軸
  • モデル別ラオス語性能比較表
  • 当社が Bedrock Claude を選んだ理由
  • RAG がラオス語チャットボットに不可欠な理由
  • LLM 単体ではラオス語の専門知識がほぼゼロ
  • 多言語 RAG のアーキテクチャ
  • エンベディングモデルのラオス語性能と限界
  • 構築手順 — 5 ステップでラオス語チャットボットを作る
  • Step 1: ラオス語ナレッジの準備とテキスト分割戦略
  • Step 2: ベクトル DB の構築(Supabase pgvector)
  • Step 3: 検索パイプラインの実装(50件取得 → リランキング → 5件)
  • Step 4: LLM ストリーミング応答の実装と言語制御
  • Step 5: RAG 品質の自動評価で劣化を検知する
  • ラオス語チャットボットで実際にハマった 3 つの落とし穴
  • 1. sentence splitter が沈黙する — ラオス語に文末記号がない問題
  • 2. ラオス語で聞いたのに英語で返ってくる問題
  • 3. ラオ文字のトークン膨張でコンテキスト窓が枯渇する問題
  • 運用と改善 — 品質スコアで「使えるボット」を維持する
  • Mastra Live Evaluations による自動スコアリング
  • サンプリング戦略とコスト管理
  • スコアが落ちたときの改善フロー
  • FAQ
  • Q1: ラオス語のナレッジが少なくても RAG は効果があるか?
  • Q2: ラオス語と他言語(タイ語・英語)を 1 つのボットで扱えるか?
  • Q3: 構築コストと期間の目安は?
  • まとめ・次のステップ