Updated the GUI and mostly figured out chages that was required in the Ollama library.

Signed-off-by: Zacharias <zacharias@4zellen.se>
This commit is contained in:
2026-05-09 00:25:00 +02:00
parent a18fa13a89
commit 1b4cf0f570
2 changed files with 36 additions and 23 deletions
+1 -1
View File
@@ -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')
+35 -22
View File
@@ -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);
});
}