Skip to main content
以下代码演示了如何将华为 OBS(对象存储服务)中的对象加载为文档。
# Install the required package
# 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 客户端。
# Configure your access credentials\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()