跳到主要内容

add_field()

此操作会为结构体数组字段中的结构体元素 Schema 添加一个字段。

请求语法​

python
add_field(
field_name: str,
datatype: DataType
)

参数:

  • field_name (string) -

    [必需]

    字段名称。

  • datatype (DataType) -

    [必需]

    字段的数据类型。

    为不同字段选择数据类型时,您可以从以下选项中进行选择。详情请参见 结构体数组。

  • max_length (int) -

    允许插入的字符串的最大字节长度。请注意,多字节字符(例如 Unicode 字符)每个可能会占用多个字节,因此请确保插入字符串的字节长度不超过指定限制。取值范围:[1, 65,535]。

    对于 DataType.VARCHAR 字段,此参数为必需。

  • dim (int) -

    向量嵌入的维度。该值应为大于 1 的整数。

  • mmap_enabled (bool) -

    是否让 Milvus 将字段数据映射到内存中,而不是将其完全加载到内存。有关详细设置,请参见 MMap-enabled Data Storage。

返回类型:

StructFieldSchema

返回值:

一个 StructFieldSchema 对象,其中包含已添加到 Schema 的字段。

异常:

  • MilvusException

    在此操作期间发生任何错误时,将引发此异常。

示例​

python
from pymilvus import DataType, FieldSchema, StructFieldSchema

schema = StructFieldSchema(
name="struct_schema",
fields=[vector, varchar]
)

# Add the vector field
schema.add_field(
field_name="vector_02",
datatype=DataType.FLOAT_VECTOR,
dim=768
)

# Add a scalar field to the schema
schema.add_field(
field_name="scalar_01",
datatype=DataType.INT32
)
最低 SDK 版本v2.6.x