Spaces:
Running
title: Allin1AI.App
emoji: π³
colorFrom: purple
colorTo: gray
sdk: docker
app_port: 8080
Allin1AI.App π
Allin1AI.App is an extensible, feature-rich, and user-friendly self-hosted AI platform designed to operate entirely offline. It supports various LLM runners like Ollama and OpenAI-compatible APIs, with built-in inference engine for RAG, making it a powerful AI deployment solution.
For more information, be sure to check out our Allin1AI.App Documentation.
Key Features of Allin1AI.App β
π Effortless Setup: Install seamlessly using Docker or Kubernetes (kubectl, kustomize or helm) for a hassle-free experience with support for both
:ollama
and:cuda
tagged images.π€ Ollama/OpenAI API Integration: Effortlessly integrate OpenAI-compatible APIs for versatile conversations alongside Ollama models. Customize the OpenAI API URL to link with LMStudio, GroqCloud, Mistral, OpenRouter, and more.
π‘οΈ Granular Permissions and User Groups: By allowing administrators to create detailed user roles and permissions, we ensure a secure user environment. This granularity not only enhances security but also allows for customized user experiences, fostering a sense of ownership and responsibility amongst users.
π± Responsive Design: Enjoy a seamless experience across Desktop PC, Laptop, and Mobile devices.
π± Progressive Web App (PWA) for Mobile: Enjoy a native app-like experience on your mobile device with our PWA, providing offline access on localhost and a seamless user interface.
βοΈπ’ Full Markdown and LaTeX Support: Elevate your LLM experience with comprehensive Markdown and LaTeX capabilities for enriched interaction.
π€πΉ Hands-Free Voice/Video Call: Experience seamless communication with integrated hands-free voice and video call features, allowing for a more dynamic and interactive chat environment.
π οΈ Model Builder: Easily create Ollama models via the Web UI. Create and add custom characters/agents, customize chat elements, and import models effortlessly through Allin1AI.App Community integration.
π Native Python Function Calling Tool: Enhance your LLMs with built-in code editor support in the tools workspace. Bring Your Own Function (BYOF) by simply adding your pure Python functions, enabling seamless integration with LLMs.
π Local RAG Integration: Dive into the future of chat interactions with groundbreaking Retrieval Augmented Generation (RAG) support. This feature seamlessly integrates document interactions into your chat experience. You can load documents directly into the chat or add files to your document library, effortlessly accessing them using the
#
command before a query.π Web Search for RAG: Perform web searches using providers like
SearXNG
,Google PSE
,Brave Search
,serpstack
,serper
,Serply
,DuckDuckGo
,TavilySearch
,SearchApi
andBing
and inject the results directly into your chat experience.π Web Browsing Capability: Seamlessly integrate websites into your chat experience using the
#
command followed by a URL. This feature allows you to incorporate web content directly into your conversations, enhancing the richness and depth of your interactions.π¨ Image Generation Integration: Seamlessly incorporate image generation capabilities using options such as AUTOMATIC1111 API or ComfyUI (local), and OpenAI's DALL-E (external), enriching your chat experience with dynamic visual content.
βοΈ Many Models Conversations: Effortlessly engage with various models simultaneously, harnessing their unique strengths for optimal responses. Enhance your experience by leveraging a diverse set of models in parallel.
π Role-Based Access Control (RBAC): Ensure secure access with restricted permissions; only authorized individuals can access your Ollama, and exclusive model creation/pulling rights are reserved for administrators.
ππ Multilingual Support: Experience Allin1AI.App in your preferred language with our internationalization (i18n) support. Join us in expanding our supported languages! We're actively seeking contributors!
𧩠Pipelines, Allin1AI.App Plugin Support: Seamlessly integrate custom logic and Python libraries into Allin1AI.App using Pipelines Plugin Framework. Launch your Pipelines instance, set the OpenAI URL to the Pipelines URL, and explore endless possibilities. Examples include Function Calling, User Rate Limiting to control access, Usage Monitoring with tools like Langfuse, Live Translation with LibreTranslate for multilingual support, Toxic Message Filtering and much more.
π Continuous Updates: We are committed to improving Allin1AI.App with regular updates, fixes, and new features.
Want to learn more about Allin1AI.App's features? Check out our Allin1AI.App documentation for a comprehensive overview!
π Also Check Out Allin1AI.App Community!
Don't forget to explore our sibling project, Allin1AI.App Community, where you can discover, download, and explore customized Modelfiles. Allin1AI.App Community offers a wide range of exciting possibilities for enhancing your chat interactions with Allin1AI.App! π
How to Install π
Installation via Python pip π
Allin1AI.App can be installed using pip, the Python package installer. Before proceeding, ensure you're using Python 3.11 to avoid compatibility issues.
Install Allin1AI.App: Open your terminal and run the following command to install Allin1AI.App:
pip install open-webui
Running Allin1AI.App: After installation, you can start Allin1AI.App by executing:
open-webui serve
This will start the Allin1AI.App server, which you can access at http://localhost:8080
Quick Start with Docker π³
Please note that for certain Docker environments, additional configurations might be needed. If you encounter any connection issues, our detailed guide on Allin1AI.App Documentation is ready to assist you.
When using Docker to install Allin1AI.App, make sure to include the
-v open-webui:/app/backend/data
in your Docker command. This step is crucial as it ensures your database is properly mounted and prevents any loss of data.
If you wish to utilize Allin1AI.App with Ollama included or CUDA acceleration, we recommend utilizing our official images tagged with either
:cuda
or:ollama
. To enable CUDA, you must install the Nvidia CUDA container toolkit on your Linux/WSL system.
Installation with Default Configuration
If Ollama is on your computer, use this command:
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
If Ollama is on a Different Server, use this command:
To connect to Ollama on another server, change the
OLLAMA_BASE_URL
to the server's URL:docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
To run Allin1AI.App with Nvidia GPU support, use this command:
docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
Installation for OpenAI API Usage Only
If you're only using OpenAI API, use this command:
docker run -d -p 3000:8080 -e OPENAI_API_KEY=your_secret_key -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Installing Allin1AI.App with Bundled Ollama Support
This installation method uses a single container image that bundles Allin1AI.App with Ollama, allowing for a streamlined setup via a single command. Choose the appropriate command based on your hardware setup:
With GPU Support: Utilize GPU resources by running the following command:
docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
For CPU Only: If you're not using a GPU, use this command instead:
docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
Both commands facilitate a built-in, hassle-free installation of both Allin1AI.App and Ollama, ensuring that you can get everything up and running swiftly.
After installation, you can access Allin1AI.App at http://localhost:3000. Enjoy! π
Other Installation Methods
We offer various installation alternatives, including non-Docker native installation methods, Docker Compose, Kustomize, and Helm. Visit our Allin1AI.App Documentation or join our Discord community for comprehensive guidance.
Troubleshooting
Encountering connection issues? Our Allin1AI.App Documentation has got you covered. For further assistance and to join our vibrant community, visit the Allin1AI.App Discord.
Allin1AI.App: Server Connection Error
If you're experiencing connection issues, itβs often due to the WebUI docker container not being able to reach the Ollama server at 127.0.0.1:11434 (host.docker.internal:11434) inside the container . Use the --network=host
flag in your docker command to resolve this. Note that the port changes from 3000 to 8080, resulting in the link: http://localhost:8080
.
Example Docker Command:
docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Keeping Your Docker Installation Up-to-Date
In case you want to update your local Docker installation to the latest version, you can do it with Watchtower:
docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
In the last part of the command, replace open-webui
with your container name if it is different.
Check our Migration Guide available in our Allin1AI.App Documentation.
Using the Dev Branch π
The
:dev
branch contains the latest unstable features and changes. Use it at your own risk as it may have bugs or incomplete features.
If you want to try out the latest bleeding-edge features and are okay with occasional instability, you can use the :dev
tag like this:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --add-host=host.docker.internal:host-gateway --restart always ghcr.io/open-webui/open-webui:dev
Offline Mode
If you are running Allin1AI.App in an offline environment, you can set the HF_HUB_OFFLINE
environment variable to 1
to prevent attempts to download models from the internet.
export HF_HUB_OFFLINE=1
What's Next? π
Discover upcoming features on our roadmap in the Allin1AI.App Documentation.
License π
This project is licensed under the BSD-3-Clause License - see the LICENSE file for details. π
Support π¬
If you have any questions, suggestions, or need assistance, please open an issue or join our Allin1AI.App Discord community to connect with us! π€
Star History
Created by Timothy Jaeryang Baek - Let's make Allin1AI.App even more amazing together! πͺ