Mintplex-Labs / anything-llm

The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, and more.
https://anythingllm.com
MIT License
27.45k stars 2.76k forks source link
agent-framework-javascript ai-agents crewai custom-ai-agents desktop-app llama3 llm llm-application llm-webui lmstudio local-llm localai multimodal nodejs ollama rag vector-database webui

AnythingLLM logo

Mintplex-Labs%2Fanything-llm | Trendshift

AnythingLLM: The all-in-one AI app you were looking for.
Chat with your docs, use AI Agents, hyper-configurable, multi-user, & no frustrating set up required.

Discord | License | Docs | Hosted Instance

English · 简体中文 · 日本語

👉 AnythingLLM for desktop (Mac, Windows, & Linux)! Download Now

A full-stack application that enables you to turn any document, resource, or piece of content into context that any LLM can use as references during chatting. This application allows you to pick and choose which LLM or Vector Database you want to use as well as supporting multi-user management and permissions.

Chatting

Watch the demo! [![Watch the video](/images/youtube.png)](https://youtu.be/f95rGD9trL0)

Product Overview

AnythingLLM is a full-stack application where you can use commercial off-the-shelf LLMs or popular open source LLMs and vectorDB solutions to build a private ChatGPT with no compromises that you can run locally as well as host remotely and be able to chat intelligently with any documents you provide it.

AnythingLLM divides your documents into objects called workspaces. A Workspace functions a lot like a thread, but with the addition of containerization of your documents. Workspaces can share documents, but they do not talk to each other so you can keep your context for each workspace clean.

Cool features of AnythingLLM

Supported LLMs, Embedder Models, Speech models, and Vector Databases

Large Language Models (LLMs):

Embedder models:

Audio Transcription models:

TTS (text-to-speech) support:

STT (speech-to-text) support:

Vector Databases:

Technical Overview

This monorepo consists of three main sections:

🛳 Self Hosting

Mintplex Labs & the community maintain a number of deployment methods, scripts, and templates that you can use to run AnythingLLM locally. Refer to the table below to read how to deploy on your preferred environment or to automatically deploy. Docker AWS GCP Digital Ocean Render.com
Deploy on Docker Deploy on AWS Deploy on GCP Deploy on DigitalOcean Deploy on Render.com
Railway RepoCloud Elestio
Deploy on Railway Deploy on RepoCloud Deploy on Elestio

or set up a production AnythingLLM instance without Docker →

How to setup for development

Learn about documents

Learn about vector caching

External Apps & Integrations

These are apps that are not maintained by Mintplex Labs, but are compatible with AnythingLLM. A listing here is not an endorsement.

Telemetry & Privacy

AnythingLLM by Mintplex Labs Inc contains a telemetry feature that collects anonymous usage information.

More about Telemetry & Privacy for AnythingLLM ### Why? We use this information to help us understand how AnythingLLM is used, to help us prioritize work on new features and bug fixes, and to help us improve AnythingLLM's performance and stability. ### Opting out Set `DISABLE_TELEMETRY` in your server or docker .env settings to "true" to opt out of telemetry. You can also do this in-app by going to the sidebar > `Privacy` and disabling telemetry. ### What do you explicitly track? We will only track usage details that help us make product and roadmap decisions, specifically: - Typ of your installation (Docker or Desktop) - When a document is added or removed. No information _about_ the document. Just that the event occurred. This gives us an idea of use. - Type of vector database in use. Let's us know which vector database provider is the most used to prioritize changes when updates arrive for that provider. - Type of LLM in use. Let's us know the most popular choice and prioritize changes when updates arrive for that provider. - Chat is sent. This is the most regular "event" and gives us an idea of the daily-activity of this project across all installations. Again, only the event is sent - we have no information on the nature or content of the chat itself. You can verify these claims by finding all locations `Telemetry.sendTelemetry` is called. Additionally these events are written to the output log so you can also see the specific data which was sent - if enabled. No IP or other identifying information is collected. The Telemetry provider is [PostHog](https://posthog.com/) - an open-source telemetry collection service. [View all telemetry events in source code](https://github.com/search?q=repo%3AMintplex-Labs%2Fanything-llm%20.sendTelemetry\(&type=code)

👋 Contributing

🌟 Contributors

anythingllm contributors

Star History Chart

🔗 More Products

[![][back-to-top]](#readme-top)

Copyright © 2024 Mintplex Labs.
This project is MIT licensed.