Code Monkey home page Code Monkey logo

minimal-llm-ui's Introduction

Minimalistic Interface for Local Language Models (LLMs) (Powered by Ollama)

Introduction

minimal-llm-ui-demo.mp4

This minimalistic UI is designed to act as a simple interface for Ollama models, allowing you to chat with your models, save conversations and toggle between different ones easily. The tool is built using React, Next.js, and Tailwind CSS, with LangchainJs and Ollama providing the magic behind the scenes.

Features

  • Chat with Local Language Models (LLMs): Interact with your LLMs in real-time through our user-friendly interface.
  • Model Toggling: Switch between different LLMs easily (even mid conversation), allowing you to experiment and explore different models for various tasks.
  • Memory-based Context Storage: Keep track of context in memory, ensuring smooth interactions even when switching between models.
  • Conversation History: Save conversations in a local database, allowing you revisit them at a later date.
  • Prompt Templating: Create parameter driven prompt templates to improve reuse.

Technical Details

  • Built using React, Next.js, and Tailwind CSS for a clean and modern design.
  • Utilizes LangchainJs and Ollama for seamless integration with Local Language Models (LLMs).
  • Stores context in memory for efficient model switching.

Getting Started

  1. Download and run Ollama on your machine with ollama serve or ollama run <model-name> (it will run at: http://localhost:11434/)

  2. Open a new terminal and navigate to the root of this project.

  3. Install the dependencies npm install in your terminal.

  4. Also check whether your node by doing:

node -v

If it is less than 14.0.1. You can do this to update it:

  • Install n using npm (Node.js package manager):

  • bash:

npm install -g n

Use n to install a specific Node.js version: bash:

n 20.0.9

Verify the Node.js version:

  • bash
node -v
  1. Start the tool by running npm run dev (it should be available in your web browser at http://localhost:3000)

To-do

  • Add edit message icon for user messages
  • Summarise conversations
  • Incorporate visualisations
  • Convert to desktop app so that it can be more powerful
  • Command menu should allow for saving new prompt templates directly from there
  • Command menu should let you edit + delete existing prompts

Troubleshooting

If you encounter any issues, feel free to reach out!

License

This project is licensed under the MIT License. See LICENSE file for details.

minimal-llm-ui's People

Contributors

mostlykiguess avatar richawo avatar sweep-ai[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

minimal-llm-ui's Issues

ability to define end-point URLs

I wanted to do a testride but its not connecting to docker-run ollama. (see below)
which could maybe worked around, if we could define the endpoints for the ollama-server (might run on another machine)
and the own IP:PORT to bind to.

any plans for that?

and how to use it with docker?

  62 | 
  63 | function getInitialModel() {
> 64 |   fetch("http://localhost:11434/api/tags")
     |  ^
  65 |     .then((response) => response.json())
  66 |     .then((data) => {
  67 |       console.log(data);

Text overwritten

Details

overwrittentext

Checklist
  • Modify src/app/page.tsx464c4ef
  • Running GitHub Actions for src/app/page.tsx
  • Create src/app/some_style_file.cssbf33df4
  • Running GitHub Actions for src/app/some_style_file.css

Flowchart

installation problems

Hi. After cloning the repo and attempting to update node (not your problem I know), I can get to at most node 12.22.9

this is latest ubuntu

Then when I try run npm run dev

john@john-GF63-Thin-11SC:~/ai/minimal-llm-ui$ npm run dev

[email protected] dev
next dev

sh: 1: next: not found

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.