Instructions here: https://github.com/ghobs91/Self-GPT
If you’ve ever wanted a ChatGPT-style assistant but fully self-hosted and open source, Self-GPT is a handy script that bundles Open WebUI (chat interface front end) with Ollama (LLM backend).
- Privacy & Control: Unlike ChatGPT, everything runs locally, so your data stays with you—great for those concerned about data privacy.
- Cost: Once set up, self-hosting avoids monthly subscription fees. You’ll need decent hardware (ideally a GPU), but there’s a range of model sizes to fit different setups.
- Flexibility: Open WebUI and Ollama support multiple models and let you switch between them easily, so you’re not locked into one provider.
whats great is that with ollama and webui, you can as easily run it all on one computer locally using the open-webui pip package or in a remote server using the container version of open-webui.
Ive run both and the webui is really well done. It offers a number of advanced options, like the system prompt but also memory features, documents for RAG and even a built in python ide for when you want to execute python functions. You can even enable web browsing for your model.
I’m personally very pleased with open-webui and ollama and they both work wonders together. Hoghly recommend it! And the latest llama3.1 (in 8 and 70B variants) and llama3.2 (in 1 and 3B variants) work very well, even on CPU only, for the latter! Give it a shot, it is so easy to set up :)
Do you know of any nifty resources on how to create RAGs using ollama/webui? (Or even fine-tuning?). I’ve tried to set it up, but the documents provided doesn’t seem to be analysed properly.
I’m trying to get the LLM into reading/summarising a certain type of (wordy) files, and it seems the query prompt is limited to about 6k characters.
Someone recently referred me to this blog post about using RAG in open-webui. I have not tested if but the author seems to reach a good setup.
Perhaps this is of use to you?
Thank you! Very useful. I am, again, surprised how a better way of asking questions affects the answers almost as much as using a better model.
Indeed, quite surprising. You got to “stroke their fur the right way” so to speak haha
Also, I’m increasingly more impressed with the rapid progress reaching open-weights models: initially I was playing with Llama3.1-8B which is already quite useful for simple querries. Then lately I’ve been trying out Mistral-Nemo (12B) and Mistrall-Small (22B) and they are quite much more capable. I have a 12GB GPU and so far those are the most powerful models I can run decently. I’m using them to help me in writing tasks for ansible, learning the inner workings of the Linux kernel and some bootloader stuff. I find them quite helpful!
I’m just in the beginning, but my plan is to use it to evaluate policy docs. There is so much context to keep up with, so any way to load more context into the analysis will be helpful. Learning how to add excel information in the analysis will also be a big step forward.
I will have to check out Mistral:) So far Qwen2.5 14B has been the best at providing analysis of my test scenario. But i guess an even higher parameter model will have its advantages.
What are your PC specifications for running Ollama3.1:70B smoothly?
I wish I could. I have an RTX 3060 12GB, I run mostly llama3.1 8B versions in fp8, at 30-35 tokens/s.
I can confirm that it does not run (at least not smoothly) with an Nvidia 4080 12Gb. However, gemma2:27B runs pretty well. Do you think if we add another graphical card, a modest one, maybe the llama3.1:70B could run?
No, but you can run Qwen 2.5 34B with 24GB total.
Host it in TabbyAPI instead of ollama too. Use its native tensor parallelism and Q4 cache, it will fly.
Are you running these llms in containers completely cut off from the internet? My understanding was that the “local first” llms aren’t truly offline and only try and answer base queries offline before contacting their provider for support. This invalidating the privacy argument.
Where would an open source LLM that you run locally phone home to, exactly? It requires a lot of GPU compute, do you think someone’s just going to give that away for free, without even requiring an account they can turn into saleable data?
But wait, there’s an even better way to be sure: download OpenHardwareMonitor so you can watch your GPU go to 100%, and this or GPT4All or something. Then airgap your computer, and try it yourself.
The interface called open-webui can run in a container, but ollama runs as a service on your system, from my understanding.
The models are local and only answer queries by default. It all happens on the system without any additional tools. Now, if you want to give them internet access, you can, it is an option you have to setup and open-webui makes that possible though I have not tried it myself. I just see it.
I have never heard of any llm “answer base queries offline before contacting their provider for support”. It’s almost impossible for the LLM to do it by itself without you setting things up for it that way.
Open-Webui published a docker image that has a bundled Ollama that you can use, too:
ghcr.io/open-webui/open-webui:cuda
. More info at https://docs.openwebui.com/getting-started/#installing-open-webui-with-bundled-ollama-supportAnd you can open the default ollama port to allow it to be used by other services (like VSCode), not only through Open-WebUI.
I just want one that won’t just be like “I"m sowwy miss I can’t talk about that 🥺”
Tons of models you can run with ollama are “uncensored”
I made a robot which is delighted about the idea of overthrowing capitalism and will enthusiastically explain how to take down your government.
Download a “dolphin” model
Have been using it a while now, I recommend using something like Tailscale so you can access it from anywhere on your phone. I also have a raspberry pi that can wake up my main machine when I need it.
I use Alpaca and ollama running in podman
All running on CPU with decent performance
Wow, that’s an old model. Great that it works for you, but have you tried some more modern ones? They’re generally considered a lot more capable at the same size
Its an app…
Flatpaks are a cancer. Got anything else?
You could’ve scrolled down to the bottom, clicked on “Links,” then clicked on the repo link
The repo has instructions to install a Snap or build from source. If you build from source, it looks like you should download an archive from the releases page rather than just pulling from master.
I have been running this for a year on my old HP EliteDesk 800 SFF (G2) with 64GB RAM, and it performes great on the smallest models (up til 8B) only on CPU. I run Ollama and OpenWebUI in containers/LXC in Proxmox. It’s not as smart as ChatGPT, but it can be suprisingly capable for everyday tasks!
I didnt use any AI until I was able to host it localy. I hate the idea of training a model or how that data centers consumes so much water and resouses. Also I dont use any AI generative of images. Is not etic for me. But I’m trying to find a way to make ollama a tool I can use somehow, and not just a thing to talk sometimes for fun.
You realize the models you’re running locally had to be trained the same way as the proprietary ones, right?
Yes, but is a copy of something that is already done. I’m not making new requests to a data center who is wasting 4 liters of water every 100 words like gpt-4, I’m just using my GPU like with a videogame.
Wish I could accelerate these models with an Intel Arc card, unfortunately Ollama seems to only support Nvidia
And AMD
You should be able to get llama.cpp to run on Arc but I’m not sure what performance you will get. It may not be worth it.
That’s cool. Personally I just integrated it into my normal chat client by connecting Aichat, which supports a ton of backends including Ollama and hosted options, with Matrix.
Blog post with more info https://jackson.dev/post/chaz/
In my humble opinion the point of self hosting an LLM is so that the data doesn’t leave your LAN.