Pymilvus

Latest version: v2.4.3

Safety actively analyzes 638730 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 10

2.2.12

Fixing the encoding issue

By setting the "ensure_ascii=False" parameter in the "json.dumps" function, non-ASCII characters in the data are not escaped during the "insert" operation.
After inserting non-ASCII characters without escaping, users can also use them as keys in expression filtering from the JSON field.
The following is a sample code snippet.

python
import numpy as np
from pymilvus import MilvusClient, DataType

dimension = 128
collection_name = "books"
client = MilvusClient("http://localhost:19530")

schema = client.create_schema(auto_id=True)
schema.add_field("id", DataType.INT64, is_primary=True)
schema.add_field("embeddings", DataType.FLOAT_VECTOR, dim=dimension)
schema.add_field("info", DataType.JSON)

index_param = client.prepare_index_params("embeddings", metric_type="L2")
client.create_collection_with_schema(collection_name, schema, index_param)

rng = np.random.default_rng(seed=19530)
rows = [
{"embeddings": rng.random((1, dimension))[0],
"info": {"title": "Lord of the Flies", "author": "William Golding"}},

{"embeddings": rng.random((1, dimension))[0],
"info": {"作者": "J.D.塞林格", "title": "麦田里的守望者", }},

{"embeddings": rng.random((1, dimension))[0],
"info": {"Título": "Cien años de soledad", "autor": "Gabriel García Márquez"}},
]

client.insert(collection_name, rows)
result = client.query(collection_name, filter="info['作者'] == 'J.D.塞林格' or info['Título'] == 'Cien años de soledad'",
output_fields=["info"],
consistency_level="Strong")

for hit in result:
print(f"hit: {hit}")


The output will be:

hit: {'info': {'作者': 'J.D.塞林格', 'title': '麦田里的守望者'}, 'id': 442210659570062545}
hit: {'info': {'Título': 'Cien años de soledad', 'autor': 'Gabriel García Márquez'}, 'id': 442210659570062546}

2.2.11

Add milvus_client

2.2.9

- JSON support
- Dynamic schema
- Partition key
- Connection management

2.2.8

New Features
1. [[FEATURE]: Has an utility function to parse if the connection is to Zilliz cloud or opensource Milvus](https://github.com/milvus-io/pymilvus/issues/1371)
python
>>> utility.get_server_type(using="default")
"milvus"

2. List indexes by field name https://github.com/milvus-io/pymilvus/pull/1386
python
>>> utility.list_indexes(collection_name, field_name=vec_field)
[vec_field_idx]

3. [[FEATURE]: Remove the logic to fill in the default number of shard when create collection](https://github.com/milvus-io/pymilvus/issues/1377)
PyMilvus doesn't set default shard numbers when creating a new collection.
4. [[FEATURE]: PyMilvus supports using env configs](https://github.com/milvus-io/pymilvus/issues/1369)
- Support uri with username and password:
python
from pymilvus import connections
uri = "https://username:passwordexampledomain.com:19530"
connections.connect(uri=uri)

- Support using MIVLUS_URI env to init default connection alias.
shell
// set MILVUS_URI in env
$ export MILVUS_URI=https://username:passwordexampledomain.com:19530

python
>>> from pymilvus import connections
>>> connections.connect()
>>> connections.get_connection_addr("default")
{"address": "exampledomain.com:19530", "user": username}

- Support reading envs from .env file

.env.example in https://github.com/milvus-io/pymilvus/blob/master/.env.example
Please copy this file and rename as .env, pymilvus will read .env file if provided

MILVUS_URI=
MILVUS_URI=https://username:passwordin01-random123.xxx.com:19530

Milvus connections configs
MILVUS_CONN_ALIAS=default
MILVUS_CONN_TIMEOUT=10

Bug fixes
- [[Bug]: Partition in orm is buggy](https://github.com/milvus-io/pymilvus/issues/1403)

2.2.7

Fix some bugs

2.2.6

Fix some bugs

Page 4 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.