Bases: BaseReader
从Obsidian Vault加载数据的实用工具。
Parameters:
Name |
Type |
Description |
Default |
input_dir |
str
|
|
required
|
Source code in llama_index/readers/obsidian/base.py
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 | class ObsidianReader(BaseReader):
"""从Obsidian Vault加载数据的实用工具。
Args:
input_dir (str): Vault的路径。"""
def __init__(self, input_dir: str):
"""初始化参数。"""
self.input_dir = Path(input_dir)
def load_data(self, *args: Any, **load_kwargs: Any) -> List[Document]:
"""从输入目录加载数据。"""
docs: List[Document] = []
for dirpath, dirnames, filenames in os.walk(self.input_dir):
dirnames[:] = [d for d in dirnames if not d.startswith(".")]
for filename in filenames:
if filename.endswith(".md"):
filepath = os.path.join(dirpath, filename)
content = MarkdownReader().load_data(Path(filepath))
docs.extend(content)
return docs
def load_langchain_documents(self, **load_kwargs: Any) -> List["LCDocument"]:
"""以LangChain文档格式加载数据。"""
docs = self.load_data(**load_kwargs)
return [d.to_langchain_format() for d in docs]
|
load_data
load_data(*args: Any, **load_kwargs: Any) -> List[Document]
从输入目录加载数据。
Source code in llama_index/readers/obsidian/base.py
30
31
32
33
34
35
36
37
38
39
40 | def load_data(self, *args: Any, **load_kwargs: Any) -> List[Document]:
"""从输入目录加载数据。"""
docs: List[Document] = []
for dirpath, dirnames, filenames in os.walk(self.input_dir):
dirnames[:] = [d for d in dirnames if not d.startswith(".")]
for filename in filenames:
if filename.endswith(".md"):
filepath = os.path.join(dirpath, filename)
content = MarkdownReader().load_data(Path(filepath))
docs.extend(content)
return docs
|
load_langchain_documents
load_langchain_documents(
**load_kwargs: Any,
) -> List[Document]
以LangChain文档格式加载数据。
Source code in llama_index/readers/obsidian/base.py
| def load_langchain_documents(self, **load_kwargs: Any) -> List["LCDocument"]:
"""以LangChain文档格式加载数据。"""
docs = self.load_data(**load_kwargs)
return [d.to_langchain_format() for d in docs]
|