mirror of https://github.com/milvus-io/milvus.git
186 lines
6.5 KiB
Go
186 lines
6.5 KiB
Go
// Licensed to the LF AI & Data foundation under one
|
|
// or more contributor license agreements. See the NOTICE file
|
|
// distributed with this work for additional information
|
|
// regarding copyright ownership. The ASF licenses this file
|
|
// to you under the Apache License, Version 2.0 (the
|
|
// "License"); you may not use this file except in compliance
|
|
// with the License. You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
// nolint
|
|
package milvusclient_test
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/milvus-io/milvus/client/v2/column"
|
|
"github.com/milvus-io/milvus/client/v2/milvusclient"
|
|
)
|
|
|
|
func ExampleClient_Insert_columnbase() {
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
|
|
cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
|
|
Address: milvusAddr,
|
|
})
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
defer cli.Close(ctx)
|
|
|
|
resp, err := cli.Insert(ctx, milvusclient.NewColumnBasedInsertOption("quick_setup").
|
|
WithInt64Column("id", []int64{1, 2, 3, 4, 5, 6, 7, 8, 9}).
|
|
WithVarcharColumn("color", []string{"pink_8682", "red_7025", "orange_6781", "pink_9298", "red_4794", "yellow_4222", "red_9392", "grey_8510", "white_9381", "purple_4976"}).
|
|
WithFloatVectorColumn("vector", 5, [][]float32{
|
|
{0.3580376395471989, -0.6023495712049978, 0.18414012509913835, -0.26286205330961354, 0.9029438446296592},
|
|
{0.19886812562848388, 0.06023560599112088, 0.6976963061752597, 0.2614474506242501, 0.838729485096104},
|
|
{0.43742130801983836, -0.5597502546264526, 0.6457887650909682, 0.7894058910881185, 0.20785793220625592},
|
|
{0.3172005263489739, 0.9719044792798428, -0.36981146090600725, -0.4860894583077995, 0.95791889146345},
|
|
{0.4452349528804562, -0.8757026943054742, 0.8220779437047674, 0.46406290649483184, 0.30337481143159106},
|
|
{0.985825131989184, -0.8144651566660419, 0.6299267002202009, 0.1206906911183383, -0.1446277761879955},
|
|
{0.8371977790571115, -0.015764369584852833, -0.31062937026679327, -0.562666951622192, -0.8984947637863987},
|
|
{-0.33445148015177995, -0.2567135004164067, 0.8987539745369246, 0.9402995886420709, 0.5378064918413052},
|
|
{0.39524717779832685, 0.4000257286739164, -0.5890507376891594, -0.8650502298996872, -0.6140360785406336},
|
|
{0.5718280481994695, 0.24070317428066512, -0.3737913482606834, -0.06726932177492717, -0.6980531615588608},
|
|
}),
|
|
)
|
|
if err != nil {
|
|
// handle err
|
|
}
|
|
fmt.Println(resp)
|
|
}
|
|
|
|
func ExampleClient_Insert_binaryVector() {
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
|
|
cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
|
|
Address: milvusAddr,
|
|
})
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
defer cli.Close(ctx)
|
|
|
|
resp, err := cli.Insert(ctx, milvusclient.NewColumnBasedInsertOption("quick_setup").
|
|
WithBinaryVectorColumn("binary_vector", 128, [][]byte{
|
|
{0b10011011, 0b01010100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
|
|
{0b10011011, 0b01010101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
|
|
}))
|
|
if err != nil {
|
|
// handle err
|
|
}
|
|
fmt.Println(resp)
|
|
}
|
|
|
|
func ExampleClient_Insert_jsonData() {
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
|
|
cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
|
|
Address: milvusAddr,
|
|
})
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
defer cli.Close(ctx)
|
|
|
|
resp, err := cli.Insert(ctx, milvusclient.NewColumnBasedInsertOption("my_json_collection").
|
|
WithInt64Column("pk", []int64{1, 2, 3, 4}).
|
|
WithFloatVectorColumn("embedding", 3, [][]float32{
|
|
{0.12, 0.34, 0.56},
|
|
{0.56, 0.78, 0.90},
|
|
{0.91, 0.18, 0.23},
|
|
{0.56, 0.38, 0.21},
|
|
}).WithColumns(
|
|
column.NewColumnJSONBytes("metadata", [][]byte{
|
|
[]byte(`{
|
|
"product_info": {"category": "electronics", "brand": "BrandA"},
|
|
"price": 99.99,
|
|
"in_stock": True,
|
|
"tags": ["summer_sale"]
|
|
}`),
|
|
[]byte(`null`),
|
|
[]byte(`null`),
|
|
[]byte(`"metadata": {
|
|
"product_info": {"category": None, "brand": "BrandB"},
|
|
"price": 59.99,
|
|
"in_stock": None
|
|
}`),
|
|
}),
|
|
))
|
|
if err != nil {
|
|
// handle err
|
|
}
|
|
fmt.Println(resp)
|
|
}
|
|
|
|
func ExampleClient_Upsert_columnBase() {
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
|
|
cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
|
|
Address: milvusAddr,
|
|
})
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
defer cli.Close(ctx)
|
|
|
|
resp, err := cli.Upsert(ctx, milvusclient.NewColumnBasedInsertOption("quick_setup").
|
|
WithInt64Column("id", []int64{1, 2, 3, 4, 5, 6, 7, 8, 9}).
|
|
WithVarcharColumn("color", []string{"pink_8682", "red_7025", "orange_6781", "pink_9298", "red_4794", "yellow_4222", "red_9392", "grey_8510", "white_9381", "purple_4976"}).
|
|
WithFloatVectorColumn("vector", 5, [][]float32{
|
|
{0.3580376395471989, -0.6023495712049978, 0.18414012509913835, -0.26286205330961354, 0.9029438446296592},
|
|
{0.19886812562848388, 0.06023560599112088, 0.6976963061752597, 0.2614474506242501, 0.838729485096104},
|
|
{0.43742130801983836, -0.5597502546264526, 0.6457887650909682, 0.7894058910881185, 0.20785793220625592},
|
|
{0.3172005263489739, 0.9719044792798428, -0.36981146090600725, -0.4860894583077995, 0.95791889146345},
|
|
{0.4452349528804562, -0.8757026943054742, 0.8220779437047674, 0.46406290649483184, 0.30337481143159106},
|
|
{0.985825131989184, -0.8144651566660419, 0.6299267002202009, 0.1206906911183383, -0.1446277761879955},
|
|
{0.8371977790571115, -0.015764369584852833, -0.31062937026679327, -0.562666951622192, -0.8984947637863987},
|
|
{-0.33445148015177995, -0.2567135004164067, 0.8987539745369246, 0.9402995886420709, 0.5378064918413052},
|
|
{0.39524717779832685, 0.4000257286739164, -0.5890507376891594, -0.8650502298996872, -0.6140360785406336},
|
|
{0.5718280481994695, 0.24070317428066512, -0.3737913482606834, -0.06726932177492717, -0.6980531615588608},
|
|
}),
|
|
)
|
|
if err != nil {
|
|
// handle err
|
|
}
|
|
fmt.Println(resp)
|
|
}
|
|
|
|
func ExampleClient_Delete() {
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
|
|
cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
|
|
Address: milvusAddr,
|
|
})
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
defer cli.Close(ctx)
|
|
|
|
res, err := cli.Delete(ctx, milvusclient.NewDeleteOption("quick_setup").
|
|
WithInt64IDs("id", []int64{1, 2, 3}))
|
|
if err != nil {
|
|
// handle error
|
|
}
|
|
|
|
fmt.Println(res.DeleteCount)
|
|
}
|