Awesome
Ollama4j Web UI
A web UI for Ollama written in Java using Spring Boot and Vaadin framework and Ollama4j.
The goal of the project is to enable Ollama users coming from Java and Spring background to have a fully functional web UI.
This project focuses on the raw capabilities of interacting with various models running on Ollama servers.
Table of Contents
How does it work?
flowchart LR
owui[Ollama4j Web UI]
o4j[Ollama4j]
o[Ollama Server]
owui -->|uses| o4j
o4j -->|Communicates with| o;
m[Models]
subgraph Ollama Deployment
direction TB
o -->|Manages| m
end
Requirements
Running the application
Download
Download the latest version from here.
Or, you could download it via command-line. Just make sure to specify the version you want to download.
VERSION=0.0.1; wget https://github.com/ollama4j/ollama4j-web-ui/releases/download/$VERSION/ollama4j-web-ui-$VERSION.jar
Configure
Create a file application.properties
and add the following configuration.
Update the values of server.port
and ollama.url
according to your needs.
server.port=8080
logging.level.org.atmosphere = warn
spring.mustache.check-template-location = false
spring.servlet.multipart.max-file-size=50MB
spring.servlet.multipart.max-request-size=50MB
vaadin.launch-browser=true
vaadin.whitelisted-packages = com.vaadin,org.vaadin,dev.hilla,io.github.ollama4j
ollama.url=http://localhost:11434
ollama.request-timeout-seconds=120
Run the app
java -jar ollama4j-web-ui-$VERSION.jar \
--spring.config.location=/path/to/your/application.properties
Then open http://localhost:8080 in your browser to access the Ollama4j Web UI.
Screenshots
<img width="2048" alt="Chat" src="https://github.com/ollama4j/ollama4j-web-ui/assets/1876165/426c7ab7-2a27-4bae-87db-daa6a499395c"> <img width="2048" alt="Image Chat" src="https://github.com/ollama4j/ollama4j-web-ui/assets/1876165/1ac899bc-a19e-4dc0-bee1-63b67e8fb346"> <img width="2048" alt="Models" src="https://github.com/ollama4j/ollama4j-web-ui/assets/1876165/c697fd1d-0323-4351-b9a7-25166eff4c7e">Improvements
[ ] - Show errors on the UI. For example,
io.github.ollama4j.exceptions.OllamaBaseException: model "llama3" not found, try pulling it first
.
[ ] - Settings pane for configuring default params such as top-p
, top-k
, etc.
Get Involved
Contributions are most welcome! Whether it's reporting a bug, proposing an enhancement, or helping with code - any sort of contribution is much appreciated.
Credits
The project is inspired by the awesome ollama4j-ui project by @AgentSchmecker.
The nomenclature has been adopted from the incredible Ollama project.