matrixji/python-milvus-server start migrate to milvus-io/embd-milvusmilvus_server package name change to milvus, for more details see milvus-io/embd-milvusMilvus server started by python
Currently, windows/linux with x86_64, and macOS with arm64 is supported.
You could simply install it with pip:
pip install python-milvus-server
or with a specific version
pip install python-milvus-server==2.2.2
or install it from the source.
Currently, Milvus windows is build with MSYS2, so please follow below steps for build and install this Milvus server for windows.
sh run-prebuild.sh, after that, you could find all needed dll files under folder milvus/binpython-milvus-server
python setup.py install to install it.python setup.py bdist_wheel to build binary package (wheel and setuptools is required).Currently, compile milvus on linux requires install some dependencies, so we create a docker for build the milvus executable.
bash run-prebuild.sh, after that, you should find all needed binaries under folder milvus/binpython-milvus-server
python setup.py install to install it.python setup.py bdist_wheel to build binary package (wheel and setuptools is required).Similar with under Linux, but you need to install the dependencies on your macos by yourself. It could be done with scripts/install_deps.sh from milvus.
You could load the default_server and start it.
from milvus_server import default_server
from pymilvus import connections
# Optional, if you want store all related data to specific location
# default it wil using:
# %APPDATA%/milvus-io/milvus-server on windows
# ~/.milvus-io/milvus-server on linux
default_server.set_base_dir('D:\test_milvus')
# Optional, if you want cleanup previous data
default_server.cleanup()
# star you milvus server
default_server.start()
# Now you could connect with localhost and the port
# The port is in default_server.listen_port
connections.connect(host='127.0.0.1', port=default_server.listen_port)You could see example.py for a full example.
You could use debug_server instead of default_server for checking startup failures.
from milvus_server import debug_serverand you could also try create server instance by your self
from milvus_server import MilvusServer
server = MilvusServer(debug=True)Yes, we support multiple milvus server instance. Currently windows only(due to pid file path is hardcoded on linux) note: as by default they're using the same data dir, you set different data dir for each instances
from milvus_server import MilvusServer
server1 = MilvusServer()
server2 = MilvusServer()
# this is mandatory
server1.set_base_dir('d:\test_1')
server2.set_base_dir('d:\test_2')You could close server while you not need it anymore.
Or, you're able to using with context to start/stop it.
from milvus_server import default_server
with default_server:
# milvus started, using default server here
...