基于docker启动步骤如下
- 在有docker的linux环境下,进入
/scripts
目录,执行make
命令即可 make clean
命令可以清除创建的容器- windows系统推荐使用wsl
手动部署需要如下步骤
- 在本地部署一个mongoDB
- 并将
./workflow-backend/biz/infra/consts/database.py
文件下相应的配置修改为本地配置 - 本地配置python环境
pip install ./workflow-backend/biz/requirements.txt
下载需要的依赖- 通过python命令运行
python app.py
文件 python /scripts/case.py
通过脚步生成样例- 本地配置node环境
npm run dev
启动前端项目
后端项目运行在5000端口处 前端项目预选在3000端口处
在常规招聘流程中,HR需要逐个浏览简历,判断求职者与招聘需求是否匹配,如果匹配则还需要找出邮箱并发送面试通知。这个过程通常重复且枯燥,可以通过工作流来自动化。
整个流程分为四个主要步骤:
- 简历分析:分析应聘者的简历,提取关键信息,如姓名、邮箱、优点和缺点。
- 条件判断:根据分析结果,判断应聘者是否符合前端开发职位的要求,输出是否通过一面。
- 通过者名单生成:输出通过一面筛选的应聘者名单,格式为JSON数组。
- 邮件通知:根据通过者名单,自动发送邮件通知给通过一面筛选的应聘者。
主要步骤:
- Analyser - HR:从简历中提取出各个求职者的优势与缺陷
- Judge - Filter:根据求职者的优缺点,判断是否通过
- Analyser - Extractor:提取出通过一面的求职者信息
- Handler - Communicant:邮件通知各个通过面试的求职者。
输入样例:
姓名: 张伟
联系信息:
电话: 138-1234-5678
邮箱: [email protected]
教育背景:
学士学位: 计算机科学与技术,野鸡大学 (2015 - 2019)
工作经验:
公司: 百度
职位: 实习开发工程师 (2020 - 2021)
职责:
参与公司内部项目的开发,主要负责后端接口的设计与实现。
学习并应用最新的开发技术和工具,提高开发效率。
技能:
编程语言: Java
框架: Spring Boot
数据库: MySQL, PostgreSQL, MongoDB
工具: Git, Docker
项目经验:
项目名称: 在线教育平台
角色: 后端开发工程师
描述: 负责平台后端服务的设计与实现,支持百万级用户同时在线学习。
技术栈: Java, Spring Boot, MySQL, Redis
岗位: 高级软件工程师
期望薪资: 月薪 30k - 40k
工作地点: 北京
自我评价:
五年软件开发经验,精通多种编程语言和技术框架,具备良好的团队合作和沟通能力。
有多个大型项目的开发经验,能够独立解决问题,适应快节奏的工作环境。
姓名: 李华
联系信息:
电话: 139-9876-5432
邮箱: [email protected]
教育背景:
学士学位: 计算机科学与技术,浙江大学 (2014 - 2018)
硕士学位: 人机交互,复旦大学 (2018 - 2020)
工作经验:
公司: 腾讯
职位: 前端开发工程师 (2020 - 至今)
职责:
参与多个大型项目的前端开发,负责前端架构的设计与实现。
优化前端性能,提升用户体验。
与后端团队紧密合作,确保前后端接口的高效对接。
使用最新的前端技术和工具,提升开发效率和代码质量。
撰写和维护技术文档,指导团队成员解决技术难题。
公司: 腾讯
职位: 实习开发工程师 (2019 - 2020)
职责:
参与公司内部项目和产品的前端开发,主要负责用户界面的设计与实现。
学习并应用最新的前端技术和框架,提升开发效率。
与设计、后端团队密切合作,确保项目按时高质量交付。
技能证书:
Google Certified Professional - Cloud Developer
AWS Certified Developer - Associate
技能:
编程语言: JavaScript, TypeScript, HTML, CSS
框架: React, Vue.js, Angular
工具: Webpack, Babel, ESLint, Prettier
版本控制: Git
设计工具: Figma, Sketch
项目经验:
项目名称: 社交媒体平台
角色: 前端开发工程师
描述: 负责平台前端架构的设计与实现,支持百万级用户同时在线互动。
技术栈: React, TypeScript, Redux, Webpack, Node.js
项目名称: 企业级管理平台
角色: 前端技术负责人
描述: 领导团队完成项目的前端开发与上线,实现了企业的高效管理和用户体验的提升。
技术栈: Vue.js, Vuex, Vite, GraphQL
求职意向:
岗位: 高级前端开发工程师
期望薪资: 月薪 30k - 40k
工作地点: 北京
自我评价:
五年前端开发经验,精通多种前端框架和技术工具,具备良好的团队合作和沟通能力。
有多个大型项目的开发经验,能够独立解决问题,适应快节奏的工作环境。
注重用户体验,追求技术的持续创新和自我提升。
邮件发送代码参考
import json
import smtplib
import string
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
SUBJECT = '[面试通知] 一面通过'
SENDER = '[email protected]'
AUTHORIZATION_CODE = 'godhxkrehrewhdjf'
SMTP_SERVER = 'smtp.qq.com'
SMTP_PORT = 465
# 创建邮件
candidates = json.loads(text)
result = ''
for candidate in candidates:
message = MIMEMultipart()
message['From'] = SENDER
message['To'] = candidate['email']
message['Subject'] = SUBJECT
# 邮件正文
body = candidate['name'] + "同学,你好!恭喜通过我司第一轮面试,请耐心等待后续面试通知"
message.attach(MIMEText(body, 'plain'))
# 连接到SMTP服务器并发送邮件
try:
server = smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT) # 链接SMTP服务器
server.login(SENDER, AUTHORIZATION_CODE) # 登录SMTP服务器
content = message.as_string()
server.sendmail(SENDER, candidate['email'], content)
server.quit()
result += candidate['name'] + ':' + candidate['email'] + '通知邮件发送成功'
except Exception as e:
result += candidate['name'] + ':' + candidate['email'] + '通知邮件发送失败'
在教学过程中,教师需要根据学生的知识掌握情况为学生筛 选定制学生需要的题目以供学生巩固薄弱知识点。使用该工作流能根据学生提供的题目,给出正确的解答,然后分析出涉及的知识点并举一反三给出类似的题目用于巩固知识
整个流程分为三个主要步骤:
- 题目解答:按照Python老师的口味解答题目,分析解题过程并给出注释
- 知识点分析:分析给出题目的知识点
- 题目生成:根据分析得到的知识点,为学生生成新的题目,提供输入输出样例,解题提示和参考答案
主要步骤:
- Analyser - Answer:分析题目,给出该题的正确答案
- Analyser - Teacher:分析该题中涉及到的各个知识点
- Analyser - Questioner:根据涉及到的知识点,给出类似的题目,用于巩固
输入样例:
[NOIP2005 普及组] 采药
题目描述
辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”
如果你是辰辰,你能完成这个任务吗?
输入格式
第一行有 $2$ 个整数 $T$($1 \le T \le 1000$)和 $M$($1 \le M \le 100$),用一个空格隔开,$T$ 代表总共能够用来采药的时间,$M$ 代表山洞里的草药的数目。
接下来的 $M$ 行每行包括两个在 $1$ 到 $100$ 之间(包括 $1$ 和 $100$)的整数,分别表示采摘某株草药的时间和这株草药的价值。
输出格式
输出在规定的时间内可以采到的草药的最大总价值。
样例 #1
样例输入 #1
70 3
71 100
69 1
1 2
样例输出 #1
3
【数据范围】
对于 $30\%$ 的数据,$M \le 10$;
对于全部的数据,$M \le 100$。
【题目来源】
NOIP 2005 普及组第三题
该工作流能批改小朋友写的作文,并根据小朋友写的作文,分析故事的主要人物、情节,分许需要的风格,生成对应的绘本图片,能完成装订校刊等方便小朋友教学的功能
整个流程分为四个主要步骤:
- 作文批改:批改作文并提供修改意见
- 作文概述:提炼小朋友写的作文的内容要点
- 画风分析:根据所提炼的作文概述,分析这篇作文的文字风格和内容适合用什么样的画风来展现
- 绘画:根据分析的画风与内容梗概,绘制符合的绘本图片
主要步骤:
- Analyser - Teacher:批改作文并提供修改意见
- Analyser - Story:分析故事,梳理主要的人物、情节
- Analyser - Style:分析这个故事需要的风格
- Painter - Illustrator:根据人物、情节、风格绘制对应的图片
输入样例:
童年就像一个五彩斑斓的盒子,里面装满了许许多多五彩缤纷的珍珠。有些已经随着岁月的流失而渐渐褪色,有些却依然光彩照人,使我难以忘怀。
一年前的某一天,妈妈带着我和领居家的小朋友一起去做蛋糕。我们一路说说笑笑,不一会儿就到达了目的地。
工作人员给我们了两块香喷喷的蛋糕,让我们给蛋糕抹上奶油。我拿着刷板,呆呆地坐在那里,不知道该从哪儿开始刷。妈妈看我那不知所措的样子,立马就
急了。她说:“唉,真笨!看好了,我来给你演示一下。”说完,便飞快地用刷板抹起了奶油。我专心致志地观察妈妈是怎样抹奶油的。
看了一会儿,我恍然大悟。抹奶油也不过如此嘛!我自告奋勇地让妈妈把刷板递给我,决定自己尝试一下。在妈妈的指导下,我成功地将奶油刷好了。
刷完了奶油,就应该给蛋糕做装饰了。我拿起了挤彩色奶油的工具,准备做一个多口味的彩色蛋糕。我想涂一朵小花,可手就像不听使唤似的,在漫无目的地乱涂。
再看看邻居家的小孩吧,他已经涂上了好几朵小花,都准备放水果了。我只好向妈妈求助。
妈妈看了我的“杰作”后,先是皱了一下眉头,然后叹了一口气,无奈地说:“这我可帮不了你,你自己随便涂涂吧。”听了妈妈的话,我失望极了,只好垂头丧气地乱涂。
虽然我的蛋糕做得很不理想,但工作人员说,我的蛋糕与众不同。听了这话,我的心情好了一些。
这件事虽然已经过去了一段时间,但我从中明白了:做什么事都要坚持下去,不能半途而废。只有坚持不懈,并且相信自己,那么最后一定能把事做好。