langchain4j [BUG] OnnxBertBiEncoder.weightedAverage(OnnxBertBiEncoder.java:166) IndexOutOfBoundsException

bis0qfac  于 3个月前  发布在  Java
关注(0)|答案(2)|浏览(90)

描述bug

OnnxBertBiEncoder.weightedAverage(OnnxBertBiEncoder.java:166). 当embeddings为空列表时,会报告错误。

日志和堆栈跟踪

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:657) ~[?:1.8.0_212]
at java.util.ArrayList.get(ArrayList.java:433) ~[?:1.8.0_212]
at dev.langchain4j.model.embedding.OnnxBertBiEncoder.weightedAverage(OnnxBertBiEncoder.java:166) ~[langchain4j-embeddings-0.27.1.jar:?]
at dev.langchain4j.model.embedding.OnnxBertBiEncoder.embed(OnnxBertBiEncoder.java:67) ~[langchain4j-embeddings-0.27.1.jar:?]
at dev.langchain4j.model.embedding.AbstractInProcessEmbeddingModel.lambda$embedAll$0(AbstractInProcessEmbeddingModel.java:44) ~[langchain4j-embeddings-0.27.1.jar:?]
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193) ~[?:1.8.0_212]
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) ~[?:1.8.0_212]
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:1.8.0_212]
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:1.8.0_212]
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) ~[?:1.8.0_212]
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_212]
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) ~[?:1.8.0_212]
at dev.langchain4j.model.embedding.AbstractInProcessEmbeddingModel.embedAll(AbstractInProcessEmbeddingModel.java:45) ~[langchain4j-embeddings-0.27.1

esbemjvw

esbemjvw1#

这个问题是否在最近的版本中得到解决?
我对为OnnxBertBiEncoder类修复IndexOutOfBoundsException感兴趣,但无法在克隆的仓库中找到源文件。我已经检查了最新版本(包括初始化子模块),但找不到langchain4j-embeddings模块。
有趣的是,我在本地Maven仓库(C:\Users\hross.m2repository\dev\langchain4j\langchain4j-embeddings\0.32.0-SNAPSHOT)中找到了langchain4j-embeddings-0.32.0-20240524.143021-1-sources.jar文件中的OnnxBertBiEncoder.java。这似乎表明该类现在是外部依赖的一部分,而不是直接包含在仓库中。
您能否澄清一下OnnxBertBiEncoder类的源代码目前位于哪里?这将帮助我了解如果仍然需要的话如何提供修复。

相关问题