Skip to content

Commit 2b3c617

Browse files
author
Mark Hale
committed
Support for custom Onnx language models.
1 parent 6ffb6df commit 2b3c617

2 files changed

Lines changed: 12 additions & 0 deletions

File tree

sail/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,11 @@
6464
<artifactId>langchain4j-core</artifactId>
6565
<version>${langchain4j.version}</version>
6666
</dependency>
67+
<dependency>
68+
<groupId>dev.langchain4j</groupId>
69+
<artifactId>langchain4j-embeddings</artifactId>
70+
<version>${langchain4j.version}</version>
71+
</dependency>
6772
<dependency>
6873
<groupId>dev.langchain4j</groupId>
6974
<artifactId>langchain4j-embeddings-all-minilm-l6-v2-q</artifactId>

sail/src/main/java/com/msd/gin/halyard/sail/model/embedding/EmbeddingModelQueryHelperProvider.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
import org.kohsuke.MetaInfServices;
1010

1111
import dev.langchain4j.model.embedding.EmbeddingModel;
12+
import dev.langchain4j.model.embedding.onnx.OnnxEmbeddingModel;
13+
import dev.langchain4j.model.embedding.onnx.PoolingMode;
1214

1315
@MetaInfServices(QueryHelperProvider.class)
1416
public class EmbeddingModelQueryHelperProvider implements QueryHelperProvider<EmbeddingModel> {
@@ -42,6 +44,11 @@ public EmbeddingModel createQueryHelper(Map<String, String> config) throws Excep
4244
}
4345
}
4446
return (EmbeddingModel) buildMethod.invoke(builder);
47+
} else if ("dev.langchain4j.model.embedding.onnx.OnnxEmbeddingModel".equals(modelClassName)) {
48+
String pathToModel = config.get("pathToModel");
49+
String pathToTokenizer = config.get("pathToTokenizer");
50+
String poolingMode = config.get("poolingMode");
51+
return new OnnxEmbeddingModel(pathToModel, pathToTokenizer, PoolingMode.valueOf(poolingMode));
4552
} else {
4653
return (EmbeddingModel) modelClass.getConstructor().newInstance();
4754
}

0 commit comments

Comments
 (0)