Coze AI应用开发 -Logo生成的简单模拟
摘要
本文探讨了如何使用HTML5、Bootstrap样式库构建用户友好的表单界面,并结合LLM(大语言模型)API实现对Coze自动生成logo的简单模拟。
快速搭建页面结构
1. 响应式布局与Bootstrap
在现代网页开发中,响应式设计是必不可少的一环。我们使用 Bootstrap 作为CSS框架来快速搭建页面结构。
<div class="container">
<!-- 一行 -->
<div class="row">
<div class="col-md-6">
<form
action="https://www.baidu.com"
name="appForm">
<div class="form-group">
<label for="titleInput">Bot名称:</label>
<input
placeholder="请输入名称"
id="titleInput"
name="title"
type="text"
required
class="form-control">
</div>
<div class="form-group">
<label for="descInput">Bot描述:</label>
<textarea
name="desc"
placeholder="请输入描述"
class="form-control"
id="descInput"
rows="3"
></textarea>
</div>
<div class="form-group">
<button
type="submit"
class="btn btn-default btn-primary"
id="submitBtn">生成图标</button>
</div>
</form>
</div>
</div>
<!-- DOM 动态插入log appenchild -->
<div class="row" id="logo"></div>
</div>
.container类让内容在PC端居中显示,左右自动外边距(margin: auto),并限制最大宽度以保证可读性。
2. 表单最佳实践
✅ 必填字段标记
- 使用
required属性确保关键信息不被遗漏。 - 浏览器会在提交时自动验证。
🧠 用户提示
placeholder提供输入示例或格式说明,提升用户体验。- 将用户当作“新手”设计,增强表单可读性。
♿ 无障碍访问(Accessibility)
- 使用
<label for="id">与<input id="id">关联标签和输入框。 - 支持屏幕阅读器,符合大厂对无障碍访问的标准要求。
🔌 阻止默认提交行为
document.getElementById('myForm').addEventListener('submit', function(e) {
e.preventDefault(); // 阻止表单跳转到action页面
// 执行后续逻辑,如发送API请求
});
- 提高前端应用的可玩性
我们就快速搭建了这样一个页面:
表单数据处理
1. AIGC 与 LLM 的本质理解
AIGC(AI Generated Content) 是指利用人工智能生成内容的技术。其核心是 LLM(Large Language Model) ,例如 OpenAI 的 GPT 系列、阿里通义千问等。
工作流程:
前端界面 → API 请求 → LLM 模型 → 返回结果 → 渲染展示
将用户输入的表单数据进行获取封装成一个prompt
const appName = this["title"].value;
// console.log(appName);
const appDesc = this["desc"].value;
// prompt
const prompt = `
你是一个互联网大厂的设计师,需要设计一个移动应用的logo。
应用名称为${appName},
描述为${appDesc}。
设计一个高端、大气、上档次的logo。
请确保设计方案适用于移动应用图标 (App Icon)。
`
在Apifox中完成请求头、请求体等各部分的参数配置
调用 OpenAI 接口
fetch('https://api.agicto.cn/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer 填写自己的apikey',
'Content-Type': 'application/json'
},
body:JSON.stringify({
model: "dall-e-3",
prompt,
n: 1,
size: "1024x1024"
})
})
.then(response => response.json())
.then(data => {
console.log(data);
const img = document.createElement('img');
img.src = data.data[0].url;
img.onload = function() {
document.getElementById('logo').appendChild(img);
}
})
.catch((error) => {
console.error('Error:', error);
});
这样我们最终就能在页面上得到一个想要的图片logo了
工具链介绍
| 工具 | 用途 |
|---|---|
| Apifox | API调试与文档管理,替代Postman,支持Mock数据 |
| DALL·E 3 | 文生图模型,可用于生成博客配图或Bot图标 |
| Coze | Bot开发平台,集成LLM能力,快速构建聊天机器人 |