Skip to main content
Open on GitHub

Clarifai

Clarifai 是最早的深度学习平台之一,成立于 2013 年。Clarifai 提供了一个 AI 平台,涵盖了数据探索、数据标注、模型训练、评估和推理的完整 AI 生命周期,支持图像、视频、文本和音频数据。据我们所知,在 LangChain 生态系统中,Clarifai 是唯一一个在一个生产级平台上同时支持 LLMs、embeddings 和向量存储的提供商,这使其成为对其 LangChain 实现进行操作化的绝佳选择。

Clarifai 为各种不同的用例提供了数千种 AI 模型。您可以在此处探索它们,找到最适合您用例的模型。这些模型包括其他提供商(如 OpenAI、Anthropic、Cohere、AI21 等)创建的模型,以及来自开源的最新模型(如 Falcon、InstructorXL 等),以便您将最佳的 AI 融入您的产品中。您会发现这些模型按创建者的 user_id 和我们称为应用程序的 project 进行组织,以其 app_id 标识。除了 model_id 和可选的 version_id 外,还需要这些 ID,因此请在找到最适合您用例的模型后,记下所有这些 ID!

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

安装和设置

  • 安装 Python SDK:
pip install clarifai

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

LLMs

要查找 Clarifai 平台上的 LLMs 选择,您可以在此选择 text to text 模型类型。

from langchain_community.llms import Clarifai
llm = Clarifai(pat=CLARIFAI_PAT, user_id=USER_ID, app_id=APP_ID, model_id=MODEL_ID)
API Reference:Clarifai

更多详情,Clarifai LLM 包装器的文档提供了详细演练

Embedding Models

要查找 Clarifai 平台上的 embeddings 模型选择,您可以在此选择 text to embedding 模型类型。

LangChain 中有一个 Clarifai Embedding 模型,您可以使用以下方式访问:

from langchain_community.embeddings import ClarifaiEmbeddings
embeddings = ClarifaiEmbeddings(pat=CLARIFAI_PAT, user_id=USER_ID, app_id=APP_ID, model_id=MODEL_ID)
API Reference:ClarifaiEmbeddings

请参阅用法示例

Vectorstore

Clarifai 的向量数据库于 2016 年推出,并已针对实时搜索查询进行了优化。通过 Clarifai 平台的工作流,您的数据将由 embedding 模型自动索引,还可以选择其他模型来索引数据库中的信息以供搜索。您不仅可以通过向量查询数据库,还可以按元数据匹配、其他 AI 预测的概念进行过滤,甚至进行地理坐标搜索。只需创建一个应用程序,选择适合您数据类型的基本工作流,然后上传它(通过 API 文档记录在此处或 clarifai.com 上的 UI)。

您也可以直接从 LangChain 添加数据,并且会自动进行索引。您会发现这与其他向量存储略有不同,在其他向量存储中,您需要在其构造函数中提供 embedding 模型,并让 LangChain 协调从文本获取 embedding 并将其写入索引。这不仅更方便,而且利用 Clarifai 的分布式云在后台完成所有索引工作也更具可扩展性。

from langchain_community.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)
API Reference:Clarifai

更多详情,Clarifai 向量存储的文档提供了详细演练