Langchain GenericLoader 加载 java 文件时不支持 mime 类型

问题描述 投票:0回答:1

我正在尝试获取一堆 java 文件并创建一个供法学硕士使用的嵌入。

因此想要读取 java 文件以在色度数据库中创建嵌入。

我之前已经成功地使用 pdf 文件完成了此操作,但现在我想在嵌入中使用我的 java 代码。

我有一个方法


from langchain_community.document_loaders.generic import GenericLoader
def load_documents():
    loader = GenericLoader.from_filesystem(
        "./path/to/java/files",
        glob="**/*",
        suffixes=[".java"],
        parser=LanguageParser()
    )

我收到以下错误

 main()
  File "/Volumes/SamsungT5/langchain/populate_database.py", line 33, in main
    documents = load_documents()
                ^^^^^^^^^^^^^^^^
  File "/path/populate_database.py", line 50, in load_documents
    return loader.load()
           ^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.11/site-packages/langchain_core/document_loaders/base.py", line 29, in load
    return list(self.lazy_load())
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/anaconda3/lib/python3.11/site-packages/langchain_community/document_loaders/generic.py", line 116, in lazy_load
    yield from self.blob_parser.lazy_parse(blob)
  File "/opt/anaconda3/lib/python3.11/site-packages/langchain_community/document_loaders/parsers/generic.py", line 70, in lazy_parse
    raise ValueError(f"Unsupported mime type: {mimetype}")
ValueError: Unsupported mime type: text/x-java-source

我不知道为什么它告诉我

Unsupported mime type: text/x-java-source
。我的理解是支持java文件加载。


编辑

我改用 DirectoryLoader 并完成了我想做的事情。

loader = loader = DirectoryLoader(DATA_PATH, glob="**/*.java",loader_cls=TextLoader,use_multithreading=True)
return loader. Load()

python langchain
1个回答
0
投票

我有这个确切的问题。我正在尝试为所有代码构建一个不可知的解析器。我觉得有一个

tree-parser

© www.soinside.com 2019 - 2024. All rights reserved.