Newer
Older
TelosDB / document / 05_sidecar_integration.md

サイドカー統合仕様書 (Sidecar Integration Specification)

1. コンセプト

本システムは、Tauri の Sidecar 機能を活用し、内蔵された llama-server バイナリを動的に制御することで、外部 LLM サービスに依存しないローカル嵌入環境を提供します。

2. Sidecar 管理仕様

2.1 実行バイナリ

  • 名称: llama-server
  • アーキテクチャ: x86_64-pc-windows-msvc (Windows 環境時)
  • ビルド設定: Vulkan / CPU (AVX2/AVX512) 最適化。

2.2 DLL 依存解決 (Windows)

バイナリの起動に必要なライブラリ (ggml.dll, llama.dll 等) を確実に読み込むため、以下の制御を行います。

  1. ランタイムパス補強: 起動プロセスの環境変数 PATH の最優先にバイナリ配置フォルダを追加。
  2. CWD 強制設定: プロセスのカレントディレクトリをバイナリ所在フォルダに設定。

3. 推論エンジン設定

起動時に以下のパラメータを指定します。

引数 説明
--model path/to/model Gemma-3-300M (GGUF) を指定。
--port 8080 内部通信用ポート。
--embedding enabled 埋め込み (Vector) 生成モードを有効化。
--parallel 1 生成効率と安定性のバランス。

4. ライフサイクル

  1. 初期化: App 起動時の initialize_app 内で実行。
  2. ヘルスチェック: /health エンドポイントに対し 500ms 間隔でポーリング。API 準備完了を確認。
  3. モニタリング: 標準出力/標準エラー出力をキャプチャし、Tauri ログに転送。
  4. 終了処理: アプリケーション終了シグナル (Ctrl+C, Window Close, Tray Quit) を検知し、SigTerm を発行。

5. リソース最適化

  • Vulkan: 利用可能な場合、GPU 演算を優先的に使用。
  • メモリ管理: コンテキストサイズを 8192 に制限し、不快なスワップを防止。