langchain4j [特性] 支持更多的分块策略

ix0qys7i  于 3个月前  发布在  其他
关注(0)|答案(4)|浏览(42)

您的功能请求是否与问题相关?请描述。

我们最近从一个项目中学到的教训是,Java中似乎没有广泛支持分块(Chunking)。我们特别在寻找对不同chunking strategies的支持。这可能有助于我们最大限度地利用VectorDB中存储、检索和匹配数据的能力。

描述您希望实现的解决方案

我们希望与Langchain4j社区讨论,他们是否在这个项目中实现了可行的分块支持,并且与项目目标和功能集保持一致。

描述您考虑过的替代方案

除了其他事情之外,我们还考虑过将分块库作为单独的项目创建,但我们认为将分块库作为Langchain4j的一部分添加将带来更好的开发者体验,并使项目更容易实现涉及LLM的分块策略。

附加上下文

如果社区认为这符合项目,我们愿意贡献并帮助维护这个功能。

enyaitl3

enyaitl31#

你好@orpiske,这听起来很棒!我们期待在LC4J中改进这一点,所以任何贡献都是受欢迎的!
除了现有的文档拆分器,我们计划在不久的将来添加markdown拆分器和语义拆分器。
你有什么分块策略吗?

n9vozmp4

n9vozmp42#

这是个好消息,你已经有了Markdown(和/或AsciiDoc)和语义分割器的计划!这些对我们的项目非常有用。
一般来说,专门的分块器/分割器(以及实现它们的接口)对于我们数据的一部分可能会特别有帮助(例如:这样我们就可以处理YAML、XML等)。
我还认为,将分块任务委托给外部服务的API/服务/LLM-based chucking也是有用的。

3df52oht

3df52oht3#

您正在寻找的接口是 DocumentSplitter ,请查看它及其现有实现。

xv8emn3q

xv8emn3q4#

您正在寻找的接口是 DocumentSplitter ,请查看它及其现有实现。
注意,谢谢!

相关问题