定义开发者试用路径
把“下载模型、运行模型、选择能力、输入样本、查看输出、判断是否接入”梳理成稳定工作流。
Jarven
UI/UX Designer
PROJECT POSITIONING
Nexa Studio 是一款面向开发者的移动端 App,用来在真实手机设备上下载、运行、切换和试用端侧 AI 模型。它服务的不是普通聊天用户,而是需要快速判断模型能力、性能和接入价值的开发者。
这个项目的 UX 难点在于:端侧模型有下载、运行、加载、推理、失败等技术状态,也有 LLM、ASR、Embedding Search、多模态输入等不同能力。设计不能只做“好看的聊天界面”,而要把复杂模型能力转译成开发者能快速理解、快速测试、快速判断的移动端工作流。
MY UX WORK
把“下载模型、运行模型、选择能力、输入样本、查看输出、判断是否接入”梳理成稳定工作流。
把模型管理、能力测试、结果反馈、历史记录和多端状态组织成可扩展的移动端结构。
统一文字、语音、相机、图片、文件和模型切换,让不同模型能力在同一套测试逻辑下被验证。
定义模型生命周期、AI Ball 反馈、暗色模式和设计走查,让方案能被准确实现。
UX Foundation / Problem Framing
端侧 AI 模型体验工具的核心问题,不是给开发者一个聊天框,而是帮助他们回答一组判断题:这个模型能不能在我的设备上跑起来?支持什么输入?输出质量如何?速度和稳定性是否可接受?是否值得进一步接入我的产品?
开发者不想在移动端反复找入口,他们需要快速进入模型、输入测试样本、看到结果并形成判断。
端侧 AI 的价值很抽象,设计需要把下载、运行、推理、多模态输入和结果质量变成可感知的体验。
如果开发者不知道模型是否下载、是否运行、是否加载失败,就会把技术等待误解为产品不可用。
小屏幕既要放输入、输出、模型切换和媒体预览,又要保留开发者关心的状态信息和结果反馈。
UX Foundation / Developer Journey
我没有把 Nexa Studio 当成普通 App 设计,而是按开发者评估模型的决策过程拆解旅程。每一步都要回答“现在能不能测、该怎么测、测出来怎么看”。
UX Foundation / IA & Capability Taxonomy
Nexa Studio 的信息架构不是按页面堆功能,而是围绕开发者试用模型的过程组织:先管理模型,再进入对应能力的测试工作区,最后通过状态和结果帮助判断。
核心是长文本输入输出、上下文连续性、模型切换和回复可读性。
核心是录音、播放、识别结果、失败重试和语音输入反馈。
核心是上传/输入样本、触发检索、展示相似结果和判断搜索质量。
核心是图片、相机、文件与文本共存,并让开发者确认素材已进入模型上下文。
UX Artifact 01 / Model Lifecycle
对开发者来说,“模型不可用”背后可能是未下载、下载中、加载中、运行失败或设备不支持。我的设计重点是把这些技术状态拆开,让主操作按钮和界面反馈始终告诉用户下一步能做什么。
UX Artifact 02 / Testing Workspace
如果每种模型能力都单独做一套界面,产品很快会失控。所以我把试用区设计成可扩展容器:顶部承接模型与模式,主体承接输入/输出,底部承接文本、媒体和运行操作。
DESIGN SOLUTION
UX Artifact 03 / High Fidelity Interface Analysis
Nexa Studio 的高保真设计重点不是“聊天页好不好看”,而是让开发者在手机上完成一套连续判断:模型是否可用、当前在测什么能力、输入是否进入上下文、输出是否可信、下一步该切模型还是继续追问。
把开发者行为拆成模型准备、能力选择、输入、运行、查看结果、切换模型。
顶部承接模型上下文,中部承接输入与输出,底部承接运行和媒体入口。
下载、加载、推理、失败、等待和录入都需要明确反馈,避免端侧运行像卡死。
高保真不是终点,最后还要把主题适配和实现偏差转成可修复问题。
开发者不是来“聊天”的,而是在验证某个端侧模型能否完成任务。所以界面第一优先级是持续暴露模型上下文,同时让输入、输出、状态和切换路径保持稳定,降低反复测试时的认知成本。
1
2
3
4
5
未进入模型时用 Welcome / No Model Selected 说明原因和下一步。
Loading 与 Thinking 分开,避免用户把模型推理误以为页面卡顿。
下拉切换与结果区保留在同一工作区,支持横向比较。
Audio、Camera、Photos 统一从输入区展开,符合“补充上下文”的心智。
图片可预览、放大、继续对话,让输出进入下一轮测试。
早期如果把 LLM、ASR、Embedding Search 分别做成独立页面,短期看起来直观,但每新增一种端侧模型能力都要重新定义入口、状态、输入和输出。最终方案把差异放在能力参数里,把稳定结构沉淀为同一套测试容器。
入口、状态、输入规则分散,后续新增能力会不断增加学习成本。
开发者理解一次结构,就能迁移到语音、搜索、多模态等不同能力。
1
2
3
4
先确认模型已准备,再进入能力测试,减少“在哪里开始”的疑问。
录音、停止、转写仍进入同一输出容器,不重造阅读和历史逻辑。
文件导入、数据库为空、索引设置被当作能力参数,而不是新产品。
空库、设置、确认弹窗都复用统一状态反馈,降低实现分裂。
多模态测试最容易出问题的地方不是上传入口,而是用户无法判断素材是否真的进入模型上下文。因此我把媒体入口、素材预览、发送后状态、结果引用和放大查看串成闭环。
1
2
3
4
5
6
用户输入不离开当前模型页,减少“新建任务”的割裂感。
Copy、Try Text、Regenerate 放到长按菜单,避免主界面过载。
模型列表从顶部展开,让用户知道正在换的是模型而不是任务。
上传不是独立模块,而是当前提问的上下文补充。
拍摄和确认分开,防止误把临时画面发送给模型。
开发者能检查细节,而不是只能看到聊天流里的小缩略图。
端侧模型运行时,用户经常面对几秒到几十秒的等待。AI Ball 被定义成状态组件,而不是视觉点缀:它用形态、层级和动效关键帧表达“可输入、正在听、正在思考、已完成或失败”。
低强度发光,提示工具可被唤起。
增强动效,反馈语音或媒体输入正在进入系统。
循环旋转与渐变变化,让等待变成可感知处理。
状态弱化并配合文案,引导用户重新运行或检查模型。
1
2
3
4
以静态底层、微弱内核和动态渐变分层,让用户先知道工具可被唤起,再判断它是否正在处理任务。
两个 Gradient 层按 0°、90°、180°、270° 的不同节奏转动,形成持续推理感,而不是一个含义模糊的 loading 图标。
当组件进入更小的界面容器时,保留核心形态与动效层级,避免小尺寸下只剩一颗无法解释的发光圆点。
关键帧在 360° 回归初始状态,使循环连续无跳变;用户能稳定感知模型仍在本地运行,并保有继续等待或改用其他操作的判断依据。
UX Foundation / Error & QA
端侧 AI 模型试用会遇到资源不足、模型加载失败、权限缺失、输入格式不支持、暗色模式偏差和跨端实现偏差。我的工作不是只交付理想页面,而是把这些不稳定因素变成可检查、可恢复、可交付的设计规则。
未下载时显示 Download,已下载时显示 Run Model,运行后进入测试工作区,避免状态和操作割裂。
媒体入口需要展示可上传类型、失败原因和替代路径,减少开发者以为模型本身不可用。
用 AI Ball 和生成态告诉用户模型正在本地处理,而不是让界面看起来卡死。
长回复、统计信息和上下文记录通过展开入口组织,避免小屏输出区失控。
暗色版不是简单换色,而是检查层级、状态、输入容器和结果区的可读性。
设计走查通过 Present / Design 对照,把界面偏差、间距、状态和文案问题具体标出。
UX Foundation / Validation & Handoff
Nexa Studio 的设计价值,不只是界面看起来完整,而是它能不能让开发者更快完成模型评估,并让研发团队按一致规则实现多端体验。
CORE DESIGN OUTPUT