title: "Building a Desktop LLM App with cpp-httplib"
order: 0
status: "draft"
llama.cpp を組み込んだ LLM 翻訳デスクトップアプリを段階的に構築しながら、cpp-httplib のサーバー・クライアント両面の使い方を実践的に学びます。翻訳は一例であり、この部分を差し替えることで要約・コード生成・チャットボットなど自分のアプリに応用できます。
依存ライブラリ
章立て
- llama.cpp を組み込んで REST API を作る — テキストを POST すると翻訳結果を JSON で返すシンプルな API から始める
- SSE でトークンストリーミングを追加する — 翻訳結果をトークン単位で逐次返す LLM API 標準の方式を実装する
- モデルの取得・管理機能を追加する — Hugging Face から GGUF モデルを検索・ダウンロードするクライアント機能を実装する
- Web UI を追加する — 静的ファイル配信で翻訳 UI をホストし、ブラウザから操作できるようにする
- WebView でデスクトップアプリ化する — webview/webview で包み、Electron 的なデスクトップアプリとして動作させる
- llama.cpp 本家のサーバー実装をコードリーディング — 自分で作ったものとプロダクション品質のコードを比較して学ぶ