Maison Apéroへ戻る

エンジニアリングの透明性

技術スタック&AIアーキテクチャー

ワインの専門性、速度、費用、プライバシーをどう両立するかを、バージョン管理された公開ページで説明します。稼働中の構成と検証中の構想は明確に分けています。

稼働中一部稼働検証中導入予定

このページは単一カタログから生成します。本番検証を終えた構成だけを稼働中と表示します。

AI技術スタック

クライアントはAI事業者を選択できません。用途分類、モデル方針、課金、フォールバックはサーバーが管理します。

レイヤー技術・モデル用途状況
クライアントFlutter 3.47 / Dart 3.13Android・iOS・Web・PWAを一つのUI基盤で提供します。稼働中
認証・API保護Firebase Auth / App Check認証済みユーザーと正規アプリからのリクエストだけを受け付けます。稼働中
評価オーケストレーターCloud Functions / Node.js 22用途分類、モデル選択、チケット制御、安全な再試行、出力検証を行います。一部稼働
検証済みキャッシュServer-owned 8-language templatesWine Libraryに検証済み結果があれば、新しいモデル処理を行わず返却します。一部稼働
入力正規化ministral-8b-2512256kコンテキスト・構造化出力画像、ワインリストの一部、入力文から銘柄情報を正規化し、処理可能か判定します。検証中
レビュー生成検証mistral-small-2603256kコンテキスト・構造化出力・調整可能なReasoningレビュー文案と学習問題メタデータの経路を、本番投入前に検証します。検証中
軽量Geminigemini-3.5-flash-lite入力1Mコンテキスト・構造化出力・Thinking翻訳、ラベル抽出、軽量構造化の導入予定経路です。導入予定
高精度Geminigemini-3.7-flash入力1Mコンテキスト・構造化出力・low/medium/high Thinking構造化テイスティング評価、問題生成、記述式採点、Grand分析、重要な再裁定を担当します。稼働中
データFirestore / Wine Library検証済みワイン情報、レビュー、言語別キャッシュを保持します。稼働中
機密知識Server-only reference layer高度な参照資料と評価・問題生成用の指示をサーバー内に限定します。一部稼働
シークレットGoogle Secret ManagerAI事業者の認証情報をソースコードとクライアントから分離します。稼働中
監視Cloud Logging / aggregate metrics入力本文を記録せず、モデル、用途、時間、トークン、成功率を測定します。稼働中

AIリクエストの処理

必要条件を満たす最も軽い経路から開始し、公開前に結果を検証するコスト最適化カスケードです。

01ラベル・ワインリスト・銘柄情報
02Auth+App Check
03サーバー所有の評価/学習契約
04Wine Library一致 → 検証済みキャッシュ・0枚
05銘柄情報の正規化 → 検証経路
06レビュー文案 → Mistral Small 4・検証中のみ
07翻訳・抽出 → Gemini 3.5 Flash-Lite
08構造化評価・問題生成・採点 → Gemini 3.7 Flash
09構造・事実・言語・プラン投影・ポリシー検証
10参考結果、または自動返金

この設計を採用する理由

評価と学習の処理をすべて同じモデル要求として扱わず、4つの工学原則に分解します。

01

倹約的計算

予測可能な操作は決定的コードで処理し、曖昧さは軽量モデルへ、誤りの損失がトークン費用を上回る処理だけを高精度推論へ送ります。

02

根拠に接続した生成

利用可能な場合は検証済みWine Libraryを先に取得します。事実と提案を分け、根拠不足を断定表現で隠しません。

03

重要処理は安全側に失敗

高精度評価が失敗しても、弱いモデルへ黙って降格しません。再試行を案内し、チケットを戻します。

04

冪等な課金

一つの処理に一つのサーバー発行リクエストキーを使います。再試行や事業者切替で二重消費しません。

Reasoning方針

処理リスクに応じて推論強度を割り当てます。公開ラベルは方針を示しますが、プロンプト、正確な内部閾値、思考過程はサーバー限定です。

処理モデル強度
銘柄情報の正規化Ministral 3 8B最小
レビュー生成の検証Mistral Small 4
学習問題の生成Mistral Small 4
翻訳・抽出Gemini 3.5 Flash-Lite最小
構造化テイスティング・記述採点Gemini 3.7 Flash
重大差分の再裁定Gemini 3.7 Flash

チケットの整合性

チケットは裏側のモデルではなく、ユーザーが開始した処理目的に対して消費します。

  • Wine Libraryの検索と検証済みキャッシュの表示は0枚です。
  • 無効または情報不足の入力は、消費前に終了します。
  • ワインレビューは0枚です。
  • 学習問題は、開始を確定する前に表示した固定料金を使用します。
  • フォールバックと自動再試行で追加消費しません。
  • 利用できる回答が返らなければ自動返金します。
  • 支払い済み処理の再開では再消費しません。

品質を黙って下げないフォールバック

  • 本番の構造化評価と問題生成は、承認済みGemini 3.7 Flash経路を維持します。
  • 導入予定の翻訳・抽出は、検証後にGemini 3.5 Flash-Liteを上限付きで再試行します。
  • 構造化テイスティングとGrand:Gemini 3.7 Flashの失敗を弱い評価モデルへ降格しません。
  • モデル切替は課金に影響させず、一処理につき最大一回だけ消費します。

機密・プライバシー境界

  • 公開カタログでは承認済み技術を示しますが、クライアントから実行モデルを選択・上書きできません。
  • 評価・問題生成用の指示、非公開資料、ルーティング閾値、安全対策はサーバー限定です。
  • 思考過程はユーザーに表示せず、Firestoreやアプリログにも保存しません。
  • APIキーはSecret Managerに置き、アプリ、PWA、公開リポジトリへ含めません。
  • Grand参照資料は、Mistral検証中は承認済みGemini経路だけで扱います。
  • Mistralの本番承認にはEUリージョナルのステートレスAPI、API学習不使用、ZDR適用可否の確認を必須とし、運用確認前は有効化済みと表示しません。
  • 運用ログには用途、遅延、トークン数、エラー種別などのメタデータだけを残し、プロンプト、本文、メール、画像は記録しません。

更新に追随するアーキテクチャー

モデルカタログ、8言語ページ、構造化データ、サイトマップ、AI向け要約を同時生成します。リリーステストが言語欠落、誤った稼働表示、固定ランタイムとの不一致を拒否します。

一次技術資料

アーキテクチャーの質問

モバイルやWebクライアントがAIモデルを選びますか?

いいえ。認証されたサーバーが用途を分類し、バージョン管理されたモデル方針を適用します。

フォールバックでチケットを追加消費しますか?

いいえ。再試行と事業者切替は同じ冪等リクエストを共有し、二重消費できません。

Mistralモデルはすでに本番評価を処理していますか?

まだです。8言語とワイン領域の検証中で、本番リリース検証を通過するまでは検証中と表示します。

Maison Apéroの評価・問題生成用の指示は公開されますか?

いいえ。公開ページは構成を説明しますが、プロンプト、非公開資料、閾値、思考過程はサーバーの機密情報です。