mrsibe/KnowNote
A local-first AI knowledge base & NotebookLM alternative built with Electron. More convenient, more lightweight, and understands you better!
KnowNote – ローカルファーストの研究ワークスペース
概要
- PDF、Wordドキュメント、PowerPoint、Webページを検索可能なナレッジベースに変換できるクロスプラットフォームのデスクトップアプリ(Electron)です。
- 自然言語で質問すると、回答の根拠となった正確な箇所が引用付きで提示されます。
- 解析、チャンク化、埋め込み、ベクトル検索といった負荷の高い処理はすべてローカルマシン上で実行されます。ネットワーク通信は、設定したLLMエンドポイントへのリクエストのみです。
仕組み
- インポート:
pdfjs-dist、mammoth、officeparser、turndownを使用して、構造(ページ、見出し、スライド)を維持したままテキストを抽出します。 - 分割: テキストを約500文字のパッセージに分割し、わずかにオーバーラップさせます。各パッセージは正確な引用のために開始/終了オフセットを記録します。
- 埋め込み: ONNX経由でオープンソースの
Xenova/multilingual‑e5‑smallモデル(384次元、q8量子化)を使用し、Electronのメインプロセスで各パッセージを埋め込みます。 - 保存: 埋め込みベクトルはローカルのSQLiteデータベース(Drizzle ORM経由で
sqlite‑vecを使用)に保存されます。ノートブックごとにベクトルテーブルが分かれているため、埋め込み空間が混ざることはありません。 - クエリ: 質問を入力すると、アプリが関連性の高いパッセージを取得し、設定したチャットモデル(OpenAI、Anthropic、Google、Ollamaなど)にプロンプトと共に送信して、クリック可能な引用付きの回答を表示します。
- ノート作成: 回答の横に構造化されたノートを書き込み、ノートブックをマインドマップに変換できます。
主な機能
- ローカルRAG – サーバー、Docker、クラウドストレージは不要。すべてデバイス内に留まります。
- BYOモデル (Bring-your-own-model) – OpenAI、Anthropic、Google互換、またはローカルのOllamaエンドポイントに対応。アプリ自体にはチャットモデルは含まれていません。
- 追跡可能な回答 – すべての回答に、ソースとなったパッセージと元のドキュメント内の正確な位置がリストされます。
- マルチフォーマット対応 – PDF、Word、PowerPoint、任意のWebページをインポート可能。
- ノートとマインドマップ – 結論を記録し、関係性を可視化します。
- オープンソース – GPL-3.0ライセンス。埋め込みモデルは初回ダウンロード時にキャッシュされます。
現在の制限事項(最新リリース時点)
- 音声アップロード/文字起こし、クイズ生成、スライド生成は開発中です。
- Linuxビルドは未対応。macOSビルドはApple Siliconのみです。
- ビルドは未署名(macOS)かつ公証されていないため、初回起動時にセキュリティ警告が表示されます。
- マルチユーザー同期、コラボレーション、テレメトリ機能はありません(シングルユーザーツールです)。
技術スタック
- Electron + React + TypeScript + TailwindCSS – UIおよびデスクトップパッケージング。
- Tiptap – リッチテキストノートエディタ。
- ONNX runtime –
multilingual‑e5‑smallエンベダーをローカルで実行。 - SQLite + sqlite‑vec – ベクトルストレージおよび類似検索。
- Node.js – 開発環境。
npm run devでホットリロードモードで起動。
はじめに
- Releases ページから適切なインストーラーをダウンロードします(Windowsは
.exe、Apple Silicon macOSは‑arm64.dmg)。 - macOSの場合、隔離フラグを解除します (
sudo xattr -rd com.apple.quarantine /Applications/KnowNote.app)。 - Windowsの場合、SmartScreenの警告が出たら「実行」をクリックします。
- Settings → Models を開き、エンドポイントを追加します(例:
https://api.openai.com/v1/chat/completionsとAPIキー、またはローカルのOllamaサーバー)。 - ドキュメントをインポートし、質問して、引用付きの回答を確認します。
主なユースケース
- 学術研究: 論文集に対して質問し、回答を裏付ける正確な文章を確認する。
- ビジネスナレッジ管理: 社内PDF、スライド、ポリシー文書をクラウドにアップロードせずに検索する。
- 個人の学習: 信頼できるLLMを使用して対話可能なプライベートな「第二の脳」を構築する。
ライセンス
- GPL-3.0 – 同一ライセンスを維持する限り、コードの自由な使用、改変、再配布が可能です。
詳細情報
- プロジェクトサイト: https://knownote.pages.dev(詳細な機能ガイド、設計思想、NotebookLM/AnythingLLMとの比較)。
- アーキテクチャの概要と設計ノートはリポジトリの
DESIGN.mdにあります。 - 貢献ガイドラインは
CONTRIBUTING.mdにあります。
KnowNote は、ローカルでの検索拡張生成(RAG)を日常の研究ワークフローにもたらし、データをプライベートに保ちながらユーザーが完全に制御できる、真のオープンソースAI拡張デスクトップツールです。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト