Download

For Emberite AI 0.42. The same guide is in the app's Help tab.

Emberite AI · User's Guide

Emberite AI lets you chat with an AI that can search the web, and make images and videos on your own GPU servers. Everyone signs in with their own account and only sees their own chats, tasks and files.

The tabs

  • Chat (where you start): talk to the AI.
  • Image: make or edit images from a text prompt, with optional input and reference images.
  • Video: turn an image into a video.
  • E2E (end to end): make an image and turn it into a video in one go.
  • Code: set up coding tools (OpenCode, Claude Code, Codex CLI, Cline, GitHub Copilot) to use the chat model, with this site's addresses already filled in.
  • Agent: set up AI agents (Hermes Agent, OpenHands) to use the chat model the same way.
  • Help: this guide.

Top right

  • Your user name.
  • Servers opens the Servers dialog. It shows each GPU server, whether it's up, how much work is queued on it, which one is in use for chat, and the typical generation times. The dot on the button is green when all servers are up and idle, amber when there's work queued, blue when a server is in use for chat, and red when a server can't be reached. Hover over it for a one-line summary.
  • Settings, see Settings.
  • Sign out.

On a phone these are in the ☰ menu: see On a phone.

Chat

  • Type in the box at the bottom. Enter sends and Shift+Enter starts a new line. The round → button also sends.
  • While a reply is being written, the button turns into a stop circle. Click it to stop the reply; what was written so far is kept.
  • Drag the divider between your conversations and the chat to make either side bigger or smaller. Double-click it to reset; the width is remembered in this browser.
  • New chat (pencil icon, top left) starts a fresh conversation. Your earlier conversations are under Recents; click one to continue it. Hover and click × to delete one; it's deleted straight away, with no confirmation.
  • Web search. For anything current (news, prices, versions, who holds a role), the AI searches the web and can read pages. Each step appears above the answer, for example "Searched “…” · 5 results from web search", and the sources are listed as links under it.
  • Thinking. Some models think before answering. Click Thinking to see it.
  • Answers are formatted: headings, lists, tables and code. Copy under an answer copies its text, and each code block has its own Copy button (top right of the block) that copies just the code.
  • Model: pick the model at the top of the chat. The list has the models the admin installed on every chat server. Each conversation keeps the model it was last used with, and a new chat starts with the one you picked last. Each answer says which model wrote it, at the bottom.
  • Downloading: when the admin adds a model (or just after Emberite AI was installed), a line above the message box shows the download, for example Downloading qwen3.5:9b: 42% (3.1 of 7.4 GB). If no model is ready yet, the message box waits and starts working by itself when the first one is.
  • The first message after a break can take a little longer. The answer area then says "Loading … into memory" while the model loads, and how long it took. See Chat and the GPUs.

Sharing a chat

  1. Open the chat and click Share (top right of the chat), then Copy link and send it to whoever you like.
  2. The link shows the chat as it is now. If you keep chatting, click Share again to update it; the link stays the same.
  3. The person who opens it signs in, or creates an account if they don't have one, and then sees your chat with a note saying who shared it.
  4. To continue it, they just write a message. That makes it their own copy, listed under their Recents as "from <your name>". You don't see what they add, and they don't see what you add.
  5. Stop sharing in the Share dialog turns the link off. Copies people already made stay with them. Deleting the chat also turns its link off.

Shared chats show a small link icon in your Recents.

Image

  1. Write the Positive prompt (what you want) and, optionally, a Negative prompt (what to avoid).
  2. Set Width and Height, or click one of the example sizes. auto uses the input image's size, and the ⇄ button swaps width and height.
  3. Optionally add an Input image (the image to edit) and a Reference image (for example, a face, an outfit or a style to bring in). With no input image, the image is made from the prompt alone (text-to-image).
  4. Click Generate image. The task appears in the list on the right.

See also More ways to generate.

The model. Images are made with Qwen Image Edit 2511 (with a 4-step Lightning LoRA, so it's fast), which both creates images from text and edits an input image guided by a reference. When a newer model comes out (for example Qwen Image 2.1), your admin can add it before Emberite AI is updated, and you pick it in your Settings.

Still downloading? Right after Emberite AI is installed, its image and video models download in the background (tens of GB). Until yours is ready, a yellow note above Generate shows the progress and the button is off; it turns on by itself when the download is done.

Video

  1. Write the video prompt (what happens: motion, camera, mood) and, optionally, a negative prompt.
  2. Set Width, Height, Duration (seconds) and Frame rate.
  3. Add the input image, the video's first frame. It can be a file, one of your generated images, or a video (mp4, mov, m4v or webm), in which case its last frame is used. That's handy for continuing a shot. Choose from my generated images or videos has an Images / Videos switch.
  4. Tick Enhance prompt to have your prompt rewritten in more detail from the image. The prompt that was actually used is shown on the finished task.
  5. Click Generate video.

The model. Videos are made with LTX Video 2.3 (22B, distilled), which animates your input image following the prompt and upscales the result. When a newer model comes out (for example LTX Video 2.5), your admin can add it before Emberite AI is updated, and you pick it in your Settings.

E2E (image → video)

Fill in an Image prompt (with optional input and reference images) and a Video prompt. One run makes the image and then animates it. You get both the still image and the video.

More ways to generate

These work on the Image, Video and E2E tabs.

  • Several prompts at once: put a line of ----- (five or more dashes) between prompts. Each prompt becomes its own task.
  • Folders and several images: each image box takes one image, several images or a whole folder (Choose a folder, or drag a folder onto the box). Each image becomes its own task. With folders in both the input and reference boxes, you get every input × reference combination. Use N of M images picks N at random each time you click Generate; tick All to use every image.
  • ×N next to Generate submits each task N times, each with a new random seed.
  • L+P (landscape + portrait) submits each task once wide and once tall.
  • Tag is a short label that goes into the output file names: <input name>_<tag>_<yymmddhh>_<n>.
  • Import (top of the form) loads prompts, settings and images from a task file (.yaml). You can also drop the file onto the form. Every finished image or video has a task file with the same name, and each Generate click also writes a run file.
  • Reuse on a task puts its prompts, settings, images, tag, ×N and L+P back into the form.

Your tasks

The right side of each tab lists your newest 1000 tasks with their status:

  • queued #n: waiting in line on its server.
  • waiting: held for a server that's in use for chat. It starts by itself when chat is idle (see Chat and the GPUs).
  • processing: being generated, with a live timer.
  • completed or failed. A failed task shows the reason and has a Retry button.

Each task shows the server it's on (on gpu2) and an estimated time (est. 1m). ≈ means a rough guess, because those settings haven't run on that server yet. Estimates are learned from finished tasks.

Delete, Stop, Retry, Switch, Download

These buttons are at the top of each task list. They appear when they apply.

  • Delete tasks: tick tasks (or Select all) and delete them, or click Delete all. The trash icon on a task deletes just that one. Deleting is immediate, with no confirmation, and removes the files too. A task that is still running is stopped first.
  • Stop tasks (N): stop the tasks you tick, or Stop all. Waiting tasks are taken out of the queue and the running one is interrupted. They become failed with the reason "Stopped", so you can retry them later. This survives a restart of the app.
  • Retry tasks: queue failed tasks again, the ones you tick or all of them. Each goes to the server that should finish it soonest.
  • Switch tasks: move tasks to another server.
    1. Under Tasks on, pick the server to move tasks off. This filters the list to that server and shows how many tasks each server has.
    2. Under Move to, pick the destination. Each server shows its load, and the least busy one is preselected.
    3. Tick tasks, or type a number in Last N waiting and click Select to pick the N at the end of the queue. Then click Switch N selected or Switch all.
    The running task is interrupted and starts again from the beginning on the new server, and waiting tasks keep their order.
  • Download: tick finished tasks (or Download all). One file downloads as itself; several come as one zip, including their task files.

Viewing results

  • Click a finished task's thumbnail to open the viewer. Use ← / → for the previous / next result.
  • Images: scroll or pinch to zoom, drag to pan, double-click to toggle the zoom. The buttons give Fit and 1:1.
  • F or the full-screen button for full screen. Delete (or Backspace on a Mac) deletes the result on screen and moves to the next one.
  • Videos can loop: the setting is remembered.

Chat and the GPUs

The chat model and image/video generation share the same GPUs, and a GPU can't comfortably do both at once. So while people are chatting, the chat server is reserved for chat. When chat has been idle for a while (30 minutes unless the admin changed it), it goes back to images and videos.

The Servers dialog shows which server is in use for chat and when it frees up; so does the top of the Chat tab. Release now hands it back straight away. The admin chooses which servers run chat, in order of preference (for example gpu3, gpu1: gpu3, or gpu1 if gpu3 is down).

How this plays out depends on your setup: one server or several servers.

With one server (ComfyUI and Ollama on the same machine)

  1. You send a chat message. The server becomes reserved for chat.
  2. Image/video generation pauses straight away. The task being generated is interrupted, and it and the waiting tasks are marked waiting. Nothing is lost.
  3. ComfyUI unloads its models to free GPU memory.
  4. The chat model loads. The first reply says "Loading … into memory", then how long it took. Later replies are quick, because the model stays loaded while you keep chatting.
  5. New image/video tasks submitted meanwhile are also waiting.
  6. After the idle time with no chat (or Release now), the chat model is unloaded and the waiting tasks start again automatically, oldest first. The interrupted task starts from the beginning.

With several servers (for example gpu1, gpu2 and gpu3, with gpu3 for chat)

  1. You send a chat message. gpu3 becomes reserved for chat.
  2. gpu3's image/video tasks move to the other servers straight away. The running one is interrupted and starts from the beginning on another server, and the reply notes it ("gpu3 is now reserved for chat: moved 3 tasks to other servers"). New tasks go to gpu1 and gpu2 while gpu3 is reserved.
  3. ComfyUI on gpu3 unloads its models, and the chat model loads on gpu3 (with the "Loading … into memory" notice the first time).
  4. After the idle time with no chat (or Release now), the chat model is unloaded and gpu3 is available for images and videos again. Tasks waiting at the end of the other servers' queues move to gpu3 when that gets them done sooner.
  5. If gpu3 can't be reached, chat uses the next chat server (for example gpu1), whose tasks move off the same way. When gpu3 is back, the next message moves chat back to gpu3 and gpu1 is freed.

If every other server is down, tasks for the reserved server wait as waiting and start when chat is idle, just as with one server.

When chat gets busy

Each chat server answers one request at a time; others wait their turn. When requests have been waiting for about 10 seconds (several people chatting at once, or a coding agent sending many requests), one more chat server is reserved, for example gpu1 next to gpu3. Its image/video tasks move away the same way, the chat model loads there, and from then on each new request goes to whichever chat server is free. Your conversation stays on the server that answered it before when that one is free, which keeps its replies quick.

The added server goes back to images and videos after 5 minutes without chat requests; the first chat server keeps the usual idle time. The Servers dialog and the top of the Chat tab show both. The admin sets how many servers chat may take (two by default).

Using the chat model from other apps

Coding tools and AI agents can use the same chat model as the Chat tab. Emberite AI speaks the OpenAI API (Chat Completions and Responses) and the Anthropic Messages API, so most tools connect to it directly:

  • Base URL: this site's address followed by /v1, for example http://10.0.0.10:8088/v1 if you open Emberite AI at http://10.0.0.10:8088. (Claude Code takes the address without /v1.)
  • API key: the one the admin set, or anything if none is set.
  • Model: the chat model's name (for example qwen3.8:27b), or default. Names that tools send on their own, such as claude-sonnet-… or gpt-…, are answered by the chat model too.

The Code tab has step-by-step setup for OpenCode, Claude Code, Codex CLI, Cline and GitHub Copilot, and the Agent tab for Hermes Agent (a personal agent that works in your terminal and files and remembers what it learns) and OpenHands (a software agent that writes and runs code in its own sandbox), all with this site's values filled in. Emberite AI is the backend: the tools run on your own computer and the model runs on your GPU servers.

These requests go to the chat servers exactly like the Chat tab: the first one that's up, it becomes reserved for chat, its image/video tasks are moved or wait, and after the idle time with neither chat nor API requests it goes back to images and videos. A request that is still running is never cut off by the idle timer. See Chat and the GPUs.

Context length. The chat model reads a limited amount of text at once (its context), set by the admin; the Code and Agent tabs show it. Agents send long instructions with every request: Claude Code and Hermes Agent want 64K or more, OpenHands at least 32K. If a tool loses track or stops in long tasks, ask the admin to raise it.

Claude Code with Emberite AI: what to expect

Claude Code works with Emberite AI, but it's the chat model doing the work, not Claude. Knowing the differences up front saves frustration:

  • Smaller steps work best. Open models of the size a GPU server runs are good at focused tasks: explain this file, fix this bug, write this function, add a test. On big changes across many files they plan less well than Claude and may loop or give up. Break large jobs into steps and check each one.
  • The first reply is slow. Claude Code sends a long set of instructions and tool descriptions with every request. The server has to read all of it before answering, so the first reply in a session can take a while; later replies are faster.
  • Some features aren't there. Anthropic's server-side tools don't exist on your servers: no web search, no reading PDFs, no prompt caching, token counting or extended-thinking budgets. Reading and editing files, running commands, sub-agents and to-do lists work.
  • One model for everything. When Claude Code asks for Opus, Sonnet or Haiku (or a sub-agent model), the same chat model answers. /model doesn't change anything.
  • Context fills up sooner. With a 64K context, Claude Code compacts (summarizes) the conversation more often than with Claude. Below 64K it may not work well at all.
  • It holds the chat server. While you code, your requests reserve a chat server like the Chat tab does, so image and video tasks move to other servers or wait.
  • Not an Anthropic-supported setup. Claude Code is built for Claude models. Using it with another model works today, but a Claude Code update can occasionally break something; tell your admin if it does.

Codex CLI has the same kind of limits: the chat model does the work, and OpenAI's hosted tools (web search, file search) aren't available.

Settings

Click Settings at the top right. Changes apply when you click Save. The dialog also shows the app's version.

  • Server: Auto (recommended) sends each task to the server expected to finish it soonest. Typing a server's name (for example gpu1) sends your new tasks there whenever it's up. A server reserved for chat is skipped either way.
  • Image model and Video model: Default, or another model the admin added (pick from the list).
  • Theme: Dark or Daylight. It's saved with your account, and this browser remembers it for the sign-in page too.

On a phone

  • Tap ☰ (top left) for the menu: the tabs, Servers, Settings and Sign out. The name of the tab you're on is shown next to Emberite AI.
  • Chat: the chat fills the screen. Tap Chats (top left of the chat) for New chat and your Recents. Pick one to go back to the chat.
  • Image, Video and E2E: switch between Create (the form) and Tasks (your task list, with how many there are) at the top.
  • Dialogs open from the bottom of the screen, and the viewer fills the screen.