在这里插入图片描述

活动仓库AtomGit 首发模型体验活动

本文参加 AtomGit AI 社区"首发模型体验征文"活动,基于 GLM-5 和 Qwen3.5 模型的真实在线体验撰写。

参与主题:主题2(提示词锦囊)+ 主题3(创意魔法盒)+ 主题4(技术深探者)

一、项目背景

春节期间,AtomGit AI 社区首发上线了多款开源大模型。作为一个喜欢折腾的开发者,我萌生了一个想法:能不能用 AI 双模型并行生成游戏,让用户对比投票选择最佳版本?

二、用 GLM-5 生成项目原型

我首先在 AtomGit 官方平台向 GLM-5 提问,让它帮我生成项目原型代码:

我的提问

请生成一个完整的"一句话生成游戏对比工具"项目代码。
前端Vue3,后端Fastify。
用户输入游戏描述,后端同时调用GLM-5(zai-org/GLM-5)和Qwen3.5(vLLM_Ascend/Qwen3.5)生成HTML游戏,
并排展示在iframe中,左右分别显示两个模型的游戏,每个游戏下方有点赞按钮,底部显示历史记录。
API地址: https://api-ai.gitcode.com/v1
体验密钥从atomgit官方免费获取。
输出前后端完整代码。

在这里插入图片描述

GLM-5 给出了完整的前后端代码框架,我在此基础上进行了优化和完善:

  • 添加了缓存机制
  • 优化了 UI 样式
  • 增加了安全沙箱
  • 完善了错误处理

于是,「AI Game Generator」项目诞生了。

在这里插入图片描述

三、项目介绍

核心玩法

  1. 输入游戏描述(如"打地鼠小游戏")
  2. GLM-5 和 Qwen3.5 同时生成 HTML 游戏
  3. 实时预览两个游戏,投票选出最佳版本

在这里插入图片描述

技术栈

  • 前端:Vue 3 + Vite
  • 后端:Fastify (Node.js)
  • 模型:GLM-5、Qwen3.5(通过 GitCode API)
  • 安全:iframe sandbox 沙箱隔离

四、核心实现

3.1 提示词设计

为了让模型生成高质量、可直接运行的游戏,我设计了一套结构化提示词模板:

const GAME_PROMPT_TEMPLATE = `你是一个HTML小游戏生成引擎。

严格要求:
1. 只输出完整HTML文档
2. 必须包含 <!DOCTYPE html>
3. 内嵌 CSS
4. 内嵌 JS
5. 不允许 Markdown
6. 不允许解释
7. 不允许外链资源
8. 代码必须可直接运行
9. 游戏必须有交互逻辑

用户需求:
{userPrompt}`;

设计思路

  • 角色定位:明确"你是游戏生成引擎"
  • 约束条件:9条规则确保输出质量
  • 禁止项:禁止 Markdown、解释、外链,避免输出污染

3.2 双模型并行调用

// server/src/services/model.js
async function callGitCodeAPI(prompt, modelConfig) {
  const response = await fetch(`${config.gitcode.baseUrl}/chat/completions`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': `Bearer ${config.gitcode.apiKey}`
    },
    body: JSON.stringify({
      model: modelConfig.model,
      messages: [{ role: 'user', content: systemPrompt }],
      stream: false,
      max_tokens: modelConfig.maxTokens,
      temperature: 0.6
    })
  });
  return extractHtml(await response.json());
}

// 双模型并发
export async function callModels(prompt) {
  const [resultA, resultB] = await Promise.all([
    callGLM(prompt),
    callQwen(prompt)
  ]);
  return { modelA: resultA, modelB: resultB };
}

3.3 缓存加速

// 内存缓存 + 文件缓存,24小时过期
const memoryCache = new Map();
const CACHE_TTL = 24 * 60 * 60 * 1000;

相同提示词的请求直接返回缓存,响应速度从 5-10 秒降到毫秒级。

3.4 安全沙箱

<iframe 
  :srcdoc="modelA?.html" 
  sandbox="allow-scripts allow-popups allow-forms"
></iframe>

即使生成恶意代码,也被限制在沙箱内。

五、模型对比评测

公平性说明:两个模型统一使用 maxTokens: 4096 参数,确保公平对比。

4.1 综合评分

维度 GLM-5 Qwen3.5
代码结构 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐
创意程度 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐
完整性 ⭐⭐⭐⭐⭐ ⭐⭐⭐
简洁度 ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐

4.2 实测对比

俄罗斯方块对比

在这里插入图片描述

  • GLM-5:界面信息完整,有分数/等级/预览/控制提示,适合继续迭代
  • Qwen3.5:布局简洁,最小可运行版本,适合快速出结果

打地鼠对比

在这里插入图片描述

  • GLM-5:视觉主题统一,分数与进度/时间信息在界面展示,更像完整小活动页
  • Qwen3.5:洞位布局规整,但本次截图中地鼠形象未正常生成,主要呈现为洞位占位,命中反馈与沉浸感相对弱一些(更适合后续补齐素材/动画/反馈逻辑)

4.3 选择建议

  • 追求完整度/可维护性 → GLM-5
  • 追求创意点子/快速原型 → Qwen3.5

4.4 遇到的问题

问题 解决方案
代码截断 提示词精简 + 引导生成精简代码
输出污染 后处理正则清洗 Markdown 标记
响应时间长 缓存机制 + 加载动画

六、项目亮点

  1. 双模型并行:一个请求,两个结果,对比直观
  2. 即时可玩:生成 HTML 直接运行
  3. 投票互动:增加趣味性
  4. 安全沙箱:iframe 隔离保障安全
  5. 智能缓存:节省成本,加速响应

七、部署指南

# 1. 克隆项目
git clone https://atomgit.com/u013737132/ai-game-generator
cd ai-game-generator

# 2. 配置环境变量
cp .env.example .env
# 编辑 .env,填入 GitCode API Key

# 3. 安装依赖并启动
npm install
npm run dev

访问 http://localhost:5173 即可体验!

八、结语

这次使用 AtomGit 首发模型的体验非常棒!GLM-5 和 Qwen3.5 都展现出了强大的代码生成能力。

  • GLM-5:更注重完整性和规范性,适合追求稳定的项目
  • Qwen3.5:更有创意和灵活性,适合快速原型和探索

如果你也对 AI 编程感兴趣,强烈推荐来 AtomGit 体验这些首发模型!


项目地址https://atomgit.com/u013737132/ai-game-generator

活动入口AtomGit 首发模型体验活动

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐