diff --git a/build.gradle b/build.gradle index 62e7bbc..961199d 100644 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,7 @@ repositories { dependencies { - implementation "me.zacharias.neurodock:Core:1.3" + implementation "me.zacharias.neurodock:Core:1.5" implementation 'com.formdev:flatlaf:3.4.1' testImplementation platform('org.junit:junit-bom:6.0.0') diff --git a/src/main/java/me/zacharias/neurodock/Main.java b/src/main/java/me/zacharias/neurodock/Main.java index 4bf023c..5519d13 100644 --- a/src/main/java/me/zacharias/neurodock/Main.java +++ b/src/main/java/me/zacharias/neurodock/Main.java @@ -2,10 +2,15 @@ package me.zacharias.neurodock; import com.formdev.flatlaf.FlatDarkLaf; import me.zacharias.chat.core.Core; +import me.zacharias.chat.core.LaunchOptions; +import me.zacharias.chat.core.PrintAdvanceMessageHandler; import me.zacharias.chat.core.PrintMessageHandler; +import me.zacharias.chat.ollama.OllamaMessage; +import me.zacharias.chat.ollama.OllamaMessageRole; import me.zacharias.chat.ollama.OllamaObject; import javax.swing.*; +import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; @@ -18,41 +23,45 @@ public class Main { public Main() { + Core.setDataDirectory("NeuroDock-GUI"); + + LaunchOptions launchOptions = LaunchOptions.getInstance(); + launchOptions.setLoadOld(false); + FlatDarkLaf.setup(); + JTextArea textArea = new JTextArea(); + textArea.setEditable(false); + textArea.setLineWrap(true); + + core = new Core(new PrintAdvanceMessageHandler() { + + @Override + public void printMessage(OllamaMessage message) { + textArea.append(message.getRole().name() + ": " +message.getContent() + "\n"); + } + + @Override + public void printErrorMessage(OllamaMessage errorMessage) { + textArea.append("ERROR!: " + errorMessage.getContent() + "\n"); + } + }); + OllamaObject ollamaObject = OllamaObject.builder() .setModel("llama3.2") .keep_alive(10) .build(); - JTextArea textArea = new JTextArea(); - - core = new Core(new PrintMessageHandler() { - - @Override - public void printMessage(String s) { - textArea.append(s); - } - - @Override - public boolean color() { - return false; - } - - @Override - public void printError(String message) { - PrintMessageHandler.super.printError(message); - } - }); + core.setOllamaObjectNoMemory(ollamaObject); SwingUtilities.invokeLater(() -> { JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(800, 600); - - frame.add(textArea); + frame.setLayout(new GridLayout(2,1)); JTextField field = new JTextField(); + field.setSize(frame.getWidth(), 20); field.addKeyListener(new KeyListener() { @@ -64,7 +73,9 @@ public class Main { @Override public void keyPressed(KeyEvent e) { if(!e.isShiftDown() && e.getKeyCode() == KeyEvent.VK_ENTER) { - + core.getOllamaObject().addMessage(new OllamaMessage(OllamaMessageRole.USER, field.getText())); + field.setText(""); + core.handleResponce(core.qurryOllama()); } } @@ -74,7 +85,9 @@ public class Main { } }); + frame.add(textArea); frame.add(field); + frame.setVisible(true); }); }