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