🧬 嵌入

嵌入是表示任何类型数据的A.I原生方式,使其成为使用各种A.I驱动的工具和算法的理想选择。它们可以表示文本、图像,并且很快还可以表示音频和视频。创建嵌入的方法有很多,无论是在本地使用已安装的库,还是通过调用API。

Chroma为流行的嵌入提供者提供了轻量级包装器,使其在您的应用中易于使用。您可以在创建Chroma集合时设置一个嵌入函数,该函数将自动使用,或者您也可以直接调用它们。

PythonJS
OpenAI
Google Generative AI
Cohere
Hugging Face
Instructor
Hugging Face Embedding Server
Jina AI

我们欢迎社区添加新的嵌入函数的拉取请求。


默认: all-MiniLM-L6-v2#

默认情况下,Chroma使用Sentence Transformersall-MiniLM-L6-v2模型来创建嵌入。这个嵌入模型可以创建句子和大文档嵌入,可用于各种任务。这个嵌入函数在您的机器上本地运行,可能需要您下载模型文件(这会自动发生)。

python

Sentence Transformers#

Chroma还可以使用任何Sentence Transformers模型来创建嵌入。

python

您可以传入一个可选的model_name参数,让您选择使用哪个Sentence Transformers模型。默认情况下,Chroma使用all-MiniLM-L6-v2。您可以在这里查看所有可用模型的列表。


自定义嵌入函数#

您可以创建自己的嵌入函数以与Chroma一起使用,只需实现EmbeddingFunction协议即可。

python

我们欢迎贡献!如果您创建了一个您认为对其他人有用的嵌入函数,请考虑提交拉取请求将其添加到Chroma的embedding_functions模块中。