【用AI写周报,“卷死”同事】打造一款自动生成周报的微信小程序

文章目录

  • 前言
  • 步骤1:创建账号
  • 步骤2:创建一个微信小程序并配置API。
  • 步骤3:在微信开发者工具中创建一个新的微信小程序项目
  • 步骤4:创建ChatGPT API云函数
  • 步骤5:创建UI界面
  • 步骤6:创建发送邮件的云函数
  • 步骤7:部署并测试
  • 总结
  • 写在最后

在这里插入图片描述

✍创作者:全栈弄潮儿
🏡 个人主页: 全栈弄潮儿的个人主页
🏙️ 个人社区,欢迎你的加入:全栈弄潮儿的个人社区
📙 专栏地址:小程序从入门到精通

前言

在这里插入图片描述

作为一名打工人,每天提交日报、每周周报,成为公司考核的要求。可是作为一名程序猿,不知道大家有没有像我一样,下班之后都要绞尽脑汁去思考如何提交一份工作内容丰富的日报?而且想写出一份内容丰富、情文并茂的日报都会消耗大量时间。

今天就带大家基于OpenAI开发一个生成周报的微信小程序,只需通过AI就可以帮助大家在公司卷出新高度。

下面是实现微信小程序接入ChatGPT,根据前端、后端、设计师、产品、架构师等职位实现一个周报生成器的具体步骤和示例代码。

步骤1:创建账号

创建一个ChatGPT账号并获取API密钥。您需要访问ChatGPT官网注册一个账号,并在控制台中创建一个API密钥。

步骤2:创建一个微信小程序并配置API。

您需要访问微信公众平台创建一个小程序,并在小程序后台中配置ChatGPT API密钥。具体步骤如下:

在小程序后台中打开开发设置,将服务端口配置为443,并在“服务器域名”中添加对应的服务域名。

步骤3:在微信开发者工具中创建一个新的微信小程序项目

首先,您需要在微信开发者工具中创建一个新的微信小程序项目。然后,您可以使用微信开发者工具中的代码编辑器创建UI界面和逻辑。

步骤4:创建ChatGPT API云函数

在微信小程序中,您可以使用云开发来创建云函数。首先,您需要打开微信开发者工具中的云开发控制台,然后单击“函数服务”>“新建函数”。接下来,您可以选择Node.js作为运行环境,并输入以下代码:

const axios = require('axios');exports.main = async (event) => {const { text, model } = event;const headers = {'Content-Type': 'application/json','Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,};const data = {'model': model,'prompt': text,'temperature': 0.5,'max_tokens': 256,'stop': ['\n'],};const response = await axios.post('https://api.openai.com/v1/engines/davinci-codex/completions', data, { headers });return response.data.choices[0].text.trim();
};

这是调用ChatGPT API的云函数代码。请确保将OPENAI_API_KEY替换为您自己的API密钥。

步骤5:创建UI界面

在微信小程序中,您可以使用WXML、WXSS和JavaScript来创建UI界面。以下是一个简单的示例,用于在前端页面中选择职位和输入工作内容:

wxml

<view class="container"><view class="title">请选择您的职位:</view><view class="position-buttons"><button wx:for="{{positions}}" wx:key="{{item}}" bindtap="selectPosition">{{item}}</button></view><view wx:if="{{selectedPosition}}"><view class="title">本周工作:</view><textarea bindinput="onWorkInput"></textarea><view class="title">下周计划:</view><textarea bindinput="onPlanInput"></textarea><view class="title">问题与困难:</view><textarea bindinput="onProblemInput"></textarea><view class="title">周报预览:</view><view class="report">{{report}}</view><button class="send-button" bindtap="sendReport">发送到邮箱</button></view>
</view>

javascript

Page({data: {positions: ['前端工程师', '后端工程师', '设计师', '产品经理', '测试工程师', '架构师'],selectedPosition: '',workContent: '',planContent: '',problemContent: '',report: '',},selectPosition(e) {this.setData({ selectedPosition: e.currentTarget.dataset.position });},onWorkInput(e) {this.setData({ workContent: e.detail.value });this.generateReport();},onPlanInput(e) {this.setData({ planContent: e.detail.value });this.generateReport();},onProblemInput(e) {this.setData({ problemContent: e.detail.value });this.generateReport();},generateReport() {const { selectedPosition, workContent, planContent, problemContent } = this.data;if (!selectedPosition || !workContent || !planContent || !problemContent) return;wx.cloud.callFunction({name: 'chatgpt',data: {text: `${selectedPosition}本周工作:${workContent}\n下周计划:${planContent}\n问题与困难:${problemContent}`,model: 'davinci-codex-002',},success: (res) => {this.setData({ report: res.result });},fail: console.error,});},sendReport() {const { report } = this.data;if (!report) return;wx.cloud.callFunction({name: 'sendReport',data: {report,},success: () => {wx.showToast({title: '发送成功',icon: 'success',});},fail: console.error,});},
});

步骤6:创建发送邮件的云函数

您可以使用第三方库如nodemailer来创建一个发送邮件的云函数。以下是一个简单的示例:

const nodemailer = require('nodemailer');exports.main = async (event) => {const { report } = event;const transporter = nodemailer.createTransport({host: 'smtp.ethereal.email',port: 587,auth: {user: process.env.EMAIL_USER,pass: process.env.EMAIL_PASSWORD,},});const info = await transporter.sendMail({from: 'Weekly Report Generator <noreply@example.com>',to: process.env.EMAIL_TO,subject: 'Weekly Report',text: report,});return info.messageId;
};

请确保将EMAIL_USER、EMAIL_PASSWORD和EMAIL_TO替换为您自己的信息。

步骤7:部署并测试

您可以在微信开发者工具中使用“上传并部署”功能来部署您的小程序。

自测:选择您的职位、填写工作内容、下周计划和问题与困难,然后点击“生成周报”按钮,等待程序返回生成的周报。如果一切正常,您将看到一个包含周报的文本框。然后,您可以点击“发送周报”按钮,程序将使用您的邮箱发送周报。

总结

代码实现中还有一些细节需要注意,例如错误处理和数据验证。您可以根据您的需求进行修改和完善。

这是一个比较完整的实现,希望对您有所帮助!

写在最后

✨原创不易,希望各位大佬多多支持。

👍点赞,你的认可是我创作的动力。

⭐️收藏,感谢你对本文的喜欢。

✏️评论,你的反馈是我进步的财富。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/3360.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ChatGPT】帮你写周报,这是实在太干货了,老板都看不下去了

说到写周报不少小伙伴会觉得是一件头疼的事情&#xff0c;一周摸鱼了不到7天&#xff0c;周报咋写&#xff0c;掰指头都能数清的事在邮件中更是寥寥数字&#xff0c;自己看着不舒服&#xff0c;老板看着更是头大&#xff0c;要不要搞掉他的想法油然而生&#xff1b; ChatGPT可谓…

职场神器:只需三分钟,让ChatGPT帮我写周报

说到周报&#xff0c;尽管周报的目的是为了提高团队合作和项目进展的透明度&#xff0c;但很多职场员工都觉得是件麻烦事。 本来忙碌了一周到周五的下午&#xff0c;工作完成了&#xff0c;可以下班去吃饭&#xff0c;去嗨皮了&#xff0c;结果临走前还得写一份“每周工作报告…

提升效率,使用ChatGPT的轻松撰写日报和周报

日报和周报是办公生活中不可或缺的部分&#xff0c;它们有助于记录工作进展、分享关键信息和与团队保持沟通。但是&#xff0c;有时写作这些报告可能会变得繁琐和耗时。在本文中&#xff0c;我们将介绍如何利用ChatGPT&#xff0c;一个强大的自然语言处理模型&#xff0c;提高写…

【ChatGPT进阶】如何使用ChatGPT写周报?

作为打工人&#xff0c;真的很讨厌写周报。每次都要绞尽脑汁的想措辞&#xff0c;既要总结工作内容&#xff0c;还要进行润色&#xff0c;要突出自己的能力和工作结果&#xff0c;还要弱化做的不好的地方。每一个字都要消耗一大堆的脑细胞。 Chatgpt的出现真的是职场人的福音&…

ChatGPT 使用 拓展资料:大模型训练为什么这么难

ChatGPT 使用 拓展资料:大模型训练为什么这么难 一些LLMs的省内存方法 https://zhuanlan.zhihu.com/p/616858352

如何训练个人的ChatGpt4

如何在自己的计算机上安装类似 ChatGPT 的个人 AI 并在没有互联网的情况下运行它 个人 AI 的“第一台 PC”时刻 这是个人AI的“第一台PC”时刻&#xff0c;随之而来的是限制&#xff0c;就像在车库里生产第一台Apple 1一样。你是先驱。今天&#xff0c;任何人都可以使用私人和…

ChatGPT 拓展资料:ChatGPT 和预训练模型实战课

ChatGPT 拓展资料:ChatGPT 和预训练模型实战课

ChatGPT的前世今生:预训练模型成长史

Datawhale干货 作者&#xff1a;钱博文&#xff0c;中国移动云能力中心 前言 近年来&#xff0c;随着各大厂商的激烈角逐&#xff0c;预训练模型&#xff08;The Pretrained Foundation Models &#xff0c;PFMs&#xff09;的发展可谓百花争鸣&#xff0c;谁都想在这场没有硝…

开箱即用的ChatGPT替代模型,还可训练自己数据

一、普遍关注是什么&#xff1f; OpenAI 是第一个在该领域取得重大进展的公司&#xff0c;并且使围绕其服务构建抽象变得更加容易。然而&#xff0c;便利性带来了集中化、通过中介的成本、数据隐私和版权问题。 而数据主权和治理是这些新的LLM服务提供商如何处理商业秘密或敏…

玩转#ChatGPT之“用Chat GPT 做出行攻略”

到了五一假期&#xff0c;许多人要规划旅游行程&#xff0c;但却为此烦恼花费很多时间做功课。现在&#xff0c;您可以通过Chat GPT来安排旅游行程。只需告诉GPT您的日期和目的地&#xff0c;便能在30秒内生成不错的行程攻略。同时您还可以添加特定条件&#xff0c;例如前几天想…

Geoffrey Hinton获得时间检验奖;AI预测世界杯荷兰夺冠;Galactica不靠谱,ChatGPT又如何……...

这一周&#xff0c;AI业界又有哪些新鲜事&#xff1f; AI人物 Geoffrey Hinton&#xff1a;Forward-Forward新型神经网络更接近大脑运作 近日&#xff0c;深度学习之父、图灵奖得主 Geoffrey Hinton 在 NeurIPS 2022 会议上发表演讲。之所以获得组委会的邀约&#xff0c;主要在…

使用chatgpt一分钟帮你实现思维导图

前言 本篇基础篇课程&#xff0c;实操起来很简单&#xff0c;但却非常的实用。利用好这个功能&#xff0c;工作效率或能提升10倍&#xff01; 本篇内容的主题&#xff1a;利用ChatGPT&#xff0c;一分钟帮你实现详尽的思维导图。 创作内容大纲 格式转化 结合Xmind 创作内容…

领导催我优化SQL语句,我求助了ChatGPT。这是ChatGPT给出的建议,你们觉得靠谱吗

作为一个程序员&#xff0c;无论在面试还是工作中&#xff0c;优化SQL都是绕不过去的难题。 为啥&#xff1f;工作之后才会明白&#xff0c;随着公司的业务量增多&#xff0c;SQL的执行效率对程系统运行效率的影响逐渐增大&#xff0c;相对于改造代码&#xff0c;优化SQL语句是…

用ChatGPT去面试简直开挂

引语&#xff1a;大家好我们是权知星球&#xff0c;开启你独特的知识星际之旅 请注意&#xff01;这个男人正在进行一场新员工面试。然而&#xff0c;他并不知晓&#xff0c;与他面对面坐着的那个人所作出的回答&#xff0c;全都是由人工智能所生成的&#xff01; 面试官提出问…

EditText 实时显示输入的字数与最大输入限制长度

废话不多说了&#xff0c;带来一个简单的EditText&#xff0c;满足一般的需求。 c editText.addTextChangedListener(new TextWatcher() {//记录输入的文字private CharSequence wordNum;private int selectionStart;private int selectionEnd;Overridepublic void beforeTextC…

QQ日志最多添加几条HTML,信息字数超出限制 qq对话框里显示字数超出限制怎么办...

短信息有字数限制的&#xff0c;发送一条短信最多七十个字。 用户每次能接收和发送短信的字符数&#xff0c;是160个英文或数字字符&#xff0c;或者70个中文字符。 其实你每次发短信都是发到了SIM卡运营商那里&#xff0c;而后是有运营商转发给你要发送的人。 QQ信息显示超出字…

textarea 输入字数限制,并显示可输入字符

效果 相关HTML <html><head><title>测试</title><meta charset"utf-8"><script type"text/javascript" src"http://code.jquery.com/jquery-latest.js"></script> <script type"text/javasc…

EditText字数限制

参考&#xff1a;http://mingkg21.iteye.com/blog/480963 EditText可以在XML和代码中设置字数限制。。 在XML中&#xff1a; Xml代码 android:maxLength“50” 代码中&#xff1a; Java代码 editText.setFilters(new InputFilter[]{new InputFilter.LengthFilter(100)});…

EditText限制输入的字符数并弹出Toast提示字数已达上限

大家对EditText这个控件并不陌生&#xff0c;它是一个可供我们输入文本内容的输入框。前些日子需要实现这样一个需求&#xff1a;限制EditText中可以输入的最大字符数为6&#xff0c;达到6时&#xff0c;用户每按一次软键盘就弹出一个Toast提示用户&#xff0c;并且无法再输入内…

关于微信小程序textarea组件 输入字数 > 限制字数 的bug

bug形成条件&#xff1a;如下图&#xff0c;当你需要给textarea组件添加一个统计输入字数的功能时&#xff0c;如果在手机上通过复制粘贴达到最大限制字数&#xff0c;这时候继续使用手机上的小键盘输入内容&#xff0c;就会出现输入字数大于限制字数的bug&#xff0c;而多出来…