langchain_core.documents.base
.Blob¶
- class langchain_core.documents.base.Blob[source]¶
Bases:
BaseMedia
Blob通过引用或值表示原始数据。
提供了一个接口来以不同的表示形式实例化blob,并帮助解耦数据加载器开发与原始数据下游解析。
灵感来源:https://mdn.org.cn/en-US/docs/Web/API/Blob
示例:从内存数据初始化一个blob
from langchain_core.documents import Blob blob = Blob.from_data("Hello, world!") # Read the blob as a string print(blob.as_string()) # Read the blob as bytes print(blob.as_bytes()) # Read the blob as a byte stream with blob.as_bytes_io() as f: print(f.read())
示例:从内存中加载数据,并指定mime-type和元数据
from langchain_core.documents import Blob blob = Blob.from_data( data="Hello, world!", mime_type="text/plain", metadata={"source": "https://example.com"} )
示例:从文件中加载数据的blob
from langchain_core.documents import Blob blob = Blob.from_path("path/to/file.txt") # Read the blob as a string print(blob.as_string()) # Read the blob as bytes print(blob.as_bytes()) # Read the blob as a byte stream with blob.as_bytes_io() as f: print(f.read())
- param data: Optional[Union[bytes, str]] = None¶
与blob关联的原始数据。
- param encoding: str = 'utf-8'¶
解码bytes为字符串时使用的编码。
默认编码为utf-8。
- param id: Optional[str] = None¶
可选的文档标识符。
理论上,这应该在文档集中是唯一的,格式为UUID,但不会强制执行。
0.2.11版本新增。
- param metadata: dict [Optional]¶
与内容关联的任意元数据。
- param mimetype: Optional[str] = None¶
请注意,这与文件扩展名不同。
- param path: Optional[Union[str, PurePath]] = None¶
原始内容被发现的位置。
- as_bytes_io() Generator[Union[BytesIO, BufferedReader], None, None] [源代码]¶
以字节流形式读取数据。
- 返回类型
Generator[Union[BytesIO, BufferedReader], None, None]
- classmethod from_data(data: Union[str, bytes], *, encoding: str = 'utf-8', mime_type: Optional[str] = None, path: Optional[str] = None, metadata: Optional[dict] = None) Blob [源代码]¶
从内存数据初始化blob。
- 参数
data (Union[str, bytes]) – 与blob关联的内存数据
encoding (str) – 将字节解码为字符串时使用的编码
mime_type (可选[str]) – 如果提供,将设置数据数据的 mime-type
path (可选[str]) – 如果提供,将设置为数据的来源
metadata (可选[
- 返回值
Blob 实例
- 返回类型
- classmethod from_path(path: Union[str, PurePath], *, encoding: str = 'utf-8', mime_type: Optional[str] = None, guess_type: bool = True, metadata: Optional[dict] = None) Blob [source]¶
从路径对象加载 blob。
- 参数
path (Union[str, PurePath]) – 要读取的文件的路径对象
encoding (str) – 将字节解码为字符串时使用的编码
mime_type (可选[str]) – 如果提供,将设置数据数据的 mime-type
guess_type (bool) – 如果为 True,将从文件扩展名猜测 mime-type,如果没有提供 mime-type
metadata (可选[
- 返回值
Blob 实例
- 返回类型
- property source: Optional[str]¶
如果已知,则以字符串形式表示 blob 的源位置,否则为 none。
如果与 blob 关联了路径,则默认为路径位置。
除非通过名为“source”的元数据字段显式设置,在这种情况下将使用该值。