最近,开源大模型的硬件门槛又被狠狠拉低了一次!这次要介绍的 Qwen3.8-Flash-Next,虽然拥有高达 125B 参数规模,但通过量化与内存协同运行的方式,最低只需要 8GB 显存,就有机会在本地跑起来。支持Agent本地调用,比如下方的桌面虚拟女友就是它用了半天搞定的!

 

更有意思的是,它并不挑显卡,无论是 NVIDIA N 卡还是 AMD A 卡,都可以尝试部署,甚至可以将大量模型参数放进系统内存中运行。也就是说,一台拥有普通 8GB 显存的电脑,现在也能体验过去只有高端显卡甚至多卡服务器才能运行的大模型。今天我们就实际测试一下,看看这款 125B 大模型到底能不能在消费级硬件上跑起来,实际速度和效果又怎么样?

 

本地部署

一、下载开源Strata项目

Strata 可以在你的电脑上运行Qwen3.8-Flash-Next——一个通常需要服务器的大型智能 AI 模型。它以每秒 60-95 个Tokens(一个token大约是四分之三的单词)的速度输出答案:比你阅读的速度还要快。

 

1、Github 下载:【点击前往】

2、备用下载:【点击前往】

 

【零度同款】TDM Fast 下载器:【点击前往】

 

 

它的速度有多快?

 

测试平台配置为 RTX 5070 (12 GB)、Ryzen 5 7600 和 64 GB 内存:

尺寸 撰写答案(简短聊天) 撰写答案(128K 上下文) 阅读您的提示
Q2_0 95 tokens/秒 65 tokens/秒 539 tokens/秒
IQ2_XS 78 tokens/秒 52 tokens/秒 463 tokens/秒
IQ3_XXS 66 tokens/秒 45 tokens/秒 410 tokens/秒
IQ3_S 54 tokens/秒 42 tokens/秒 374 tokens/秒
  • 写入答案的速度= 回复出现的速度(每秒令牌数)。
  • 读取你的提示= 接收你发送的内容(长文档、代码、聊天记录)的速度。

显存容量更大的显卡速度更快,因为GPU可以容纳更多的模型数据:RTX 3090(24GB)每秒大约可以处理100-140个令牌。所有其他显卡的测量数据、详细数据和预估值都列在详情中。

我应该选择哪款型号?

 

尺寸(同一型号,压缩程度不同):

模型 内存和显存要求 速度 质量
Q2_0 37.6 GB 最快 好的
IQ2_XS 39.2 GB 快速地 更好(推荐)
IQ3_XXS 47.0 GB 慢点 伟大的
IQ3_S 54.8 GB 最慢 最佳:与已发布测试中的完整模型(仅限原始模型)完全匹配

它能装下吗?分片 1 是模型启动时加载的部分:它的专家数据会加载到你的内存中,其余部分则加载到你的显卡上(第二个分片,一个 29 GB 的查找表,则保留在固态硬盘上)。因此,当你的内存至少为分片 1 的大小,再加上大约 10 GB用于 Windows 和其他程序时,它就能装下。64 GB 内存可以运行所有大小的程序(例如 IQ3_S,并且只运行少量其他程序);48 GB 内存则可以运行 Q2_0 和 IQ2_XS。更强大的显卡可以提升速度,但并不会降低所需的内存。

版本:

  • Qwen3.8-Flash-Next– 原版。
  • Swift 1.5是 UkisAI 的一个优化版本,它思考时间更短,因此可以更快地给出答案,且答案质量基本保持不变。每个令牌的处理速度相同,内存占用也与相同大小的原版(不使用 IQ3_S)大致相同。它采用单独的许可协议(请参阅其页面)。

案例一:3D 滑雪游戏

提示词:

用单个 HTML 文件,通过 CDN 引入 Three.js,做一个 3D 夜间滑雪游戏。

画面:
- 全屏深色夜空背景,有星星和月亮,页面四周不留白边
- 一条向下无限延伸的雪坡,两侧有路灯照亮雪道,远处有雾气
- 雪道上随机生成松树、石头、旗门,远处有山的轮廓
- 第三人称视角,镜头跟在滑雪者身后略高的位置,转弯时镜头有轻微倾斜

玩法:
- 左右方向键控制转向,上方向键加速,下方向键减速
- 速度随时间逐渐加快,撞到树或石头就摔倒,游戏结束
- 从两根旗门之间穿过加 100 分,漏过旗门扣分
- 左上角显示分数、速度(km/h)和滑行距离,右上角显示最高分
- 游戏结束后显示成绩,按空格重新开始

细节:
- 滑雪者用简单的几何体拼出来(身体、头、两根雪杖、两块滑雪板),转弯时身体会倾斜
- 滑雪板后面留下雪痕,高速时有雪粒飞溅的粒子效果
- 用 Web Audio API 生成风声,速度越快风声越大,不要使用外部音频文件

只输出完整代码,不要解释。

 

生成一次搞定,居然没有出错,这确实让我有点意外,关键是真的能玩,雪景和动作都处理的非常到位

案例二:3D 的 FPS 射击游戏

为了节省时间,这次我就不要让它做得太复杂了,重点是一次生成、浏览器直接运行、视觉效果明显、真的能玩。

提示词如下:

请帮我制作一个可以直接在浏览器中运行的 3D FPS 第一人称射击游戏。

要求:

1. 使用 HTML + JavaScript + Three.js 实现,最终只生成一个完整的 HTML 文件,不需要后端,不需要编译,保存后直接用浏览器打开即可运行。

2. 游戏采用第一人称视角:

* 鼠标控制视角
* WASD 控制移动
* 鼠标左键射击
* Shift 加速奔跑
* Space 跳跃
* R 换弹
* Esc 退出鼠标锁定

3. 制作一个有一定规模的 3D 战斗地图:

* 科幻军事基地风格
* 有建筑物、墙壁、集装箱、掩体、道路、灯光等场景元素
* 地图具有高低差和多个战斗区域
* 使用 Three.js 光照、阴影和雾效增强真实感
* 不使用外部图片、模型或付费资源,所有场景尽可能通过程序化几何体生成

4. 武器系统:

* 第一人称视角下显示一把科幻步枪
* 鼠标左键射击
* 有枪口火焰、枪声和后坐力效果
* 子弹拥有简单的射线检测
* 弹匣容量 30 发
* R 键换弹
* 屏幕显示当前弹药数量

5. 敌人系统:

* 在地图中生成多个敌人
* 敌人具有简单的 AI
* 会在地图中巡逻
* 玩家靠近或攻击后会发现玩家并进行攻击
* 敌人会向玩家移动并射击
* 敌人拥有生命值
* 被击中后产生明显反馈
* 敌人被消灭后掉落简单奖励

6. 游戏 UI:

* 左上角显示生命值
* 右下角显示弹药数量
* 中间显示准星
* 顶部显示当前击杀数量
* 显示简单的任务目标,例如:
  “ELIMINATE ALL ENEMIES”
* 玩家受到攻击时屏幕边缘出现红色提示

7. 游戏效果:

* 枪口闪光
* 子弹击中效果
* 爆炸粒子效果
* 敌人受击反馈
* 简单的环境粒子
* 合理的光影
* 相机轻微武器后坐力
* 移动时产生轻微镜头晃动

8. 游戏流程:

* 开始界面显示游戏标题
  “STRATA: FPS”
* 点击 START GAME 后进入游戏
* 游戏目标是消灭地图中的所有敌人
* 所有敌人被消灭后显示胜利界面
* 玩家生命值归零后显示 GAME OVER
* 提供重新开始按钮

9. 性能要求:

* 必须保证在普通电脑浏览器中流畅运行
* 尽量使用低面数几何体
* 控制敌人数量在 8~12 个
* 避免复杂的后处理效果
* 不要使用大型外部资源
* 游戏启动后应该立即可以操作

10. 最重要:
    请不要只给我代码片段,也不要解释如何实现。

请直接输出一个完整、可以运行的 HTML 文件。

确保代码没有明显的 JavaScript 错误,Three.js 初始化、Pointer Lock、射击、碰撞、敌人 AI、生命值、弹药、胜利和失败状态全部可以正常工作。

如果某些高级功能过于复杂,请优先保证:
“可以进入游戏 → 可以移动 → 可以射击 → 可以击中敌人 → 敌人会攻击 → 可以获胜/失败”
这一完整游戏循环正常运行。

 

生成效果如下

 

 

案例三:桌面虚拟女友

 

提示词:

 

你是一名资深全栈桌面应用开发工程师、Three.js / Electron 专家,同时熟悉本地 LLM、语音识别、TTS、VRM 3D 角色以及 Windows 桌面应用开发。

请帮我从零开发一个运行在 Windows 11 上的「3D 桌面 AI 女友」应用。

## 一、项目目标

开发一个真正可以长期运行在 Windows 桌面上的实时 3D AI 虚拟伴侣。

她不是普通的网页聊天机器人,而应该像一个真正存在于桌面上的 3D 角色:

* 透明无边框窗口
* 3D VRM 女性角色
* 角色可以悬浮在 Windows 桌面上
* 支持鼠标交互
* 支持实时语音对话
* 支持文字聊天
* 支持实时口型同步
* 支持眼神追踪
* 支持头部跟随鼠标
* 支持自然呼吸、眨眼、头发和衣服物理效果
* 支持 AI 根据用户意图触发动作
* 支持换装
* 支持离开/休息
* 支持重新召回
* 支持摸头等互动
* 所有 AI、STT 等核心能力尽量本地运行

目标硬件环境:

* Windows 11
* NVIDIA RTX 4090 24GB
* 64GB RAM

设计目标是:

「打开程序后,一个真正可以和用户实时交流、会做动作、会回应、会换衣服、会离开和回来,并且始终存在于 Windows 桌面的 3D AI 女友。」

---

# 二、技术栈

请优先使用以下技术:

### 桌面端

* Electron 34
* Three.js r174
* @pixiv/three-vrm 3.3
* JavaScript / TypeScript
* HTML / CSS

### AI

使用 Ollama 作为本地 LLM 服务。

默认模型:

qwen3.8:27b

模型地址默认:

http://127.0.0.1:11434

请把模型名称做成配置项,不要硬编码。

---

# 三、语音识别

使用:

Faster-Whisper

要求:

* CUDA
* float16
* RTX 4090 GPU 加速
* 支持实时语音识别
* 支持 VAD
* 用户开始说话后自动检测
* 用户停止说话后自动提交识别
* 将识别结果发送给 LLM
* 尽可能降低延迟

目标体验:

用户说完一句话后,应该能够非常快地得到 AI 回复。

---

# 四、语音合成

使用 Edge-TTS。

默认中文声音:

zh-CN-XiaoxiaoNeural

同时支持其他中文音色,例如:

* 晓伊
* 云健

要求:

把 TTS 做成独立模块,未来可以很方便增加:

* Azure TTS
* OpenAI TTS
* ElevenLabs
* 本地 TTS

不要让业务逻辑和某一个 TTS 服务强耦合。

---

# 五、实时口型同步

AI 女友说话时必须同步做口型。

使用:

Web Audio API

对正在播放的 TTS 音频进行实时 FFT / 频域分析。

将声音频率能量映射到 VRM BlendShape。

至少支持:

* aa
* ih
* ou
* ee
* oh

要求:

1. AI 开始播放声音
2. Web Audio API 分析音频
3. 实时计算不同频段能量
4. 根据能量驱动 VRM BlendShape
5. 嘴巴随声音自然开合
6. AI 停止说话后嘴巴恢复自然状态

不要使用简单的固定时间动画模拟嘴型。

---

# 六、VRM 3D 角色系统

使用:

@pixiv/three-vrm

加载 VRM 模型。

角色需要支持:

* Idle
* 呼吸
* 眨眼
* 头部运动
* 眼睛追踪
* 表情
* 手臂动作
* 身体动作
* 换装
* 离开
* 返回
* 摸头
* 开心
* 害羞
* 撒娇
* 生气
* 惊讶

角色需要有一个明确的 Animation / Emotion 状态机。

不要把所有动作代码混在 UI 文件里面。

建议结构:

AvatarController

AnimationController

EmotionController

ActionController

LipSyncController

EyeTrackingController

---

# 七、鼠标眼神追踪

角色必须实时观察用户鼠标位置。

实现:

鼠标移动

↓

计算鼠标相对于角色的位置

↓

计算目标视线方向

↓

平滑插值

↓

控制 VRM:

* head
* neck
* eyes

让角色看起来像是在关注鼠标。

要求:

不要直接瞬移。

使用 lerp / damp / quaternion slerp 等方式实现平滑跟随。

限制最大旋转角度,避免出现非常夸张的脖子扭转。

---

# 八、桌面透明窗口

Electron 必须创建:

* transparent: true
* frame: false

实现真正的 Windows 桌面透明悬浮角色。

要求:

* 背景完全透明
* 只有角色和 UI 可见
* 窗口不能出现传统边框
* 支持拖动角色移动
* 支持调整窗口位置
* 支持最小化到托盘
* 支持开机启动配置
* 支持关闭程序

角色应该可以放在屏幕任意位置。

---

# 九、拖拽

用户可以:

按住角色身体或头部

↓

拖动

↓

移动整个桌面窗口。

要求:

拖动过程中不能影响角色动画。

鼠标点击头部时应该触发:

「摸摸头」

而不是直接进入拖动。

需要合理区分:

click

drag

long press

---

# 十、AI 对话系统

核心逻辑:

用户输入:

「你今天怎么样?」

↓

STT

↓

LLM

↓

生成自然语言回复

↓

TTS

↓

Lip Sync

↓

Emotion

↓

Animation

↓

完成整个交互。

AI 必须拥有一个专门的 System Prompt。

角色定位:

一个生活在 Windows 桌面上的可爱、自然、有情绪反馈的 AI 女友。

不要每句话都使用夸张的:

「主人~」

「好开心呀~」

避免机械和低幼。

回复应该:

* 自然
* 简短
* 有情绪
* 有上下文记忆
* 根据用户语气产生不同反应

例如:

用户:

「今天工作好累。」

AI:

「辛苦啦,今天是不是又忙了一整天?要不要先休息一下,我陪你聊会儿。」

然后触发:

Emotion = caring

Animation = gentle

Voice = soft

---

# 十一、Action 状态机

这是项目最重要的模块之一。

LLM 不仅需要输出文本,还需要判断用户意图。

建议让 LLM 输出结构化 JSON:

{
"reply": "辛苦啦,今天是不是又忙了一整天?",
"emotion": "caring",
"action": "comfort",
"costume": null
}

例如:

用户:

「去休息吧」

输出:

{
"reply": "好呀,那我先去休息啦,记得早点休息哦。",
"emotion": "happy",
"action": "leave",
"costume": null
}

用户:

「回来」

输出:

{
"reply": "我回来啦!",
"emotion": "happy",
"action": "return",
"costume": null
}

用户:

「换成水手服」

输出:

{
"reply": "好呀,马上换给你看。",
"emotion": "happy",
"action": "change_costume",
"costume": "school"
}

需要设计 Action Dispatcher。

例如:

leave

return

change_costume

wave

happy

shy

angry

surprised

comfort

head_pat

idle

等。

---

# 十二、「离开 / 休息」功能

当用户说:

* 离开
* 去休息吧
* 休息一下
* 晚安
* 你先去休息

触发:

1. AI 回复
2. 播放挥手动作
3. 角色逐渐移动/淡出
4. 角色消失
5. Windows 桌面右下角出现一个粉色呼吸爱心挂件

爱心需要:

* 粉色
* 有呼吸动画
* 可以点击
* 鼠标悬停有反馈

---

# 十三、「回来」功能

以下任何方式都可以唤醒:

1. 点击粉色爱心
2. Ctrl + Alt + G
3. 系统托盘菜单
4. 用户语音说:

「回来」

「出来」

「我想你了」

触发:

爱心挂件消失

↓

3D 角色从屏幕边缘出现

↓

播放开心挥手动画

↓

角色恢复 Idle

↓

播放:

「我回来啦!」

---

# 十四、换装系统

必须支持至少 5 套 VRM:

costume_casual.vrm

costume_school.vrm

costume_stylish.vrm

costume_gothic.vrm

costume_seed.vrm

对应:

casual

school

stylish

gothic

seed

语音示例:

「换成日常装」

「穿学生装」

「换成水手服」

「换成时尚一点的」

「穿洋装」

「换未来科技装」

换装时:

1. 播放旋转动作
2. 角色出现爱心 / 星光粒子
3. 加载新 VRM
4. 完成切换
5. 恢复 Idle

同时支持底部工具栏手动切换。

---

# 十五、「摸摸头」

用户点击角色头部:

触发:

* shy emotion
* blush
* smile
* heart particles
* 专属 TTS

例如:

「嘿嘿……不要一直摸我的头啦~」

要求:

每次触发不要完全相同。

可以准备多个随机回复。

---

# 十六、底部工具栏

设计一个非常简洁的半透明工具栏。

包含:

🎤 麦克风

💬 打字聊天

👗 换装

👋 休息

⚙️ 设置

要求:

平时可以隐藏。

鼠标移动到角色附近时淡入。

鼠标离开后淡出。

不要遮挡角色。

---

# 十七、文字聊天

点击:

💬

打开半透明聊天输入框。

支持:

* 输入文字
* Enter 发送
* 显示 AI 回复
* TTS
* Lip Sync
* Emotion
* Action

文字聊天与语音聊天必须共用同一个 AI Conversation Manager。

不要维护两套不同的对话逻辑。

---

# 十八、系统托盘

Windows 系统托盘显示一个爱心图标。

右键菜单:

* 唤醒
* 隐藏
* 换装
* 休息
* 设置
* 退出

---

# 十九、设置面板

设置至少包含:

### AI

模型名称:

qwen3.8:27b

Ollama URL:

http://127.0.0.1:11434

### 女友

角色名字

用户称呼

性格 Prompt

### TTS

音色

语速

音量

### 语音识别

Whisper Model

语言

VAD

### 快捷键

Ctrl + Alt + G

### 系统

开机启动

最小化到托盘

---

# 二十、项目启动

最终用户应该只需要:

双击:

启动AI女友.bat

即可启动整个系统。

BAT 自动完成:

1. 检查 Ollama 是否运行
2. 如果没有运行,则启动 Ollama
3. 检查指定模型是否存在
4. 如果不存在,给出清晰提示
5. 启动 Python Backend
6. Backend 启动 Faster-Whisper
7. Backend 启动 TTS 服务
8. 启动 Electron
9. 显示 3D AI 女友

Backend 默认端口:

8765

---

# 二十一、推荐项目结构

请采用清晰的模块化架构,例如:

project/

├─ electron/

│  ├─ main.js

│  ├─ preload.js

│  └─ tray.js

│

├─ renderer/

│  ├─ index.html

│  ├─ app.js

│  ├─ scene/

│  ├─ avatar/

│  ├─ animation/

│  ├─ emotion/

│  ├─ lipsync/

│  ├─ interaction/

│  ├─ ui/

│  └─ styles/

│

├─ backend/

│  ├─ main.py

│  ├─ whisper/

│  ├─ llm/

│  ├─ tts/

│  ├─ actions/

│  └─ api/

│

├─ assets/

│  ├─ models/

│  ├─ costumes/

│  ├─ animations/

│  ├─ audio/

│  └─ textures/

│

├─ config/

│  └─ config.json

│

├─ scripts/

│  └─ 启动AI女友.bat

│

└─ package.json

如果你认为有更合理的架构,可以调整,但必须保持模块之间低耦合。

---

# 二十二、通信架构

Electron Renderer 与 Python Backend 之间需要明确通信协议。

推荐:

WebSocket

例如:

ws://127.0.0.1:8765

消息格式统一采用 JSON。

例如:

{
"type": "user_message",
"text": "换成水手服"
}

Backend:

{
"type": "ai_response",
"text": "好呀,马上换给你看。",
"emotion": "happy",
"action": "change_costume",
"costume": "school"
}

Renderer 收到后:

* 播放 TTS
* 触发 LipSync
* 触发 Emotion
* 触发 Action
* 更新 UI

---

# 二十三、性能要求

RTX 4090 是目标硬件。

重点优化:

* Three.js GPU rendering
* WebGL
* VRM
* Animation
* Web Audio
* Whisper CUDA
* Ollama GPU

目标:

3D 渲染尽量稳定在 60 FPS。

不要因为 AI 推理导致 UI 卡顿。

AI 推理必须在后台线程/独立进程中执行。

Renderer 不能被阻塞。

---

# 二十四、错误处理

必须考虑:

Ollama 没启动

模型不存在

Whisper 加载失败

CUDA 不可用

麦克风权限失败

TTS 失败

VRM 加载失败

WebSocket 断开

GPU 内存不足

模型响应超时

网络不可用

任何情况下都不能让 Electron 整个崩溃。

必须在 UI 中给出友好的错误提示。

---

# 二十五、重要开发原则

不要一次性生成一个几千行的大文件。

必须模块化。

不要把所有功能塞进:

app.js

main.py

必须拆分。

所有配置尽可能放到 config.json。

所有 AI Prompt 独立保存。

所有 Action 独立定义。

所有 Animation 独立管理。

所有 UI 独立管理。

---

# 二十六、开发方式

请不要只告诉我「应该怎么做」。

我要你直接开始开发。

执行顺序:

### Phase 1

创建项目骨架。

### Phase 2

实现 Electron + Three.js。

首先让 VRM 角色成功显示。

### Phase 3

实现透明桌面窗口。

### Phase 4

实现鼠标拖动、眼神追踪。

### Phase 5

实现动画、呼吸、眨眼。

### Phase 6

实现 Python Backend。

### Phase 7

接入 Ollama。

### Phase 8

接入 Faster-Whisper。

### Phase 9

接入 Edge-TTS。

### Phase 10

实现 Lip-Sync。

### Phase 11

实现 LLM Action JSON。

### Phase 12

实现换装。

### Phase 13

实现离开 / 返回。

### Phase 14

实现系统托盘和快捷键。

### Phase 15

实现设置面板。

### Phase 16

实现启动 BAT。

### Phase 17

完整测试。

每完成一个阶段,都进行实际运行测试。

如果发现错误,不要停下来问我「是否继续」,直接定位并修复。

---

# 二十七、非常重要

这是一个真实的软件开发任务。

不要生成 Demo 假代码。

不要用:

TODO

placeholder

mock API

假 VRM

假的 Whisper

假的 Ollama

假的 TTS

代替真实实现。

如果某个依赖没有安装:

自动安装或给出明确安装命令。

如果某个模型文件不存在:

明确告诉我需要放在哪里。

如果无法自动完成某一步:

保留完整代码,并明确说明唯一需要用户手动完成的步骤。

---

# 二十八、最终验收标准

完成后,我应该能够:

1. 双击「启动AI女友.bat」
2. 自动启动 Ollama
3. 自动启动 Python Backend
4. 自动启动 Electron
5. Windows 桌面出现透明 3D AI 女友
6. 角色保持自然 Idle 动画
7. 鼠标移动时角色看向鼠标
8. 点击头部触发摸头互动
9. 对着麦克风说话
10. Faster-Whisper 实时识别
11. Qwen 27B 生成回复
12. Edge-TTS 播放声音
13. 角色同步做口型
14. AI 根据上下文改变情绪
15. AI 根据意图执行动作
16. 可以换 5 套衣服
17. 可以说「去休息」
18. 角色离开并变成粉色爱心
19. 点击爱心重新回来
20. Ctrl + Alt + G 可以唤醒/隐藏
21. 系统托盘可以控制程序
22. 设置面板可以修改模型、声音和角色信息

最终目标不是「能运行」。

而是:

**让用户第一次启动以后,就真正感觉自己桌面上多了一个会说话、会看着自己、会做动作、会回应自己的 3D AI 角色。**

现在开始执行。

先检查当前工作目录和已有文件,然后根据实际环境决定从哪里开始。

不要只输出方案,直接开始创建和修改项目文件。