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)
更多详情,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)
请参阅用法示例。
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)
更多详情,Clarifai 向量存储的文档提供了详细演练。