llama-index

Форк
0
34 строки · 910.0 Байт
1
"""Flat reader."""
2

3
from pathlib import Path
4
from typing import Any, Dict, List, Optional
5

6
from llama_index.legacy.readers.base import BaseReader
7
from llama_index.legacy.schema import Document
8

9

10
class FlatReader(BaseReader):
11
    """Flat reader.
12

13
    Extract raw text from a file and save the file type in the metadata
14
    """
15

16
    def __init__(
17
        self,
18
        *args: Any,
19
        **kwargs: Any,
20
    ) -> None:
21
        """Init params."""
22
        super().__init__(*args, **kwargs)
23

24
    def load_data(
25
        self, file: Path, extra_info: Optional[Dict] = None
26
    ) -> List[Document]:
27
        """Parse file into string."""
28
        with open(file, encoding="utf-8") as f:
29
            content = f.read()
30
        metadata = {"filename": file.name, "extension": file.suffix}
31
        if extra_info:
32
            metadata = {**metadata, **extra_info}
33

34
        return [Document(text=content, metadata=metadata)]
35

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.