# NeuroDock Note: This project is not in colabiration with Neuro-Sama, Vedal987, Alexcra. This is an independent project and name, aswell as use case similarities are cucidental. ## What is it? Well it's basically a font end for Ollama like [Open-WebUI](https://openwebui.com/), but meant to run a local model and open up a somewhat easy to use API system for tools. ## Use cases? While the primary goal is providing a somewhat more modular frontend for Ollama, you can also use this system to integrate AI into your own application, For example AI could act as a player in a game or interact with external system with the use of tools via the API simple examples are in the Display module where i gave it the ability to access python through docker and get the current date and time both with the [OllamaFunctionTool](https://server.4zellen.se:3000/Zacharias/chat_thing/src/branch/master/Core/src/main/java/me/zacharias/chat/ollama/OllamaFunctionTool.java) thru my Ollama framework ## Legal Notice Regarding Scraping A submodule of this project includes functionality that scrapes song lyrics directly from Genius.com, which violates Genius API's Terms of Service. The author **does not endorse or encourage** scraping or any other use that violates third-party terms or copyright laws. Use this software **at your own risk**. The author disclaims any liability for legal or technical consequences arising from its use. ## API The documentation for the API is available at the gitea wiki under [API docs](https://server.4zellen.se:3000/Chat_things/NeuroDock/wiki/API-Docs) ## How to run? To run you need to build the `launcher` module
`$ ./gradlew :launcher:shadowJar`
This will put the `launcher-1.0-all.jar`(or similar, based on the version) in `./launcher/build/libs`, this can now be copied anywhere and can be ran with
`$ java -jar launcher-1.0-all.jar`
you can use the `-h` argument to get a help message. ``` Launch options for NeuroChat: -h --help Provides this help message -s --server Starts the application as API server -p --port Provides the port number that the API server should use, defaults to 39075 -o --output Redirects the API Server output to another file --api Provides API docs ``` ## How to build? And general information If you only want to build a specific module, you can use the same command as listed in `How to run?` but replace `launcher` with the desire module.
- API: `$ ./gradlew :API:shadowJar` - Depends on `Core` - Display: `$ ./gradlew :Display:shadowJar` - Depends on `Core` and `MALAPITool` - Core: `$ ./gradlew :Core:shadowJar` - However, this one is kinda useless unless you want to directly implement the system into your application - MALAPITool: `$ ./gradlew :MALAPITool:shadowJar` - Please read MALAPITool [README.md](https://server.4zellen.se:3000/Chat_things/NeuroDock/src/branch/master/MALAPITool/README.md) - Launcher: `$ ./gradlew :launcher:shadowJar` - Depends on `API`, `Display` and `Core` - This is the main module that runs the application and starts the API server