为什么使用SimpleDirectoryReader读取图像会导致返回空?我看到.png已经包含在支持的格式中。
ktca8awb1#
嘿,@penpen0427!👋 我来帮助你解决任何bug、问题或你脑海中的建议。让我们一起消灭这些bug吧!使用 SimpleDirectoryReader 读取图像会导致返回空值,因为该阅读器的设计是根据文件扩展名从目录中加载文件并自动选择最佳的文件阅读器。然而,它并不本质上支持从图像中读取文本。这种功能需要额外的处理,例如 OCR(光学字符识别),这不在默认的文件阅读器中包含。为了避免这个问题,你可以在使用 SimpleDirectoryReader 时排除图像文件。例如:
SimpleDirectoryReader
SimpleDirectoryReader("./data", exclude=["*png", "*jpg", "*jpeg"])
这将阻止阅读器尝试处理图像文件。exclude 参数允许你指定要排除的文件路径模式,确保只读取支持的文件类型 1(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/discover_llamaindex/document_management/discord_dumps/help_channel_dump_06_02_23.json)2(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/discover_llamaindex/document_management/discord_dumps/help_channel_dump_05_25_23.json)。
exclude
bjp0bcyl2#
我认为它不是空的,只是默认情况下它不会假设你有解析文本所需的库。它会返回一个带有图像路径的ImageDocument,以及使用pytesseract捕获到的任何文本。你可以使用一些额外的选项示例化阅读器来使用模型提取文本。
0lvr5msh3#
我认为它不是空的,只是默认情况下,它不会假设你有解析文本所需的库。它会返回一个带有图像路径的ImageDocument,以及使用pytesseract捕获到的任何文本。你可以使用一些额外的选项示例化阅读器,以便使用模型提取文本。
from llama_index.readers.file import ImageReader file_extractor = {".png": ImageReader(parse_text=True)} documents = SimpleDirectoryReader("./data", file_extractor= file_extractor).load_data()
所以,包含图像的PDF文件也可以像这样工作,对吗?
3条答案
按热度按时间ktca8awb1#
嘿,@penpen0427!👋 我来帮助你解决任何bug、问题或你脑海中的建议。让我们一起消灭这些bug吧!
使用
SimpleDirectoryReader
读取图像会导致返回空值,因为该阅读器的设计是根据文件扩展名从目录中加载文件并自动选择最佳的文件阅读器。然而,它并不本质上支持从图像中读取文本。这种功能需要额外的处理,例如 OCR(光学字符识别),这不在默认的文件阅读器中包含。为了避免这个问题,你可以在使用
SimpleDirectoryReader
时排除图像文件。例如:这将阻止阅读器尝试处理图像文件。
exclude
参数允许你指定要排除的文件路径模式,确保只读取支持的文件类型 1(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/discover_llamaindex/document_management/discord_dumps/help_channel_dump_06_02_23.json)2(https://github.com/run-llama/llama_index/blob/main/docs/docs/examples/discover_llamaindex/document_management/discord_dumps/help_channel_dump_05_25_23.json)。bjp0bcyl2#
我认为它不是空的,只是默认情况下它不会假设你有解析文本所需的库。它会返回一个带有图像路径的ImageDocument,以及使用pytesseract捕获到的任何文本。
你可以使用一些额外的选项示例化阅读器来使用模型提取文本。
0lvr5msh3#
我认为它不是空的,只是默认情况下,它不会假设你有解析文本所需的库。它会返回一个带有图像路径的ImageDocument,以及使用pytesseract捕获到的任何文本。
你可以使用一些额外的选项示例化阅读器,以便使用模型提取文本。
所以,包含图像的PDF文件也可以像这样工作,对吗?