shikeying
2024-04-03 b77abcbc0f17070a2a970e0c4aa5837e90f28e1f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.walker.support.milvus.util;
 
import io.milvus.grpc.DataType;
import io.milvus.param.collection.FieldType;
 
public class FieldTypeUtils {
 
    public static FieldType toMilvusFieldType(com.walker.support.milvus.FieldType type, int dimension){
        FieldType.Builder builder = FieldType.newBuilder();
        builder.withName(type.getName())
                .withDescription(type.getDescription())
                .withAutoID(false)
                .withDimension(dimension)
                .withPrimaryKey(type.isPrimaryKey())
                .withTypeParams(type.getTypeParams())
                .withDataType(toMilvusDataType(type.getDataType()));
        return builder.build();
    }
 
    public static DataType toMilvusDataType(com.walker.support.milvus.DataType dt){
        if(dt == com.walker.support.milvus.DataType.String){
//            return DataType.String;
            return DataType.VarChar;
        } else if(dt == com.walker.support.milvus.DataType.VarChar){
            return DataType.VarChar;
        } else if(dt == com.walker.support.milvus.DataType.Float){
            return DataType.Float;
        } else if(dt == com.walker.support.milvus.DataType.Double){
            return DataType.Double;
        } else if(dt == com.walker.support.milvus.DataType.Integer){
            return DataType.Int32;
        } else if(dt == com.walker.support.milvus.DataType.Long){
            return DataType.Int64;
        } else if(dt == com.walker.support.milvus.DataType.FloatVector){
            return DataType.FloatVector;
        } else if(dt == com.walker.support.milvus.DataType.BinaryVector){
            return DataType.BinaryVector;
        } else if(dt == com.walker.support.milvus.DataType.None){
            return DataType.None;
        } else {
            throw new IllegalArgumentException("咱未实现其他字段格式支持:" + dt.name());
        }
    }
}