mirror of
https://gitee.com/dromara/MilvusPlus.git
synced 2025-12-08 09:58:27 +08:00
commit
003dc5546a
@ -4,6 +4,7 @@ import java.lang.annotation.ElementType;
|
|||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author xgc
|
* @author xgc
|
||||||
**/
|
**/
|
||||||
@ -11,5 +12,6 @@ import java.lang.annotation.Target;
|
|||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface ExtraParam {
|
public @interface ExtraParam {
|
||||||
String key();
|
String key();
|
||||||
|
|
||||||
String value();
|
String value();
|
||||||
}
|
}
|
||||||
@ -4,11 +4,15 @@ import java.lang.annotation.ElementType;
|
|||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author xgc
|
* @author xgc
|
||||||
**/
|
**/
|
||||||
@Target(ElementType.TYPE)
|
@Target(ElementType.TYPE)
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface MilvusCollection {
|
public @interface MilvusCollection {
|
||||||
String name(); // 集合的名称
|
/**
|
||||||
|
* 集合的名称
|
||||||
|
*/
|
||||||
|
String name();
|
||||||
}
|
}
|
||||||
@ -6,6 +6,7 @@ import java.lang.annotation.ElementType;
|
|||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author xgc
|
* @author xgc
|
||||||
**/
|
**/
|
||||||
@ -13,14 +14,57 @@ import java.lang.annotation.Target;
|
|||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface MilvusField {
|
public @interface MilvusField {
|
||||||
|
|
||||||
String name() default ""; // 字段名称,默认使用 Java 字段名
|
/**
|
||||||
DataType dataType() default DataType.FloatVector; // 数据类型,默认为 FLOAT_VECTOR
|
* 字段名称,默认使用 Java 字段名
|
||||||
int dimension() default -1; // 向量维度,仅对向量类型有效
|
*/
|
||||||
boolean isPrimaryKey() default false; // 是否为主键
|
String name() default "";
|
||||||
boolean autoID() default false; // 是否自动生成
|
|
||||||
String description() default ""; // 字段描述
|
/**
|
||||||
DataType elementType() default DataType.None; // 数组或集合中元素的类型,默认为 INVALID
|
* 数据类型,默认为 FLOAT_VECTOR
|
||||||
int maxLength() default -1; // 数组或字符串类型的最大长度,默认为 -1(不指定)
|
*
|
||||||
int maxCapacity() default -1; // 集合类型的最大容量,默认为 -1(不指定)
|
* @see DataType
|
||||||
boolean isPartitionKey() default false; // 是否为分区键
|
*/
|
||||||
|
DataType dataType() default DataType.FloatVector;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 向量维度,仅对向量类型有效
|
||||||
|
*/
|
||||||
|
int dimension() default -1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为主键
|
||||||
|
*/
|
||||||
|
boolean isPrimaryKey() default false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否自动生成
|
||||||
|
*/
|
||||||
|
boolean autoID() default false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 字段描述
|
||||||
|
*/
|
||||||
|
String description() default "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数组或集合中元素的类型,默认为 INVALID
|
||||||
|
*
|
||||||
|
* @see DataType
|
||||||
|
*/
|
||||||
|
DataType elementType() default DataType.None;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 数组或字符串类型的最大长度
|
||||||
|
*/
|
||||||
|
int maxLength() default -1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 集合类型的最大容量
|
||||||
|
*/
|
||||||
|
int maxCapacity() default -1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为分区键
|
||||||
|
*/
|
||||||
|
boolean isPartitionKey() default false;
|
||||||
}
|
}
|
||||||
@ -7,14 +7,34 @@ import java.lang.annotation.ElementType;
|
|||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author xgc
|
* @author xgc
|
||||||
**/
|
**/
|
||||||
@Target(ElementType.FIELD)
|
@Target(ElementType.FIELD)
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface MilvusIndex {
|
public @interface MilvusIndex {
|
||||||
IndexParam.IndexType indexType() default IndexParam.IndexType.FLAT; // 索引类型
|
/**
|
||||||
IndexParam.MetricType metricType() default IndexParam.MetricType.L2; // 度量类型
|
* 索引类型
|
||||||
String indexName() default ""; // 索引名称
|
*
|
||||||
ExtraParam[] extraParams() default {}; // 指定额外的参数
|
* @see IndexParam.IndexType
|
||||||
|
*/
|
||||||
|
IndexParam.IndexType indexType() default IndexParam.IndexType.FLAT;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 度量类型
|
||||||
|
*
|
||||||
|
* @see IndexParam.MetricType
|
||||||
|
*/
|
||||||
|
IndexParam.MetricType metricType() default IndexParam.MetricType.L2;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 索引名称
|
||||||
|
*/
|
||||||
|
String indexName() default "";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 指定额外的参数
|
||||||
|
*/
|
||||||
|
ExtraParam[] extraParams() default {};
|
||||||
}
|
}
|
||||||
@ -11,5 +11,8 @@ import java.lang.annotation.Target;
|
|||||||
@Target(ElementType.TYPE)
|
@Target(ElementType.TYPE)
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface MilvusPartition {
|
public @interface MilvusPartition {
|
||||||
String[] name(); // 分区的名称
|
/**
|
||||||
|
* 分区的名称
|
||||||
|
*/
|
||||||
|
String[] name();
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user