跳到主要内容
Open on GitHub

Box

Box 是智能内容云,一个单一平台,使组织能够推动协作,管理整个内容生命周期,保护关键内容,并通过企业 AI 转型业务工作流程。Box 成立于 2005 年,为领先的全球组织(包括 AstraZeneca、JLL、Morgan Stanley 和 Nationwide)简化工作。

在此软件包中,我们提供了多种方法将 Box 内容包含在您的 AI 工作流程中。

安装和设置

pip install -U langchain-box

langchain-box

此软件包包含 LangChain 与 Box 的集成。有关 Box 的更多信息,请查看我们的开发者文档

先决条件

为了与 Box 集成,您需要一些东西

  • 一个 Box 实例 — 如果您当前不是 Box 客户,请注册一个免费开发者帐户
  • 一个 Box 应用程序 — 更多关于如何创建应用程序
  • 您的应用程序在您的 Box 实例中获得批准 — 这由您的管理员完成。好消息是,如果您使用的是免费开发者帐户,您就是管理员。授权您的应用程序

身份验证

box-langchain 包提供了一些身份验证的灵活性。最基本的身份验证方法是使用开发者令牌。这可以在Box 开发者控制台的配置屏幕上找到。此令牌是有意短期的(1 小时),旨在用于开发。使用此令牌,您可以将其添加到您的环境中作为 BOX_DEVELOPER_TOKEN,您可以将其直接传递给加载器,或者您可以使用 BoxAuth 身份验证助手类。

我们将在下面的部分介绍直接将其传递给加载器。

BoxAuth 助手类

BoxAuth 支持以下身份验证方法

  • 令牌 — 开发者令牌或通过 Box SDK 生成的任何令牌
  • 带有服务帐户的 JWT
  • 带有指定用户的 JWT
  • 带有服务帐户的 CCG
  • 带有指定用户的 CCG
注意

如果使用 JWT 身份验证,您需要在生成公钥/私钥对后从 Box 开发者控制台下载配置。将此文件放在您的应用程序目录结构中的某个位置。当使用 BoxAuth 助手类时,您将使用此文件的路径。

有关更多信息,请了解如何设置 Box 应用程序,并查看Box 身份验证指南,了解有关我们不同身份验证选项的更多信息。

示例

令牌

from langchain_box.document_loaders import BoxLoader
from langchain_box.utilities import BoxAuth, BoxAuthType

auth = BoxAuth(
auth_type=BoxAuthType.TOKEN,
box_developer_token=box_developer_token
)

loader = BoxLoader(
box_auth=auth,
...
)

带有服务帐户的 JWT

from langchain_box.document_loaders import BoxLoader
from langchain_box.utilities import BoxAuth, BoxAuthType

auth = BoxAuth(
auth_type=BoxAuthType.JWT,
box_jwt_path=box_jwt_path
)

loader = BoxLoader(
box_auth=auth,
...

带有指定用户的 JWT

from langchain_box.document_loaders import BoxLoader
from langchain_box.utilities import BoxAuth, BoxAuthType

auth = BoxAuth(
auth_type=BoxAuthType.JWT,
box_jwt_path=box_jwt_path,
box_user_id=box_user_id
)

loader = BoxLoader(
box_auth=auth,
...

带有服务帐户的 CCG

from langchain_box.document_loaders import BoxLoader
from langchain_box.utilities import BoxAuth, BoxAuthType

auth = BoxAuth(
auth_type=BoxAuthType.CCG,
box_client_id=box_client_id,
box_client_secret=box_client_secret,
box_enterprise_id=box_enterprise_id
)

loader = BoxLoader(
box_auth=auth,
...

带有指定用户的 CCG

from langchain_box.document_loaders import BoxLoader
from langchain_box.utilities import BoxAuth, BoxAuthType

auth = BoxAuth(
auth_type=BoxAuthType.CCG,
box_client_id=box_client_id,
box_client_secret=box_client_secret,
box_user_id=box_user_id
)

loader = BoxLoader(
box_auth=auth,
...

如果您希望将 OAuth2 与 authorization_code 流一起使用,请将 BoxAuthType.TOKEN 与您已获取的令牌一起使用。

文档加载器

BoxLoader

请参阅用法示例

from langchain_box.document_loaders import BoxLoader

检索器

BoxRetriever

请参阅用法示例

from langchain_box.retrievers import BoxRetriever

Blob 加载器

BoxBlobLoader

请参阅用法示例

from langchain_box.blob_loaders import BoxBlobLoader


此页内容对您有帮助吗?