Milvus Liteのご紹介:Milvusの軽量版
重要なお知らせ
当社は2024年6月にMilvus Liteをアップグレードし、AI開発者がMilvus on Kurbernetes、Docker、マネージドクラウドサービスを含む様々なデプロイメントオプションで一貫したエクスペリエンスを確保しながら、より迅速にアプリケーションを構築できるようになりました。また、Milvus Liteは様々なAIフレームワークやテクノロジーと統合し、ベクトル検索機能を備えたAIアプリケーションの開発を効率化します。詳細については、以下の文献を参照されたい:
Milvus Lite発表ブログ:https://milvus.io/blog/introducing-milvus-lite.md
Milvus Lite ドキュメント: https://milvus.io/docs/quickstart.md
Milvus Lite GitHubリポジトリ: https://github.com/milvus-io/milvus-lite
Milvusは、ディープニューラルネットワークやその他の機械学習(ML)モデルによって生成された埋め込みベクトルを何十億もの規模でインデックス化、保存、照会することを目的として構築されたオープンソースのベクトルデータベースです。大規模なデータセットに対して類似検索を行う必要がある多くの企業、研究者、開発者にとって人気のある選択肢となっている。
しかし、milvusのフルバージョンは重すぎたり複雑すぎたりすると感じるユーザーもいるだろう。この問題に対処するため、Milvusコミュニティで最も活発な貢献者の一人であるBin Jiは、Milvusの軽量版であるMilvus Liteを構築しました。
Milvus Liteとは?
前述したように、Milvus LiteはMilvusの簡易版であり、多くの利点とメリットを提供します。
- MilvusはPythonアプリケーションに統合することができます。
- スタンドアロンのMilvusが組み込みのEtcdやローカルストレージで動作することができるため、Milvusは自己完結しており、他の依存関係を必要としません。
- Pythonライブラリとしてインポートし、コマンドラインインターフェース(CLI)ベースのスタンドアロンサーバーとして使用することができます。
- Google ColabやJupyter Notebookともスムーズに連携できる。
- 他のMilvusインスタンス(スタンドアロン版、クラスタ化版、フルマネージド版)に安全に移行することができます。
どのような場合にMilvus Liteを使うべきか?
具体的には、Milvus Liteは以下のような状況で最も役立ちます:
- Milvus Operator、Helm、Docker Composeのようなコンテナ技術やツールを使わずにMilvusを使用したい場合。
- Milvusの利用に仮想マシンやコンテナを必要としない場合。
- PythonアプリケーションにMilvusの機能を組み込みたい場合。
- ColabやNotebookでMilvusインスタンスをスピンアップして素早く実験したい場合。
注意: Milvus Liteを本番環境で使用することや、高いパフォーマンス、高い可用性、高いスケーラビリティを必要とする場合には、Milvus Liteを使用することはお勧めしません。本番環境では、MilvusクラスタまたはフルマネージドMilvus on Zilliz Cloudのご利用をご検討ください。
Milvus Liteを始めるには?
それでは、Milvus Liteのインストール、設定、利用方法について説明します。
前提条件
Milvus Liteを利用するためには、以下の要件を満たしている必要があります:
- Python 3.7またはそれ以降のバージョンがインストールされていること。
- 以下のオペレーティングシステムを使用していること:
- Ubuntu >= 18.04 (x86_64)
- CentOS >= 7.0 (x86_64)
- MacOS >= 11.0 (Apple Silicon)
注意事項
- Milvus Lite はベースイメージとして
manylinux2014
を使用しているため、Linux ユーザーのほとんどの Linux ディストリビューションと互換性があります。 - Windows上でMilvus Liteを動作させることも可能ですが、まだ完全には検証されていません。
Milvus Liteのインストール
Milvus LiteはPyPIで公開されているので、pip
。
$ python3 -m pip install milvus
また、以下のようにPyMilvusを使ってインストールすることもできます:
$ python3 -m pip install milvus[client]
Milvus Liteの使用と起動
サンプルノートブックをプロジェクトリポジトリのexampleフォルダからダウンロードしてください。Milvus Liteを使用するには、Pythonライブラリとしてインポートするか、CLIを使用してスタンドアロンサーバとして実行するかの2つの方法があります。
- PythonモジュールとしてMilvus Liteを起動するには、以下のコマンドを実行します:
from milvus import default_server
from pymilvus import connections, utility
# Start your milvus server
default_server.start()
# Now you can connect with localhost and the given port
# Port is defined by default_server.listen_port
connections.connect(host='127.0.0.1', port=default_server.listen_port)
# Check if the server is ready.
print(utility.get_server_version())
# Stop your milvus server
default_server.stop()
- Milvus Liteを一時停止または停止するには、
with
。
from milvus import default_server
with default_server:
# Milvus Lite has already started, use default_server here.
connections.connect(host='127.0.0.1', port=default_server.listen_port)
- Milvus LiteをCLIベースのスタンドアロンサーバとして起動するには、以下のコマンドを実行します:
milvus-server
Milvus Liteを起動した後、PyMilvusや他のツールを使ってスタンドアロンサーバに接続することができます。
デバッグモードでのMilvus Liteの起動
- PythonモジュールとしてMilvus Liteをデバッグモードで起動するには、以下のコマンドを実行します:
from milvus import debug_server, MilvusServer
debug_server.run()
# Or you can create a MilvusServer by yourself
# server = MilvusServer(debug=True)
- スタンドアロンサーバをデバッグモードで起動するには、以下のコマンドを実行します:
milvus-server --debug
データとログの永続化
- Milvus Lite用のローカルディレクトリを作成し、関連するすべてのデータとログを保存するには、以下のコマンドを実行します:
from milvus import default_server
with default_server:
default_server.set_base_dir('milvus_data')
- スタンドアロンサーバーで生成されたすべてのデータとログをローカルドライブに保存するには、次のコマンドを実行します:
$ milvus-server --data milvus_data
Milvus Liteの設定
Milvus Liteの設定は、Python APIやCLIを使用したMilvusインスタンスの設定と同様です。
- PythonのAPIを使用してMilvus Liteを設定するには、基本設定と追加設定の両方で
MilvusServer
インスタンスのconfig.set
APIを使用します:
from milvus import default_server
with default_server:
default_server.config.set('system_Log_level', 'info')
default_server.config.set('proxy_port', 19531)
default_server.config.set('dataCoord.segment.maxSize', 1024)
- CLIを使用してMilvus Liteを設定する場合、基本設定は以下のコマンドを実行します:
$ milvus-server --system-log-level info
$ milvus-server --proxy-port 19531
- CLIを使用してMilvus Liteを設定する場合は、以下のコマンドを実行して基本設定を行います。
$ milvus-server --extra-config dataCoord.segment.maxSize=1024
設定可能な項目は全てMilvusパッケージに同梱されているconfig.yaml
テンプレートに含まれています。
Milvus Liteのインストールおよび設定方法に関する技術的な詳細については、ドキュメントを参照してください。
概要
Milvus Liteは、Milvusの機能をコンパクトにまとめたものである。研究者であれ、開発者であれ、データサイエンティストであれ、この選択肢を検討する価値はある。
Milvus Liteはまた、オープンソースコミュニティへの美しい追加でもあり、貢献者の並外れた仕事を紹介している。Bin Ji氏の努力のおかげで、Milvusはより多くのユーザーが利用できるようになった。私たちは、Bin Ji氏とMilvusコミュニティの他のメンバーが、今後どのような革新的なアイデアを生み出してくれるのか、今から待ち遠しい。
今後ともよろしくお願いします!
Milvus Liteのインストールや使用で問題が発生した場合は、こちらから問題を提起していただくか、Twitterや LinkedInを通じてご連絡ください。また、Slackチャンネルに参加してエンジニアやコミュニティ全体とチャットしたり、火曜日のオフィスアワーをチェックすることもできます!
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word