以编程方式使用文档

Box 是智能内容云,一个统一的平台,能够实现 组织推动协作、管理整个内容生命周期、保护关键内容, 并通过企业级 AI 转型业务工作流程。Box 成立于 2005 年,为 全球领先的组织简化工作,包括阿斯利康、JLL、摩根士丹利和 Nationwide。

在此包中,我们提供了多种方式将 Box 内容纳入您的 AI 工作流程。

安装和设置

pip install -U langchain-box
uv add langchain-box

langchain-box

此包包含 LangChain 与 Box 的集成。要了解更多信息 Box,请参阅我们的 开发者文档.

Pre-requisites

要与 Box 集成,您需要准备以下内容:

* 一个 Box 实例 — 如果您不是 Box 的现有客户,请注册 免费开发者账户. * 一个 Box 应用 — 了解更多关于如何 创建应用 * 在您的 Box 实例中批准您的应用 — 这由您的管理员完成。 好消息是,如果您使用的是免费开发者账户,您自己就是管理员。 授权您的应用

身份验证

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

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

BoxAuth 辅助类

BoxAuth 支持以下身份验证方法:

  • * 令牌 — 开发者令牌或通过 Box SDK 生成的任何令牌
  • * 使用服务账户的 JWT
  • * 使用指定用户的 JWT
  • * 使用服务账户的 CCG
  • * 使用指定用户的 CCG

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

Examples:

令牌

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与授权配合使用_代码流程,请使用 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