Source code for langchain_core.documents.base
from __future__ import annotations
from typing import Any, List, Literal
from langchain_core.load.serializable import Serializable
from langchain_core.pydantic_v1 import Field
[docs]class Document(Serializable):
"""用于存储文本片段和相关元数据的类。"""
page_content: str
"""字符串文本。"""
metadata: dict = Field(default_factory=dict)
"""页面内容的任意元数据(例如,来源、与其他文档的关系等)。"""
type: Literal["Document"] = "Document"
def __init__(self, page_content: str, **kwargs: Any) -> None:
"""将page_content作为位置参数或命名参数传入。"""
super().__init__(page_content=page_content, **kwargs)
[docs] @classmethod
def is_lc_serializable(cls) -> bool:
"""返回此类是否可序列化。"""
return True
[docs] @classmethod
def get_lc_namespace(cls) -> List[str]:
"""获取langchain对象的命名空间。"""
return ["langchain", "schema", "document"]