diff --git a/pages/index.vue b/pages/index.vue index cd2ba1f..e1f0d15 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -93,6 +93,7 @@ div(class="mt-[60px] grid grid-cols-1 lg:grid-cols-4 xl:grid-cols-5 text-white b ) {{ task.status }} {{ task.progress*100 }}% div.absolute.inset-0.flex.items-end.justify-center.p-6.transition-opacity.bg-gradient-to-t.to-transparent.opacity-0(class="hover:cursor-pointer hover:opacity-100 from-black/90") pre {{ task.prompt }} + pre {{ new_task }} // 右侧参数 aside(class="lg:overflow-y-auto relative z-20 transition-all scrollbar-hide") div(class="px-6 divide-y divide-white/10") @@ -227,9 +228,9 @@ const imageCreate = ref({ // 新任务表单 const new_task = ref({ - model: 'None', // 选择的模型 - prompt: '渲染提示', // 渲染提示词 - exclude: '排除', // 排除词汇 + ckpt: '768-v-ema', // 选择的模型 + prompt: 'A tabby cat, with a fluffy tail, basking in the sun, bright, warm, very cute!', // 渲染提示词 + exclude: 'puppets, death, decay, mess', // 排除词汇 }) @@ -274,7 +275,7 @@ const ModelsShow = (index, model) => { // 切换要使用的模型 const ModelsChange = (model) => { console.log(model) - new_task.value.model = model.name + new_task.value.ckpt = model.name imageCreate.value.models_show = false } @@ -282,7 +283,7 @@ const ModelsChange = (model) => { const ModelsSelect = (index, model) => { console.log(index, model) filters.value[index] = model - new_task.value.model = model.name + new_task.value.ckpt = model.name imageCreate.value.models_show = false } diff --git a/server/api/drawing.ts b/server/api/drawing.ts index a19814d..059fa5b 100644 --- a/server/api/drawing.ts +++ b/server/api/drawing.ts @@ -22,33 +22,31 @@ export default defineEventHandler(async event => { // 添加任务到队列(生成一个32位随机字符串作为任务ID) if (event.node.req.method === 'POST') { - const task = await readBody(event) // 读取body数据到 - task.id = Math.random().toString(36).substring(2, 34) // 生成随机任务ID - task.uid = 1234567890 // 用户ID - task.createdAt = new Date().getTime() // 设定创建时间 - // 验证需要输入的参数 - task.model = 'SD2' // 模型 - task.ckpt = '768-v-ema' // 风格 - task.image = '' // 图片数据(img2img) - task.prompt = '猫猫' // 提示词 - task.remove = '狗狗' // 排除词 - task.number = 1 // 生成数量 - task.w = 512 // 图片宽度 - task.h = 512 // 图片高度 - task.seed = 0 // 随机种子 - task.sampler = 'pndm' // 扩散采样器 - task.prompt_guidance = 0.5 // 提示词权重 - task.quality_details = 25 // 质量和细节(步数) - // 输出参数 - task.status = 'waiting' // 任务状态 - task.progress = 0.00 // 任务进度 - task.data = [] // 生成结果 + const { + model = 'SD2', // 模型 + ckpt = '768-v-ema', // 风格 + image = '', // 图片数据(img2img) + prompt = 'cat', // 提示词 + remove = 'dog', // 排除词 + number = 1, // 生成数量 + w = 512, // 图片宽度 + h = 512, // 图片高度 + seed = 0, // 随机种子 + sampler = 'pndm', // 扩散采样器 + prompt_guidance = 0.5, // 提示词权重 + quality_details = 25, // 质量和细节(步数) + } = await readBody(event) + const id = Math.random().toString(36).substring(2, 34) // 生成随机任务ID + const uid = 1234567890 // 用户ID + const createdAt = new Date().getTime() // 设定创建时间 + const status = 'waiting' // 任务状态 + const progress = 0.00 // 任务进度 + const data:any[] = [] // 生成结果 + const task = { model, ckpt, image, prompt, remove, number, w, h, seed, sampler, prompt_guidance, quality_details, id, uid, createdAt, status, progress, data } console.log('task:', task) - await useStorage().setItem(`task:${task.id}`, task) // 保存任务到内存 - // 筛选出所有的任务(并打印) - let tasks = await useStorage().getKeys().then((keys: any[]) => keys.filter(key => key.startsWith('task:'))) + await useStorage().setItem(`task:${task.id}`, task) // 保存任务到内存 + const tasks = await useStorage().getKeys().then((keys: any[]) => keys.filter(key => key.startsWith('task:'))) console.log('tasks:', tasks) - // 如果无需排队,直接返回结果, 否则返回任务排队状态(预估等待时间) return task }