Skip to main content

Clarifai

Clarifai是最早成立于2013年的深度学习平台之一。Clarifai提供了一个AI平台,用于图像、视频、文本和音频数据的数据探索、数据标注、模型训练、评估和推理的完整AI生命周期。在LangChain生态系统中,据我们所知,Clarifai是唯一一个在一个生产规模的平台上支持LLMs、嵌入和向量存储的提供商,使其成为您实施LangChain的优秀选择。

安装和设置

  • 安装Python SDK:
pip install clarifai

注册一个Clarifai账户,然后从安全设置中获取个人访问令牌,并将其设置为环境变量(CLARIFAI_PAT)。

模型

Clarifai提供了数千个用于许多不同用例的AI模型。您可以在这里探索它们,找到最适合您用例的模型。这些模型包括其他提供商(如OpenAI、Anthropic、Cohere、AI21等)创建的模型,以及来自开源的最先进模型(如Falcon、InstructorXL等),以便将最佳的AI集成到您的产品中。您将发现这些模型按创建者的user_id组织,并且按我们称之为应用程序的项目组织,用app_id表示。一旦找到了最适合您用例的最佳模型,请记下所有这些ID,这些ID将需要model_id和可选的version_id。

还请注意,鉴于图像、视频、文本和音频理解的模型很多,您可以构建一些有趣的AI代理,利用各种AI模型作为专家来理解这些数据类型。

LLMs

要在Clarifai平台上找到LLMs的选择,您可以在这里选择文本到文本模型类型。

from langchain.llms import Clarifai
llm = Clarifai(pat=CLARIFAI_PAT, user_id=USER_ID, app_id=APP_ID, model_id=MODEL_ID)

有关更多详细信息,请参阅Clarifai LLM包装器的详细演练

文本嵌入模型

要在Clarifai平台上找到文本嵌入模型的选择,您可以在这里选择文本到嵌入模型类型。

在LangChain中有一个Clarifai嵌入模型,您可以使用以下代码访问:

from langchain.embeddings import ClarifaiEmbeddings
embeddings = ClarifaiEmbeddings(pat=CLARIFAI_PAT, user_id=USER_ID, app_id=APP_ID, model_id=MODEL_ID)

有关更多详细信息,请参阅Clarifai嵌入包装器的详细演练

向量存储

Clarifai的向量数据库于2016年推出,并经过优化以支持实时搜索查询。在Clarifai平台中的工作流程中,您的数据会自动由嵌入模型和可选的其他模型索引,并将该信息索引到数据库中以进行搜索。您不仅可以通过向量查询数据库,还可以通过元数据匹配、其他AI预测概念进行过滤,甚至进行地理坐标搜索。只需创建一个应用程序,选择适合您数据类型的适当基本工作流程,并将其上传(通过API,如此处所述或clarifai.com上的UI)。

您还可以直接从LangChain添加数据,自动索引将为您进行。您会注意到,这与其他向量存储有所不同,其他向量存储需要在其构造函数中提供嵌入模型,并且LangChain协调从文本中获取嵌入并将其写入索引。使用Clarifai的分布式云来在后台进行所有索引不仅更方便,而且更具可扩展性。

from langchain.vectorstores import Clarifai
clarifai_vector_db = Clarifai.from_texts(user_id=USER_ID, app_id=APP_ID, texts=texts, pat=CLARIFAI_PAT, number_of_docs=NUMBER_OF_DOCS, metadatas = metadatas)

有关更多详细信息,请参阅Clarifai向量存储的详细演练