目次
今回も用語の話です。 今回は仕組みの用語「モジュール」です。
モジュール
Weaviateを利用する際にいくつかの機能についてモジュール化されています。 根幹となるベクトルデータベース周りに便利な処理を提供するのがモジュールです。
ベクトライザーモジュール
たとえば、Weaviateはベクトルデータベースですが、登録するデータのベクトルを生成する「ベクトライザー」と呼ばれるモジュールを備えています。 これにより、データ登録や検索時にアプリケーション側で独自にベクトルを生成してからWeaviateに問い合わせる必要がなくなり、より簡単に検索やデータ登録をできるようになっています。 ベクトライザーと呼ばれるモジュールには、様々なモデルやモデルプロバイダー(OpenAIやCohere、Weaviate、Jina AI、Hugging Faceなど)のモジュールが用意されています。必要に応じてモジュールを有効にすることができます。
また、カスタムモジュールということで、独自のモジュールを作成できるようにもなっています。利用可能なモデルプロバイダーがなかったり、機能の追加をしたい場合はドキュメントをご覧ください。
もちろん、ベクトライザーを使用せずに、独自のベクトルのデータを登録したり、検索に使用することも可能です。
生成モジュール
ベクトライザーはエンベディングの生成の用途でしたが、生成モジュール(生成AIモジュール?)と呼ばれるものもあります。 こちらは、検索した結果をもとに、回答を生成することもできます。RAGのGenerateの部分です。 検索するだけでなく、回答の生成のためにLLMを呼び出す仕組みも用意されています。
Weaviateの公式ドキュメント
今回はモジュールについて少しだけ紹介しました。 モジュールの概念に関するWeaviateのドキュメントをModules | Weaviate Documentationご覧いただくとそのほかのモジュールについても記載があります。 また、モデルプロバイダーに関するページも参考にしてください(Model provider integrations | Weaviate Documentation)。
最後に
日本のコミュニティとしてConnpassにグループを作りました。
どうやってイベントをやるかはまだ考え中ですが、興味がある方は登録しておいていただければと。
どんな情報、どんなイベントがあれば興味をもっていただけるか?Weaviateを使ってみようと思うけど何から始めよう?など疑問に思うことがあればXやブログのコメントなどをいただければと思います。
comments powered by Disqus
See Also by Hugo
- Weaviate入門(オブジェクト、コレクション)
- Weaviate入門(ベクトルデータベース、ベクトル)
- Weaviateで日本語を利用した検索という話をしました
- Elasticsearch 1.6.0リリース(日本語訳)
- JVM Operation Casual Talksに参加しました #jvmcasual