Run Open Source/Open Weight LLMs locally with OpenAI compatible APIs
See the code
Bodhi App allows you to run Open Source LLMs locally. It utilizes the Huggingface ecosystem for accessing open-source LLM weights and information and is powered by llama.cpp.
While many apps that help you run LLMs locally are targeted at technical users, Bodhi App is designed with both technical and non-technical users in mind.
For technical users, it provides OpenAI-compatible chat completions and models API endpoints. It includes comprehensive API documentation following OpenAPI standards and features a built-in SwaggerUI that allows developers to explore and test all API endpoints live.
For non-technical users, it comes with a built-in Chat UI that is quick to start and easy to understand. Users can quickly get started with open-source models and adjust various settings to suit their needs. The app also enables users to discover, explore, and download new open-source models that fit their requirements and are compatible with their local hardware.
Bodhi App is currently released only for the Mac platform. You can install it either by downloading the release from the GitHub release page or using Homebrew.
Bodhi App hosts its external cask at BodhiSearch/homebrew-apps. Install Bodhi App using this command:
brew install --cask BodhiSearch/apps/bodhi
Once installed, launch Bodhi App.app from the /Applications folder. You should see the Bodhi App icon in your system tray. Launch the homepage from the system tray menu by selecting Open Homepage.
Download the latest release for your platform from the Releases page.
Unzip and move Bodhi.app to your /Applications folder, then launch it. You should see the Bodhi App icon in your system tray. Launch the homepage from the system tray menu by selecting Open Homepage.
Bodhi App is available as Docker images with multiple hardware acceleration variants. Each variant is optimized for specific hardware configurations to provide the best performance.
CPU Variant (Most Compatible - Auto-detects AMD64/ARM64):
docker run -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-cpu
CUDA Variant (NVIDIA GPU):
docker run --gpus all -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-cuda
ROCm Variant (AMD GPU):
docker run --device=/dev/kfd --device=/dev/dri --group-add video -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-rocm
Vulkan Variant (Cross-vendor GPU):
docker run --device=/dev/dri -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-vulkan
/data/bodhi_home: Application data, configuration, and downloaded models/data/hf_home: HuggingFace cache directory for model downloadsAfter starting the container, Bodhi App will be available at http://localhost:8080.
On first launch, Bodhi App starts with a setup flow. Follow this process to configure and install Bodhi App for your local machine and get started.
Bodhi App comes with built-in documentation:
Bodhi App provides a TypeScript client for easy integration with the API:
npm install @bodhiapp/ts-client
import { BodhiClient } from "@bodhiapp/ts-client";
// Initialize the client
const client = new BodhiClient({
baseUrl: "http://localhost:1135",
apiKey: "your-api-key",
});
// Create a chat completion
async function chatWithBodhi() {
const response = await client.createChatCompletion({
model: "gpt-3.5-turbo",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "Hello, who are you?" },
],
});
console.log(response.choices[0].message.content);
}
For more information, see the ts-client documentation.
{width=600px}
(Open up a pull request on README.md to include community integrations)
TypeScript
35.0%
Rust
30.4%
JavaScript
23.6%
CSS
6.7%
HTML
2.2%
Python
1.1%
Run Open Source/Open Weight LLMs locally with OpenAI compatible APIs
See the code
Bodhi App allows you to run Open Source LLMs locally. It utilizes the Huggingface ecosystem for accessing open-source LLM weights and information and is powered by llama.cpp.
While many apps that help you run LLMs locally are targeted at technical users, Bodhi App is designed with both technical and non-technical users in mind.
For technical users, it provides OpenAI-compatible chat completions and models API endpoints. It includes comprehensive API documentation following OpenAPI standards and features a built-in SwaggerUI that allows developers to explore and test all API endpoints live.
For non-technical users, it comes with a built-in Chat UI that is quick to start and easy to understand. Users can quickly get started with open-source models and adjust various settings to suit their needs. The app also enables users to discover, explore, and download new open-source models that fit their requirements and are compatible with their local hardware.
Bodhi App is currently released only for the Mac platform. You can install it either by downloading the release from the GitHub release page or using Homebrew.
Bodhi App hosts its external cask at BodhiSearch/homebrew-apps. Install Bodhi App using this command:
brew install --cask BodhiSearch/apps/bodhi
Once installed, launch Bodhi App.app from the /Applications folder. You should see the Bodhi App icon in your system tray. Launch the homepage from the system tray menu by selecting Open Homepage.
Download the latest release for your platform from the Releases page.
Unzip and move Bodhi.app to your /Applications folder, then launch it. You should see the Bodhi App icon in your system tray. Launch the homepage from the system tray menu by selecting Open Homepage.
Bodhi App is available as Docker images with multiple hardware acceleration variants. Each variant is optimized for specific hardware configurations to provide the best performance.
CPU Variant (Most Compatible - Auto-detects AMD64/ARM64):
docker run -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-cpu
CUDA Variant (NVIDIA GPU):
docker run --gpus all -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-cuda
ROCm Variant (AMD GPU):
docker run --device=/dev/kfd --device=/dev/dri --group-add video -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-rocm
Vulkan Variant (Cross-vendor GPU):
docker run --device=/dev/dri -p 8080:8080 \
-v ./bodhi_home:/data/bodhi_home \
-v ./hf_home:/data/hf_home \
ghcr.io/bodhisearch/bodhiapp:latest-vulkan
/data/bodhi_home: Application data, configuration, and downloaded models/data/hf_home: HuggingFace cache directory for model downloadsAfter starting the container, Bodhi App will be available at http://localhost:8080.
On first launch, Bodhi App starts with a setup flow. Follow this process to configure and install Bodhi App for your local machine and get started.
Bodhi App comes with built-in documentation:
Bodhi App provides a TypeScript client for easy integration with the API:
npm install @bodhiapp/ts-client
import { BodhiClient } from "@bodhiapp/ts-client";
// Initialize the client
const client = new BodhiClient({
baseUrl: "http://localhost:1135",
apiKey: "your-api-key",
});
// Create a chat completion
async function chatWithBodhi() {
const response = await client.createChatCompletion({
model: "gpt-3.5-turbo",
messages: [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "Hello, who are you?" },
],
});
console.log(response.choices[0].message.content);
}
For more information, see the ts-client documentation.
{width=600px}
(Open up a pull request on README.md to include community integrations)
TypeScript
35.0%
Rust
30.4%
JavaScript
23.6%
CSS
6.7%
HTML
2.2%
Python
1.1%