diff --git a/src/main/java/org/beehive/gpullama3/model/loader/ModelLoader.java b/src/main/java/org/beehive/gpullama3/model/loader/ModelLoader.java index 20cdb090..a5e5e59c 100644 --- a/src/main/java/org/beehive/gpullama3/model/loader/ModelLoader.java +++ b/src/main/java/org/beehive/gpullama3/model/loader/ModelLoader.java @@ -90,6 +90,18 @@ public static Model loadModel(Options options) throws IOException { return modelType.loadModel(gguf.getFileChannel(), gguf, contextLength, useTornadovm); } + /** + * For compatibility with langchain4j and quarkus. + */ + public static Model loadModel(Path ggufPath, int contextLength, boolean loadWeights, boolean useTornadovm) throws IOException { + // initial load of metadata from gguf file + GGUF gguf = GGUF.loadGGUFMetadata(ggufPath); + // detect model type + ModelType modelType = detectModelType(gguf.getMetadata()); + // model type-specific load + return modelType.loadModel(gguf.getFileChannel(), gguf, contextLength, useTornadovm); + } + /** * Dispatcher method for loading a standard (non-tornado) tensor based on GGML type. * Used in CPU-path.