1人のエンジニアがNimで作り上げた「Hachi」が示す、個人検索エンジンの未来

なぜ今、私たちは「ローカル」に回帰するのか

GoogleフォトやiCloudは便利です。しかし、そこには常に「プライバシー」と「ベンダーロックイン」という代償がつきまといます。「自分の写真は自分の手元で管理したい、でもAIによる高度な検索機能は捨てたくない」。そんなジレンマを抱えるテック愛好家たちの間で、あるインドの個人開発者が公開したプロジェクトが静かな熱狂を呼んでいます。

その名は「Hachi」

単なる画像ビューアではありません。これは、分散した個人の「カオスなデータ」を、AI(CLIPモデル)とメタデータを駆使して串刺し検索するために設計された、完全セルフホスト型の検索エンジンです。しかも、開発言語に選ばれたのは、まさかのNim

今回は、月間100万PVを誇る当メディアのシニア・キュレーターとして、この野心的なプロジェクトの全貌と、そこに込められた「ハッカーの哲学」を深掘りします。


「Hachi」とは何か?

参照記事(開発者ブログ)から読み取れる「Hachi」の核心は以下の通りです。

  • カオスな個人データを一元化: ローカルHDDからクラウドまで、分散したデータを認証を通すだけで一括検索可能にする(現在は画像のみ対応、将来的には動画・テキストも)。
  • AIによるセマンティック検索: ファイル名だけでなく、画像の中身(「猫」「夕日」など)をAI(CLIPモデル)が理解し、自然言語で検索可能。
  • 徹底したミニマリズム: Dockerなどの重厚な依存関係を排除。PythonとNim(Cコンパイラ)だけで動作する軽量設計。
  • ハッカビリティ(改造のしやすさ): ユーザー自身がコードを読み、自分好みにカスタマイズすることを前提とした設計思想。

なぜ「Hachi」がテック勢を惹きつけるのか

単なる「Googleフォトのクローン」なら、すでにImmichPhotoPrismといった素晴らしいOSSが存在します。しかし、私がリサーチを進める中で見えてきたHachiの特異性は、その「技術的な尖り方」「哲学」にあります。

1. 敢えて「Nim」を選ぶという狂気(褒め言葉)

通常、AI開発といえばPythonとC++が相場です。しかし、Hachiの開発者(Anubhav氏)は、コアエンジンにNimを採用しました。

  • なぜNimか?: Pythonのような読みやすさと、C言語並みの実行速度を兼ね備えているためです。
  • CPUへの最適化: Hachiは、高価なNVIDIA製GPU(H100など)を持たない個人ユーザーでも快適に動くよう、Intel/AMD製CPUの能力を限界まで引き出す設計(OneDNNの活用)がなされています。開発者自身がCore i5のラップトップで開発・テストしているという事実は、多くの「自宅サーバー勢」に勇気を与えるでしょう。

2. 「検索エンジン」としての再定義

既存のツールが「アルバム管理」に主眼を置いているのに対し、Hachiは自らを「検索エンジン」と定義しています。 人間は「うろ覚え」で検索します。Hachiは、AIによる曖昧な検索(セマンティック検索)と、Exifデータなどの確定的な検索(メタデータ検索)を組み合わせることで、「記憶の断片」から正解にたどり着くプロセスを実装しようとしています。これは、検索インターフェースそのものの再発明と言えるでしょう。

3. 「技術的負債」を愛する哲学

記事の中で最も印象的なのは、開発者のこの言葉です。

“There is some kind of activation-energy requirement for each project, past that it actually is much easier to extend…” (すべてのプロジェクトにはある種の「活性化エネルギー」が必要であり、それを超えれば拡張は容易になる)

彼は、安易に既存の重厚なライブラリに頼るのではなく、**自分の手でコントロールできる範囲でゼロから書く(車輪の再発明をする)**ことを選んでいます。これは「効率」とは逆行しますが、「理解」と「自由」を手に入れるためのハッカーとしての矜持です。この「不便益」こそが、オープンソースの本来の楽しさではないでしょうか。

4. 草の根イノベーションの力

リサーチの結果、このプロジェクトはインドの「Samagata Foundation」や「FossUnited」といった財団からの助成金を受けて開発されていることが分かりました。巨大テック企業の独占に対する、こうした草の根(Grassroots)のイノベーションは、Webの健全な未来にとって希望の光です。



あなたのデータは誰のものか?

Hachiはまだ発展途上のプロジェクトであり、Immichのような洗練されたUIや安定性はまだないかもしれません。しかし、ここには「自分のデータは自分の手で、好きなように扱う」という、コンピューティングの原初的な喜びが詰まっています。

週末、久しぶりにターミナルを開いて、この「野生の検索エンジン」を飼い慣らしてみるのはいかがでしょうか? それはきっと、便利さの中で忘れていた「技術を触る楽しさ」を思い出させてくれるはずです。

Next Step for You

もしあなたがエンジニアで、Python環境をお持ちなら、今すぐGitHubリポジトリをクローンして動かしてみてください。「Dockerなしで動く」という彼らのミニマリズムの真髄を、肌で感じることができるでしょう。

出典・引用

本記事は以下の一次情報を元に構成・解説しました。