跳转到主要内容
可以使用 .update 更新集合中记录的任何属性
collection.update(
    ids=["id1", "id2", "id3", ...],
    embeddings=[[1.1, 2.3, 3.2], [4.5, 6.9, 4.4], [1.1, 2.3, 3.2], ...],
    metadatas=[{"chapter": 3, "verse": 16}, {"chapter": 3, "verse": 5}, {"chapter": 29, "verse": 11}, ...],
    documents=["doc1", "doc2", "doc3", ...],
)
如果在集合中找不到 id,系统将记录一个错误并忽略该更新。如果在没有提供相应 embeddings 的情况下提供了 documents,则将使用集合的嵌入函数重新计算嵌入。 元数据(Metadata)值可以包含数组 —— 有关支持的元数据类型,请参阅添加数据 如果提供的 embeddings 维度与集合不一致,将引发异常。 Chroma 还支持 upsert 操作,该操作会更新现有项目,如果项目尚不存在则进行添加。
collection.upsert(
    ids=["id1", "id2", "id3", ...],
    embeddings=[[1.1, 2.3, 3.2], [4.5, 6.9, 4.4], [1.1, 2.3, 3.2], ...],
    metadatas=[{"chapter": 3, "verse": 16}, {"chapter": 3, "verse": 5}, {"chapter": 29, "verse": 11}, ...],
    documents=["doc1", "doc2", "doc3", ...],
)
如果集合中不存在 id,则会按照 add 操作创建相应的项目。如果 id 已存在,则会按照 update 操作进行更新。