Show HN: Khoj - Llama 2で第二の脳とオフラインチャット
(github.com/khoj-ai)- Khojは、ユーザーの能力を拡張する個人向けAIアプリであり、オンデバイスの個人AIからクラウド規模のエンタープライズAIまで拡張可能な構造
- ローカルまたはオンラインのLLMとチャットでき、例として llama3、qwen、gemma、mistral、gpt、claude、gemini、deepseek などのモデルに対応
- インターネットや文書から回答を得ることができ、対応する文書形式は画像、PDF、Markdown、org-mode、Word、Notionファイルなど
- Browser、Obsidian、Emacs、Desktop、Phone、Whatsapp からアクセス可能で、カスタム知識・ペルソナ・チャットモデル・ツールを持つ エージェント の作成をサポート
- 反復的なリサーチの自動化、個人ニュースレターとスマート通知の受信トレイ配信、高度な 意味検索 による関連文書の探索、画像生成、音声会話とメッセージ再生をサポート
- オープンソースでセルフホスティング可能。ユーザーのコンピュータ 上でプライベートに実行することも、cloud app で利用することも可能
- Enterprise 版はクラウドサービス、オンプレミス、ハイブリッドソリューションとして提供
1件のコメント
Hacker News の意見
Webサイトのランディングページには Llama やオフライン利用のユースケースがまったく見当たらず、OpenAI 経由でのオンライン利用だけが触れられているように見える
どのモデルサイズとファインチューニングを使っているのか、このユースケースで性能をどう見ているのかも気になる
Llama 2 を 7B と 13B のサイズで少し使ってみたが、コンシューマー向けマシンでは RAM をかなり食う印象なので、可能性には本当に期待している
検索は、埋め込みとベクトル DB に日付コマンドのような追加のメタデータフィルタリングを載せた方式なのかも気になる
Khoj は TheBloke の Llama 7B 4ビット量子化 GGML を使っている
ノートをコンテキストとして入れたときにユーザーのクエリへ一貫した答えを返す、初めてのオフラインチャットモデルに近く、GPT-3.5+ より会話調に近い点も興味深い
自分でホストしたときに個人情報がリモートサービスへ一切送信されない保証があるなら、その プライバシー保証 を非常に明確に書いてくれると助かる
これを見ると本当に素晴らしく、ローカル実行 こそが AI の本当の未来だと思う
小さな M2 MacBook Air で実行してみたら、完全に固まってしまった
昔の PC がウイルスに感染して、マウスを動かしてから45秒後にカーソルが動いていた時代を思い出して、妙に懐かしさまで感じた
この Air には性能面の期待値を下げる必要がありそうで、こういうことは初めて経験した
7B モデル はユニファイドメモリが16GB以上ならかなりよく動くが、8GB の Mac はかなり苦しそうにしているのを見た
1日分のWeb履歴の内容を受け取って、自分が調べたことを ノートとして要約 することも可能だろうか?
個人AIの理想形にどんどん近づいている
数年もすれば、自分の知っているすべてで満たされたデジタルブレインを持てそうで待ち遠しい
毎日のWeb履歴を要約するブラウザ拡張を作るのは、それほど大仕事ではなさそうだし、すでに似たものもありそう
すべてのデジタル上の足跡をインデックス化し、簡単に消化できるようにしてくれるのは本当に価値が大きいはず
Khoj がそうなってくれるといい
こういう機能を提供するツールのおすすめがあるのか気になる
あるいは一緒に作ってみたい人も探したい
PostHog テレメトリ は何に使っているのか?
なぜドキュメントに何も書かれておらず、なぜ明確なオプトアウト方法がないのかわからない
たとえば、人々が Markdown を使っているのか org を使っているのかなどを把握する用途
すべてのデータは完全に匿名化されて収集され、識別可能な情報はテレメトリサーバーへ送信されない
オプトアウトするには
khoj.ymlでshould-log-telemetryの値を false に設定すればよい収集項目と方法をドキュメントに追加した: https://docs.khoj.dev/#/telemetry
それ以外は、このプロジェクトは驚くほどよく動く
素晴らしいプロジェクトに見える
PDF ディレクトリのインデックス化 もできて、スキャン文書をインデックス化できるように PDF に OCR までかけてくれたら本当に良さそう
今のプロジェクト範囲外かもしれないが、つい数日前にもこういうツールがあればいいと思っていた
Khoj は検索とチャットのために PDF ディレクトリ をインデックス化できる
ただし現在は、選択可能なテキストがないスキャン PDF ファイルは処理できない
そうしたファイルまで扱えるとよいし、あとは実装するだけ
近いうちに可能になることを願っている
PDF、ダウンロード、スクリーンショット、写真などをクロールしてファイル構成の論理ツリーを見せてくれて、「このトピックに関連する PDF をここに追加し、出典/著者別に整理してから、スクリーンショットは日付順でここへ移して」のように修正できるとよい
いつも「COMPUTER.」と呼べば応じてくれるコンピューターが欲しかった
「COMPUTER!」と言ったら「お客様、キーボードをお使いください」とは。ああ、キーボードとはなんとも古風だ
gpt4all を使っているようだが、ローカル推論モデルを切り替える公式なサポート方法 があるのか気になる
OpenAI の completion/chat API 向けに設計されたアプリの多くは、llama-cpp-python [0] が提供するエンドポイントを指すだけでもほぼ同じように動作し、llama.cpp が対応する複数のモデルや量子化を使える
そうすれば Apple Silicon の Metal アクセラレーションや NVIDIA GPU を含め、望むハードウェアでより大きなモデルを動かせるし、openrouter.io のような別のプロキシも使える
個人的には openrouter.io は Anthropic の 100k モデルをサポートしているので愛用している
[0]: https://github.com/abetlen/llama-cpp-python
この行 https://github.com/khoj-ai/khoj/blob/master/src/khoj/process... を好きなモデルに変えればよさそう
docker-composeで自分でローカルイメージをビルドする必要はあるが、比較的簡単なはず複数の開発者がさまざまなモデルを試してみたがっているが、私たちは使いやすく、それでいて深く役立つ方向を目指している
リソースが限られているので、どこに集中すべきか少し悩んでいる
Obsidianを使い始めて、チャットAIを触っている立場からすると、これは本当に素晴らしい
まだ使ってはいないが、こういうものは間違いなく必要
十分に良いGPUがないなら、まだコンシューマー向けハードウェアで非常に実用的というわけではなさそうだが、数年以内、あるいはもっと早く可能になると確信している
ロゴも美しく、色も気に入っている
こういうユースケースではLlama 2は十分に有能なので、特にプライバシーが重要な場合、ChatGPTにお金を払う魅力は薄れそう
引き続き良いものを作っていってほしい
1日Khojを使ってみたが、本当に洗練されていてよくできている
いくつか気づいた点がある
これに関するissueと提案をここに残した: https://github.com/khoj-ai/khoj/issues/389
上記のGitHub issueにもメモを追加した
例えばhuggingface/gpt4allモデルを設定できるのか、可能なら名前ベースで自動ダウンロードされるのか、それとも
.binとYAMLをどこかのボリュームに入れる必要があるのか気になるドキュメントに書いたように、テレメトリーサーバー[1]を自分で確認できる
おかしな点が見えたら教えてくれれば、すぐにホットフィックスする
すべてのテレメトリーメタデータもここで確認できる[2]
[1]: https://github.com/khoj-ai/khoj/tree/master/src/telemetry
[2]: https://github.com/khoj-ai/khoj/blob/master/src/khoj/routers...
docker-compose設定は少し特殊なので、詳しくは該当issueを見るとよいGPU統合に関する指摘もありがとう。明確にしておくと、インデックス作成にはGPU最適化を使っているが、Llamaベースのローカルチャットにはまだ使っていない
その部分を動くようにしているところ
./serverを実行したときに得られるもののように、ローカルモデル用のカスタムURLをサポートできるだろうか?検索コンテキストを事前にトークン化しているなら、もっと難しいかもしれない
プロジェクトは本当に素晴らしい
C-sに言及しているのが面白いisearch-forwardは通常、低レイテンシの文字どおりの一致検索に使われるどのようなワークフローなら、Khojがisearchの代替として受け入れられるレイテンシや、より良い有用性を提供できるのか気になる
ドキュメントを探索するときにどう使うのか、例はあるだろうか?
キーワードではなく自然言語検索インターフェースとして、入力するとすぐ検索する体験を提供する
自分のワークフローはこうだ
C-c s sRETn n o 2[1]:
C-c sはkhojtransient menuにバインドされている[2] https://orgmode.org/manual/Speed-Keys.html