如何从嵌入色度数据库重建源文档?

问题描述 投票:0回答:1

Chroma DB 中是否有内置功能能够以可靠的方式从 chromadb 中存储的块重建文档?

langchain 的

Chroma().get()
方法返回一个包含条目的字典 假设原始文档data.txt为“data1 data2 data3”

{
    "documents": [
        "data1","data2","data3"
    ],
    "embeddings": null,
    "ids": [
        uuid1,uuid2,uuid3
    ],
    "metadatas": [
        {
            "source": "data.txt"
        },
        {
            "source": "data.txt"
        },
        {
            "source": "data.txt"
        },
    ]
}

我们如何正确合并嵌入以重新创建源文档 data.txt?

假设它们从一开始就被正确排序,我想可以创建一个循环来做到这一点。唯一的问题是“documents”数组中的某些元素在开头和结尾有一些重叠的子字符串。我没有进行任何自定义分块,因此我不知道溢出有多少个字符,并且它不是恒定的,它在某些元素中有所不同。我想解决办法可能是手动进行分块并了解重叠。

是否有更通用的方法或者由 chroma 或 langchain 提供的方法?

python embedding langchain py-langchain chromadb
1个回答
0
投票

我认为 chromadb 中没有这样的默认函数。如果您想存储任何文本数据并检索它们,它们提供元数据选项,您可以使用内置功能存储和过滤数据。但我已经阅读了有关解码嵌入的内容,以下链接可能会有所帮助 -> https://community.openai.com/t/is-it-possible-to-convert-vector-to-text/312794/20

© www.soinside.com 2019 - 2024. All rights reserved.