Beispiel #1
0
    def test_insert_scalar_with_id(self, scalar, vec, connect, dim):
        collection_name = fake.collection_name()
        collection_param = {
            "fields": [
                {"name": "scalar", "type": scalar},
                {"name": "Vec", "type": vec, "params": {"dim": 128}}
            ],
            "auto_id": False
        }

        try:
            connect.create_collection(collection_name, collection_param)
        except Exception as e:
            pytest.fail(f"Create collection {collection_name} fail: {e}")

        if scalar in (DataType.INT32, DataType.INT64):
            scalars = [random.randint(0, 10000) for _ in range(10000)]
        else:
            scalars = [random.random() for _ in range(10000)]

        if vec in (DataType.FLOAT_VECTOR,):
            vectors = records_factory(dim, 10000)
        else:
            vectors = binary_records_factory(dim, 10000)

        entities = [{"Vec": vector, "scalar": s} for vector, s in zip(vectors, scalars)]
        for i, e in enumerate(entities):
            e["_id"] = i

        try:
            connect.insert(collection_name, entities)
        except Exception as e:
            pytest.fail(f"Unexpected Insert Error: {e}")
        finally:
            connect.drop_collection(collection_name)
Beispiel #2
0
def bvrecords(request, connect, bvcollection, dim):

    vectors = binary_records_factory(dim, 10000)

    entities = [{"name": Field_Vector, "values": vectors}]
    connect.bulk_insert(bvcollection, entities)
    connect.flush([bvcollection])

    return bvcollection