Skip to main content
以下代码演示了如何从华为 OBS(对象存储服务)加载对象作为文档。
# 安装所需包
# pip install esdk-obs-python
from langchain_community.document_loaders.obs_file import OBSFileLoader
endpoint = "your-endpoint"
from obs import ObsClient

obs_client = ObsClient(
    access_key_id="your-access-key",
    secret_access_key="your-secret-key",
    server=endpoint,
)
loader = OBSFileLoader("your-bucket-name", "your-object-key", client=obs_client)
loader.load()

每个加载器使用独立的认证信息

如果不需要在不同加载器之间复用 OBS 连接,可以直接配置 config。加载器将使用配置信息初始化自己的 OBS 客户端。
# 配置您的访问凭证\n
config = {"ak": "your-access-key", "sk": "your-secret-key"}
loader = OBSFileLoader(
    "your-bucket-name", "your-object-key", endpoint=endpoint, config=config
)
loader.load()

从 ECS 获取认证信息

如果您的 langchain 部署在华为云 ECS 上,并且已设置委托,加载器可以直接从 ECS 获取安全令牌,无需访问密钥和秘密密钥。
config = {"get_token_from_ecs": True}
loader = OBSFileLoader(
    "your-bucket-name", "your-object-key", endpoint=endpoint, config=config
)
loader.load()

访问公开可读对象

如果您要访问的对象允许匿名用户访问(匿名用户拥有 GetObject 权限),可以直接加载对象而无需配置 config 参数。
loader = OBSFileLoader("your-bucket-name", "your-object-key", endpoint=endpoint)
loader.load()