Important
Discuss configurations and setups with other users at: https://discord.gg/Cm77Eav5mX. Help / Support is handled exclusively on GitHub to allow people with similar issues to find solutions more easily.
LLocalSearch is a completely locally running search aggregator using LLM Agents. The user can ask a question and the system will use a chain of LLMs to find the answer. The user can see the progress of the agents and the final answer. No OpenAI or Google API keys are needed.
2024-04-13.14-47-45.mp4
- 🕵️ Completely local (no need for API keys)
- 💸 Runs on "low end" LLM Hardware (demo video uses a 7b model)
- 🤓 Progress logs, allowing for a better understanding of the search process
- 🤔 Follow-up questions
- 📱 Mobile friendly interface
- 🚀 Fast and easy to deploy with Docker Compose
- 🌐 Web interface, allowing for easy access from any device
- 💮 Handcrafted UI with light and dark mode
This project is still in its very early days. Expect some bugs.
Please read infra to get the most up-to-date idea.
- A running Ollama server, reachable from the container
- GPU is not needed, but recommended
- Docker Compose
Warning
Please read Ollama Setup Guide to get Ollama working with LLocalSearch.
Recommended, if you don't intend to develop on this project.
git clone https://github.com/nilsherzig/LLocalSearch.git
cd ./LLocalSearch
# 🔴 check the env vars inside the compose file (and `env-example` file) and change them if needed
docker-compose up
🎉 You should now be able to open the web interface on http://localhost:3000. Nothing else is exposed by default.
Only recommended if you want to contribute to this project.
git clone https://github.com/nilsherzig/LLocalsearch.git
# 1. make sure to check the env vars inside the `docker-compose.dev.yaml`.
# 2. Make sure you've really checked the dev compose file not the normal one.
# 3. build the containers and start the services
make dev
# Both front and backend will hot reload on code changes.
If you don't have make
installed, you can run the commands inside the Makefile manually.
Now you should be able to access the frontend on http://localhost:3000.