English | 中文
Live Demo (expo mode: remote multi-LoRA training, no local GPU)
ms-webui is the web interface of ms-swift 5.x and twinkle. It covers the full model workflow in one place: creating and monitoring training, evaluation, export and deployment tasks, chatting with models through an agent loop with tools and skills, running long-form research sessions, and composing multi-step pipelines on a node canvas. The interface and the backend are one program: the dev server hosts the task executors, model configuration and the chat proxy, and all state lives on disk, so running jobs are not affected when the page is closed.
🧩 Full Task Lifecycle: train / eval / export / deploy / script tasks, each with creation forms, live logs, metrics curves and history.
🤖 Agent Chat: tool calling with per-session approval control, side-by-side multi-model comparison, streaming responses.
🔬 Research Sessions: the agent iterates over a research goal across turns, with every conclusion recorded and traceable in a session ledger.
🕸️ Workflow Editor: compose training, eval, merge and deploy steps as a node graph; each run is a separate instance with its own logs and snapshot.
📁 File-Based State: task state is derived from files under SWIFT_WEBUI_HOME (default ~/.swift/webui); jobs keep running when the webui stops, and every task directory contains a run.sh that can be replayed without the webui.
🌍 Bilingual Interface: English and Chinese, with light / dark themes.
The webui drives a Python environment that provides ms-swift 5.x. The startup
command checks this requirement before binding a port, so install ms-swift
first (the same environment you would use for swift commands). Node.js 18 or
newer is needed only when running from source.
npm install -g @modelscope/ms-webui
ms-webuiThe ms-webui command verifies ms-swift >= 5.0 in the active Python
environment, then starts the server and prints its address. Point a browser at
it and you are done; no separate backend process is required.
git clone https://github.com/modelscope/ms-webui.git
cd ms-webui/webui
npm install
npm run dev- Training: creation form with parallelism planning and memory estimation, live output log, loss / lr curves parsed from the training log in real time, and a comparison page across runs.
- Evaluation, export, deployment: the same create / list / detail pattern;
a deployment is an attached
swift deployprocess, and once ready its endpoint is registered in the model configuration and selectable in chat. - Chat: conversations against configured model endpoints, agent tool loop with an approval gate that can be disabled per session, and a compare mode that sends each turn to several models at once.
- Research: dedicated list and detail pages; sessions record the goal, the agent's tool calls and conclusions per iteration, and can be resumed.
- Workflow: node palette covering training, evaluation, LoRA merge and deploy steps; definitions are stored as YAML, runs are separate directories with a snapshot of the definition at launch time.
- Models, plugins, skills: model endpoints (API services or local deployments) are configured in the models page; plugins and skills extend what the agent can do.
The chat agent can load skills — instruction documents that teach it how to
use a tool or a domain workflow. Skills are not authored in this repository:
at build time, scripts/fetch-skills.mjs copies them from the
ms-swift repository and the
modelscope-skills
repository into public/skills/, so the two source repositories remain the
single source of truth. SWIFT_SKILLS_REF and MODELSCOPE_SKILLS_REF select
which ref to fetch.
Apache License 2.0.
