diff --git a/build.gradle.kts b/build.gradle.kts index b500806..ab9569a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -12,9 +12,11 @@ repositories { } dependencies { + compileOnly("org.projectlombok:lombok:1.18.38") implementation("io.github.amithkoujalgi:ollama4j:1.0.70") implementation("org.slf4j:slf4j-jdk14:2.1.0-alpha1") implementation("com.google.guava:guava:33.4.8-jre") + implementation("dev.langchain4j:langchain4j:0.36.2") testImplementation(kotlin("test")) testImplementation(kotlin("test-junit")) } diff --git a/src/main/kotlin/com/plexworlds/l3/L3InlineCompletionProvider.kt b/src/main/kotlin/com/plexworlds/l3/L3InlineCompletionProvider.kt index f2fbe17..a30023c 100644 --- a/src/main/kotlin/com/plexworlds/l3/L3InlineCompletionProvider.kt +++ b/src/main/kotlin/com/plexworlds/l3/L3InlineCompletionProvider.kt @@ -16,6 +16,12 @@ class L3InlineCompletionProvider : InlineCompletionProvider { override suspend fun getSuggestion(request: InlineCompletionRequest): InlineCompletionSuggestion { val startTime = System.nanoTime() + + + request.editor.project?.basePath + + + return InlineCompletionSuggestion.Default( channelFlow { val (prefix, suffix) = request.document.text.splitUsingOffset(request.startOffset) diff --git a/src/main/kotlin/com/plexworlds/l3/vectors/DocLoader.java b/src/main/kotlin/com/plexworlds/l3/vectors/DocLoader.java new file mode 100644 index 0000000..ccb1b7e --- /dev/null +++ b/src/main/kotlin/com/plexworlds/l3/vectors/DocLoader.java @@ -0,0 +1,25 @@ +package com.plexworlds.l3.vectors; + + + +import dev.langchain4j.data.document.Document; +import lombok.extern.slf4j.Slf4j; + +import java.nio.file.Path; + +import static dev.langchain4j.data.document.loader.FileSystemDocumentLoader.*; + +// TODO: go figure https://github.com/langchain4j/langchain4j-examples +@Slf4j +public class DocLoader { + + + + + private static void loadSingleDocument(Path path) { + Document document = loadDocument(path); + log.info(""); + } + + +} diff --git a/src/main/kotlin/com/plexworlds/l3/vectors/FileLoader.java b/src/main/kotlin/com/plexworlds/l3/vectors/FileLoader.java new file mode 100644 index 0000000..c8cd712 --- /dev/null +++ b/src/main/kotlin/com/plexworlds/l3/vectors/FileLoader.java @@ -0,0 +1,21 @@ +package com.plexworlds.l3.vectors; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; +import java.util.stream.Stream; + +public class FileLoader { + + public static List getAllFileNames(String rootDir) throws IOException { + try (Stream paths = Files.walk(Paths.get(rootDir))) { + return paths + .filter(Files::isRegularFile) + .map(Path::toAbsolutePath) + .map(Path::toString) + .toList(); + } + } +}