This is Tim from AnythingLLM (https://github.com/Mintplex-Labs/anything-llm). AnythingLLM is an open-source desktop assistant that brings together RAG (Retrieval-Augmented Generation), agents, embeddings, vector databases, and more—all in one seamless package.
We built AnythingLLM over the last year iterating and iterating from user feedback. Our primary mission is to enable people with a layperson understanding of AI to be able to use AI with little to no setup for either themselves, their jobs, or just to try out using AI as an assistant but with *privacy by default*.
From these iterations & feedback, we have a couple of key learnings I wanted to share:
- "Chat with your docs" solutions are a dime-a-dozen
- Agent frameworks require knowing how to code or are too isolated from other tools
- Users do not care about benchmarks, only outputs. The magic box needs to be magic to them.
- Asking Consumers to start a docker container or open a terminal is a non-starter for most.
- Privacy by default is non-negotiable. Either by personal preference or legal constraints
- Everything needs to be in one place
From these ideas, we landed on the current state of AnythingLLM:
- Everything in AnythingLLM is private by default, but fully customizable for advanced users.
- Built-in LLM provider, but can swap at any time to the hundreds of other local or cloud LLM providers & models.
- Built-in Vector Database, most users don't even know that it is there.
- Built-in Embedding model, but of course can change if the user wants to.
- Scrape websites, import Github/GitLab repos, YouTube Transcripts, Confluence spaces - all of this is already built in for the user.
- An entire baked-in agent framework that works seamlessly within the app. We even pre-built a handful of agent skills for customers. Custom plugins are in the next update and will be able to be built with code, or a no-code builder.
- All of this just works out of the box in a single installable app that can run on any consumer-grade laptop. Everything a user does, chats, or configures is stored on the user's device. Available for Mac, Windows, and Linux
We have been actively maintaining and working on AnythingLLM via our open-source repo for a while now and welcome contributors as we hopefully launch a Community Hub soon to really proliferate users' abilities to add more niche agent skills, data connectors, and more.
*But there is even more*
We view the desktop app as a hyper-accessible single-player version of AnythingLLM. We publish a Docker image too (https://hub.docker.com/r/mintplexlabs/anythingllm) that supports multi-user management with permissioning so that you can easily bring AnythingLLM into an organization with all of the same features with minimal headache or lift.
The Docker image is for those more adept with a CLI, but being able to comfortably go from a single-user to a multi-user version of the same familiar app was very important for us.
AnythingLLM aims to be more than a UI for LLMs, we are building a comprehensive tool to leverage LLMs and all that they can do while maintaining user privacy and not needing to be an expert on AI to do it.
Totally irrelevant but ... "Language Learning Model" ? Probably just some brainfart or I'm missing something but it would be hilarious if the authors of this did this whole project without knowing what LLM stands for.
Some quick and early feedback:
1. The citations seem to be a bit dicey. The response seems to give largely correct answers but the citations window seems to show content that's a bit garbled.
2. Please please add a text search to search within existing chat content. Like if I searched for something about giraffes in one of the chats, search chat history and allow switching to it.
I assume that this sort of functionality will become more commonplace.
I think it is equally likely that LLMs will perform worse in the future, because of copyright reasons and increased privacy awareness, leading to less diverse data sets to train on.
Building LLMs is dropping in cost quickly. Back in mid 2023 training an 7B model had already dropped to $30K and it's even cheaper now.
> I think it is equally likely that LLMs will perform worse in the future, because of copyright reasons and increased privacy awareness, leading to less diverse data sets to train on.
I'll bet a lot of money this won't happen.
Firstly copyright isn't settled on this. Secondly people understand a lot more now about how to use less, higher quality data and how to use synthetic data (eg MS Phi series, Persona dataset etc and of course the upcoming OpenAI Strawberry and Orion models which use synthetic data heavily). Thirdly the knowledge about how to use multi-modal data in your LLM is much more widely spread, which means that video and code can both be used to improve LLM performance.
The only barrier right now is that laptop/phone hardware can't run them (inference and/or training) fast enough. That's a problem that won't really exist 3 to 10 years from now.
That's ignoring the fact that creation of new much much better models is going full steam ahead.
"AI" as we're calling it is aggressively defacto open-source, and I can see in no way how that competition doesn't drive down prices.
Perhaps you are missing something in my arguments that I can clear up?
Yes, it would cost kabillions to recreate Linux from scratch. But no one has to anymore because it's here and anyone can just grab it.
Same with the models. What I can download right now from Huggingface is going to be 90% or more already there, and I can tweak them at home, despite how much it may have cost to make them in the first place.
To be useful in practice, one must train with new data, say every year or so. Who is going to pay for harvesting and cleaning all that data? And as I understand it, some form of RLHF is also required, which involves some manual labour as well.
Perhaps some day this will all be very cheap, and it might even be done by AI systems instead of humans, but I wouldn't bet my horse on it.
As in, I may not be able to do "general knowledge," but who will pay for that anyway (e.g. instead of baking it in to their Google killer?)
I hope to be right or I will be jobless lol
No, it's just as complex as it was 30, 50 years ago. Because complexity is limited by developers' brains. As there was no noticeable evolution in last years the humans abilities stay the same. But there are many more humans involved in development. This makes the total complexity much higher.
> LLM will become a tool to use in your work
Not sure where you live, it's already very useful at work. Saves a lot of time. The effect is like from the internet with search engines. It doesn't make the work easier or lower the requirements. It makes developers, in this case, more productive.
Waiting for EntraID integration. Post-that, a customized version of AnythingLLM can tick the boxes for most of the lowest hanging use cases for an org.
Thanks for the killer app TimC and crew!
''' sudo chown root:root /home/hn/AnythingLLMDesktop/anythingllm-desktop/chrome-sandbox sudo chmod 4755 /home/hn/AnythingLLMDesktop/anythingllm-desktop/chrome-sandbox '''
Other than that it worked really well.
sudo chown root:root /home/hn/AnythingLLMDesktop/anythingllm-desktop/chrome-sandbox
sudo chmod 4755 /home/hn/AnythingLLMDesktop/anythingllm-desktop/chrome-sandbox
Figure out how to assign proper permissions instead. (Or at least don't invite other people to do the same thing...)
Things that work and won't take over my machine. Of course I might be wrong or my previous post might have been written by skynet to deceive more users to give their machine in service of the borg.
Who knows. All I know is that it worked and I wouldn't sinceraly wait for an answer eventually in the future to get it sorted. Won't run it again so soon anyways. YMMV
The single install desktop packaging is very slick. I look forward to the upcoming new features.
soon, agent skills are first and this should help plug the gaps between offerings since we can't build everything for everyone
Oh and the other question would be in your hosted version does the instance have access to a gpu that you provide? Which in that case we could just use a local model with (relative) ease right?
And if this hosted service is as I have described, I feel like this sort of service coupled with top tier frontier open source models is the (not too distant) future for AI!—- at least in the short to medium term (which is probably a pretty short period relatively, given the rapid speed of AI development).
Thanks
I just wish there was an option to properly include custom CSS. The default interface looks a little bit.. dated.
Keep up the amazing work!
A bigger feature that would add a lot of value might also be a prompt manager with a shareable prompt list.
The 'boot' seems to indicate it will affect the computer's startup process, I think you meant to say you will not be able to 'start the application'
WIP!
Seems doable: https://github.com/raycast/extensions/blob/main/extensions/o...
(Not affiliated, I just have Raycast installed and use it sometimes)
- ability to edit system prompt
- ability to change LLM temperature
- can choose which model to use (open-source or closed)
Privacy by default means "if you use the defaults, it's private".
Obviously, if your computer is low-end or you really have been loving GPT-4o or Claude you _can_ use just that external component while still using a local vector db, document storage, etc.
So its basically like opt-in for external usage of any particular part of the app, whether that be an LLM, embedder model, vector db, or otherwise.
Regardless of the answer, OP you’ve done a hell of a lot of work and I hope you’re as proud as you should be. Congratulations on getting all the way to a Show HN.
I could just start up a vLLM instance with llama 3.1 and connect their application to it just as easily though. Perfectly secure (as I am able to make it).
This seems like such a pedantic thing to complain about.
or need to install source code from github ?
Maybe you want to run privately, but can only manage a Gemma-2B - then great, you can use that also.