Download the PHP package helgesverre/milvus without Composer
On this page you can find all versions of the php package helgesverre/milvus. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download helgesverre/milvus
More information about helgesverre/milvus
Files in helgesverre/milvus
Package milvus
Short Description PHP Client for the Milvus Rest API
License MIT
Homepage https://github.com/helgesverre/milvus
Informations about the package milvus
Milvus.io PHP API Client
Milvus is an open-source vector database that is highly flexible, reliable, and blazing fast. It supports adding, deleting, updating, and near real-time search of vectors on a trillion-byte scale.
This package is an API Client for the Milvus v2.3.3 Restful API, and is built on the Saloon package.
Documentation about the Restful API is available on the Milvus website, and an OpenAPI spec is available here.
Versions
Milvus Version | PHP Client Version |
---|---|
v2.3.x | v0.0.x |
v2.2.x | Not supported (*) |
(*) But is mostly compatible, the only difference (that I can see) between them is the new Vector Upsert endpoint, and
new parameters (params.range_filter
and params.radius
) in the Vector Search endpoint.
Installation
You can install the package via composer:
You can publish the config file with:
This is the contents of the published config/milvus.php
file:
Usage
With Laravel
For Laravel users, you can use the Milvus
facade to interact with the Milvus API:
Without Laravel
If you are not using laravel, you will have to create a new instance of the Milvus class and provide a token or user/pass, the host and the port.
Using with Zilliz Cloud
If you are using the hosted version of Milvus, you will need to specify the following host and port along with your API token:
Example: Semantic Search with Milvus and OpenAI Embeddings
This example demonstrates how to perform a semantic search in Milvus using embeddings generated from OpenAI.
Prepare Your Data
First, create an array of data you wish to index. In this example, we'll use blog posts with titles, summaries, and tags.
Generate Embeddings
Use OpenAI's embeddings API to convert the summaries of your blog posts into vector embeddings.
Create Milvus collection
Create a collection in Milvus to store your blog post embeddings, note that the dimension of the embeddings must match
the dimension of the embeddings generated by OpenAI (1536
if you are using the text-embedding-ada-002
model).
Insert into Milvus
Insert these embeddings, along with other blog post data, into your Milvus collection.
Creating a Search Vector with OpenAI
Generate a search vector for your query, akin to how you processed the blog posts.
Searching using the Embedding in Milvus
Use the Milvus client to perform a search with the generated embedding.
Running Milvus in Docker
To quickly get started with Milvus, you can run it in Docker, by using the following command
A healthcheck endpoint will now be available on http://localhost:9091/healthz
, and the Milvus API will be available
on http://localhost:19530
.
To stop Milvus, run docker compose down
, to wipe all the data, run docker compose down -v
.
For more details Installing Milvus Standalone with Docker Compose
For production workloads, consider checking out Zilliz.com, which are the developers behind Milvus and provides a hosted version of Milvus in the Cloud ☁️.
Testing
License
The MIT License (MIT). Please see License File for more information.
Disclaimer
"Milvus®" and the Milvus logo are registered trademarks of the Linux Foundation (LF Projects, LLC). This package is not affiliated with, endorsed by, or sponsored by the Linux Foundation. It's developed independently and uses the "Milvus" name under fair use, solely for identification. All trademarks and registered trademarks, including "Milvus®", are the property of their respective owners. "Milvus®" is a registered trademark of the Linux Foundation.
All versions of milvus with dependencies
saloonphp/saloon Version ^3.0
saloonphp/laravel-plugin Version ^v3.0.0
spatie/laravel-data Version ^3.0|^4.0
spatie/laravel-package-tools Version ^1.14.0