当前位置: 首页 > article >正文

不写一行代码,通义灵码 5 分钟“手撕”年会抽奖程序

年会中的抽奖环节不可或缺,但每年为了选择合适的抽奖小程序,团队往往需要投入大量时间和精力。然而,抽奖结束后,参与者通常只记得自己是否中奖,其他细节多被遗忘。在 AI 技术日益成熟的今天,如何打造一个既高效又有技术含量的抽奖应用呢?今天,就让我们跟随通义灵码,仅用 5 分钟现场手撕一个抽奖应用吧!

第一步

准备好工具和文件

1)下载安装 IDE 工具和 AI 编码插件

在电脑上下载安装一个本地 IDE,参考通义灵码下载安装链接 [ 1] ,下载安装后在侧边导航上点击扩展
,搜索通义灵码(TONGYI Lingma)安装插件。重启 IDE 成功后登录阿里云账号,就可以开始 AI 编码啦。

2)创建一个代码文件,命名为“lingma_reward”,并把抽奖页面封面图命名为“底图.jpg”放进文件中,如果要自己设计图片素材,请确保图片尺寸:1400x800,图片命名为“底图.jpg”。

第二步

给通义灵码提需求

打开通义灵码问答对话框,输入你的抽奖应用需求 prompt:

请帮我用Python创建一个图形化抽奖系统,具体要求如下:

  1. 技术要求:
  • 使用tkinter构建GUI界面
  • 使用PIL库处理背景图片
  • 程序需要面向对象设计,创建LotterySystem类
  1. 界面布局:
  • 窗口大小:1400x800
  • 支持背景图片(命名为"lingma_reward/底图.jpg")
  • 主体内容区域居中,大小为“550x450”,并禁止自动调整大小。bg设置为<250,250,250>。
  • 按钮背景设置需从图片中读取,按钮上的字体颜色设置为黑色加粗
  1. 核心功能模块:
  • 参与者初始化功能:
  • 输入框用于设置总人数
  • 基于关键词生成参与者名单
  • 关键词包括:推理、部署、应用开发、AI基础设施、百炼、PAI、软硬协同、AI势能、开源自建、API调用;
  • 抽奖编号(请务必注意):上述关键词共10组,每组包含30个,因此共计300个抽奖名额。但是现场人数可能没有300人,请根据设置的总人数进行配置,输入大概人数,程序自动进行抽奖池编号生成。例如,输入10人,抽奖池里只有[推理1,推理2,…推理10];输入70人,抽奖池里包括[推理1-30,部署1-30,应用开发1-10]。因此,需要根据我输入的大概人数设置抽奖编号池。
  • 抽奖功能:
  • 开始抽奖按钮(大小为80x40,抽奖按钮居中使用黑色加粗字体显示“开始抽奖”)
  • 停止抽奖按钮(大小为80x40,抽奖按钮居中使用黑色加粗字体显示“停止抽奖”)
  • 动态展示抽奖过程(随机滚动效果)
  • 显示当前抽中者(一次性抽取3人)
  • 记录并展示历史获奖者(大小为800x100)
  1. 界面元素细节:
  • 标题:通义灵码抽奖系统
  • 字体要求:主要使用Arial字体
  • 按钮样式:灰色背景
  • 显示区域要求:
  • 大号字体显示抽奖结果
  • 历史记录使用文本框展示
  1. 交互逻辑:
  • 必须先初始化参与者才能开始抽奖
  • 抽奖过程中开始按钮禁用,停止按钮启用
  • 停止后自动记录获奖者并从参与者名单中删除
  • 包含适当的错误处理和提示信息

请一次性生成完整的Python代码,确保程序运行流畅,不要引用没有定义的函数或变量,保持界面美观,并包含必要的注释说明。

第三步

通义灵码生成抽奖代码

生成完代码后,点击代码的右上角“新建文件”命名为“game2.py”

第四步

本地运行应用代码

点击运行代码按钮,如下图:

查看生成的页面,输入要参与抽奖人数等信息,开始测试下抽奖程序吧!

备注: 如果生成的代码在本地运行时候报错,估计是相关依赖和环境缺失导致,可以把报错信息发给通义灵码,让灵码告诉你如何处理。

第五步

如果要将这个抽奖程序变成一个长期复用的抽奖应用,你可以选择部署到阿里云 SAE

1.为了便于抽奖程序部署到阿里云 SAE ,我们需要对 prompt 进行一些微调,只需替换第一条即可,其他的复用上文,替换内容如下:

1.技术要求:

  • 必须使用 Flask 框架和Werkzeug构建一个完整的Web服务,确保该服务能够支持公网的HTTP访问。
  • 在项目根目录下生成一个名为 requirements.txt 的文件,列出所有项目依赖的Python包及其版本。
  • 除了requirements.txt 文件以外,所有项目文件都必须放到根目录下的 app 目录下
  • 严格按照如下目录结构:

app/

├── app.py

├── static/

│ └── images/

│ └── 底图.jpg

├── templates/

│ └── index.html

requirements.txt

  • 程序需要面向对象设计,创建LotterySystem类

2.按照 SAE 的标准进行打包,这次我们已经在 prompt 里添加了相应的要求,所以通义灵码给出的目录结构已经是正确的了。(参考:SAE 打包说明 [ 2]

  1. 接下来进入部署环节,首先进入 SAE 控制台 [ 3] ,如果是新客则按照提示开通即可。开通后进入应用列表,选择创建应用

  1. 填写基本信息,并选择设置代码包部署

  1. 选择 python 语言,并上传 ZIP 包

  1. 确定后,点击下一步:高级设置

  1. 按照通义灵码给的提示配置启动命令,然后点击创建应用

  1. 稍作等待,等执行提示消失,则说明完成部署

  1. 最后,给应用配置公网访问地址,点击添加公网 CLB 访问

  1. 选择按使用量计费,并填写 HTTP 端口和容器端口,点击确定,如下

  1. 稍作等待,出现 IP 地址则说明已完成添加

  1. 将 IP 地址复制到浏览器,就可以访问抽奖程序啦

相关链接:

[1] 下载安装链接

https://tongyi.aliyun.com/lingma/download

[2] SAE 打包说明

<https://help.aliyun.com/zh/sae/serverless-app-engine-upgrade/user-guide/python-zip-packaging-instructions-2-0

[3] SAE> 控制台

https://saenext.console.aliyun.com/


http://www.kler.cn/a/450208.html

相关文章:

  • layui动态拼接生成下拉框验证必填项失效问题
  • C/C++圣诞树
  • 深入了解蓝牙Profile类型与设备的对应关系
  • 各种电机原理介绍
  • Android使用PorterDuffXfermode模式PorterDuff.Mode.SRC_OUT橡皮擦实现“刮刮乐”效果,Kotlin(2)
  • Python日常使用的自动化脚本
  • 新纪天工 开物焕彩:重大科技成就发布会参会感
  • 【Ubuntu 20.04】notepad++的安装与汉化
  • Pytorch | 利用FGSM针对CIFAR10上的ResNet分类器进行对抗攻击
  • 【汇编语言】端口 —— 「从端口到时间:一文了解CMOS RAM与汇编指令的交汇」
  • 一文解释清楚OpenHarmony面向全场景的分布式操作系统
  • Java重要面试名词整理(一):MySQLJVMTomcat
  • RunCam WiFiLink连接手机图传测试
  • 深度剖析CRM系统:什么是CRM系统?有什么用?企业该如何选择?
  • 【读书笔记】《论语别裁》爱与罪
  • (补)算法刷题Day25:BM62 斐波那契数列
  • Python结合一些常见的自然语言处理库来实现根据提示生成作文
  • 基于单片机的噪音检测系统(论文+源码)
  • nodejs创建ws服务器,前端浏览器用websocket接收信息和发送信息给服务端
  • LeetCode 206. 反转链表 (C++实现)
  • Yolo11改进策略:Block改进|使用FastVit的RepMixerBlock改进Yolo11,重参数重构助力Yolo11涨点(全网首发)
  • 系统思考—全局思维
  • 深度学习-77-大模型量化之Post Training Quantization训练后量化PTQ
  • 嵌入式硬件产品:CC254x 蓝牙升级
  • 机器学习之 KNN 算法
  • Axios 取消上一次重复请求