langchain_community.document_loaders.obs_file.OBSFileLoader

class langchain_community.document_loaders.obs_file.OBSFileLoader(bucket: str, key: str, client: Optional[Any] = None, endpoint: str = '', config: Optional[dict] = None)[源代码]

从华为OBS文件加载。

使用指定的设置初始化OBSFileLoader。

参数
  • bucket (str) – 要使用的OBS存储桶名称。

  • key (str) – OBS存储桶中对象的名称。

  • client (ObsClient可选) – 连接到OBS的ObsClient实例。

  • endpoint (str可选) – 您OBS存储桶的端点URL。如果未提供client,则此参数为必填项。

  • config (dict可选) – 连接到OBS的参数,作为字典提供。如果提供client,则此参数将被忽略。该字典可以包含以下键:- “ak” (str, 可选): 您的OBS访问密钥(如果get_token_from_ecs为False且存储桶策略不是公共读取,则必需)。 - “sk” (str, 可选): 您的OBS秘密密钥(如果get_token_from_ecs为False且存储桶策略不是公共读取,则必需)。 - “token” (str, 可选): 您的安全令牌(使用临时凭据时必需)。 - “get_token_from_ecs” (bool, 可选): 是否从ECS检索安全令牌。如果没有提供,则默认为False。如果设置为True,则将忽略ak、sk和token。

引发异常
  • ValueError – 如果未安装esdk-obs-python包。

  • TypeError – 如果提供的client不是ObsClient的实例。

  • ValueError – 如果未提供client,但缺少endpoint。

注意

在使用此类之前,请确保您已在OBS注册并拥有必要的凭据。ak、sk和endpoint值是必需的,除非get_token_from_ecs为True或存储桶策略是公共读取。使用临时凭据时,需要令牌。

示例

要使用新客户端创建新的OBSFileLoader: ``` config = {``

“ak”: “你的访问密钥”, “sk”: “你的秘密密钥”``

} obs_loader = OBSFileLoader(“你的存储桶名称”, “你的对象密钥”, config=config) ````

要使用现有客户端创建新的OBSFileLoader: ``` from obs import ObsClient``

假设你已经有一个名为'obs_client'的现有ObsClient对象,以下是如何创建OBSFileLoader对象的示例代码:

obs_loader = OBSFileLoader("你的桶名", "你的对象键", endpoint="你的端点URL")

方法

__init__(bucket, key[, client, endpoint, config])

使用指定的设置初始化OBSFileLoader。

alazy_load()

用于文档的懒加载器。

aload()

将数据加载到Document对象中。

lazy_load()

用于文档的懒加载器。

load()

加载文档。

load_and_split([text_splitter])

加载文档并将它们分割成块。

__init__(bucket: str, key: str, client: Optional[Any], endpoint: str = '', config: Optional[dict]) None[source]

使用指定的设置初始化OBSFileLoader。

参数
  • bucket (str) – 要使用的OBS存储桶名称。

  • key (str) – OBS存储桶中对象的名称。

  • client (ObsClient可选) – 连接到OBS的ObsClient实例。

  • endpoint (str可选) – 您OBS存储桶的端点URL。如果未提供client,则此参数为必填项。

  • config (dict可选) – 连接到OBS的参数,作为字典提供。如果提供client,则此参数将被忽略。该字典可以包含以下键:- “ak” (str, 可选): 您的OBS访问密钥(如果get_token_from_ecs为False且存储桶策略不是公共读取,则必需)。 - “sk” (str, 可选): 您的OBS秘密密钥(如果get_token_from_ecs为False且存储桶策略不是公共读取,则必需)。 - “token” (str, 可选): 您的安全令牌(使用临时凭据时必需)。 - “get_token_from_ecs” (bool, 可选): 是否从ECS检索安全令牌。如果没有提供,则默认为False。如果设置为True,则将忽略ak、sk和token。

引发异常
  • ValueError – 如果未安装esdk-obs-python包。

  • TypeError – 如果提供的client不是ObsClient的实例。

  • ValueError – 如果未提供client,但缺少endpoint。

返回类型

None

注意

在使用此类之前,请确保您已在OBS注册并拥有必要的凭据。ak、sk和endpoint值是必需的,除非get_token_from_ecs为True或存储桶策略是公共读取。使用临时凭据时,需要令牌。

示例

若要创建一个新的带有新客户端的OBSFileLoader对象,请按以下步骤操作:

“ak”: “你的访问密钥”, “sk”: “你的秘密密钥”``

} obs_loader = OBSFileLoader(“你的桶名”, “你的对象键”, config=config) ```

若要创建一个新的带有现有客户端的OBSFileLoader对象,请按照以下步骤操作:

obs_loader = OBSFileLoader(“你的桶名”, “你的对象键”, client=obs_client)

obs_loader = OBSFileLoader("你的桶名", "你的对象键", endpoint="你的端点URL")

async alazy_load() AsyncIterator[Document]

用于文档的懒加载器。

返回类型

异步迭代器[文档]

async aload() 列表[文档]

将数据加载到Document对象中。

返回类型

列表[文档]

lazy_load() 迭代器[文档]

用于文档的懒加载器。

返回类型

迭代器[文档]

load() 列表[文档][source]

加载文档。

返回类型

列表[文档]

load_and_split(text_splitter: Optional[TextSplitter] = None) 列表[文档]

加载文档并分割成块。块以文档的形式返回。

不要覆盖此方法。应将其视为已过时的。

参数

text_splitter (可选[文本分割器]) – 用于分割文档的TextSplitter实例。默认值为RecursiveCharacterTextSplitter。

返回

文档列表。

返回类型

列表[文档]

使用OBSFileLoader的示例