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

Datawhale AI夏令营 MCP初体验——简历小助手

学习一下用streamlit快速开发界面

简单做个个人信息页面

def create_personal_info_page():"""个人信息页面"""st.header("👤 个人信息")# 简历选择或创建if not st.session_state.resumes:st.info("📝 请先创建一份新简历")with st.form("create_resume"):st.subheader("创建新简历")col1, col2 = st.columns(2)with col1:name = st.text_input("姓名 *")email = st.text_input("邮箱 *")with col2:phone = st.text_input("电话 *")address = st.text_input("地址")if st.form_submit_button("创建简历", type="primary"):if name and email and phone:resume_id = f"{name.replace(' ', '_').lower()}_{datetime.now().strftime('%Y%m%d_%H%M%S')}"st.session_state.resumes[resume_id] = {'personal_info': {'name': name,'email': email,'phone': phone,'address': address,'summary': '','linkedin': '','github': ''},'work_experiences': [],'project_experiences': [],'internship_experiences': []}st.session_state.current_resume_id = resume_idst.success(f"✅ 简历创建成功!ID: {resume_id}")st.rerun()else:st.error("❌ 请填写所有必填字段")else:# 简历选择resume_options = list(st.session_state.resumes.keys())current_resume = st.selectbox("选择要编辑的简历",resume_options,index=resume_options.index(st.session_state.current_resume_id) if st.session_state.current_resume_id in resume_options else 0)st.session_state.current_resume_id = current_resume# 个人信息编辑表单resume_data = st.session_state.resumes[current_resume]personal_info = resume_data.get('personal_info', {})with st.form("personal_info_form"):st.subheader("📝 编辑个人信息")col1, col2 = st.columns(2)with col1:name = st.text_input("姓名 *", value=personal_info.get('name', ''))email = st.text_input("邮箱 *", value=personal_info.get('email', ''))linkedin = st.text_input("LinkedIn", value=personal_info.get('linkedin', ''))with col2:phone = st.text_input("电话 *", value=personal_info.get('phone', ''))address = st.text_input("地址", value=personal_info.get('address', ''))github = st.text_input("GitHub", value=personal_info.get('github', ''))summary = st.text_area("个人简介", value=personal_info.get('summary', ''), height=100)if st.form_submit_button("💾 保存个人信息", type="primary"):if name and email and phone:st.session_state.resumes[current_resume]['personal_info'] = {'name': name,'email': email,'phone': phone,'address': address,'summary': summary,'linkedin': linkedin,'github': github}st.success("✅ 个人信息保存成功!")else:st.error("❌ 请填写所有必填字段")

在魔搭社区写好app.py后部署到MCP即可

http://www.dtcms.com/a/275754.html

相关文章:

  • DeepSeek-Qwen蒸馏模型解析
  • 苍穹外卖-day06
  • 自助空间系统迭代历程|自助门店运营系统全新升级
  • AI炼丹日志-30-新发布【1T 万亿】参数量大模型!Kimi‑K2开源大模型解读与实践
  • 电子电气架构 --- ECU存储与计算资源冗余设计规范
  • 实习内容总结
  • 笔记/了解未来:财务建模与预测
  • 系统思考助力转型
  • Git企业级开发(最终篇)
  • 【PTA数据结构 | C语言版】车厢重排
  • JDBC 事务控制详解:保障数据安全的完整指南
  • ​Windows API 介绍及核心函数分类表
  • 使用langgraph 构建RAG 智能问答代理
  • Kotlin文件
  • 【GESP】C++ 2025年6月一级考试-客观题真题解析
  • 小学家长和老师最喜欢的出题神器!
  • 大模型量化相关
  • 二分法寻找无序序列的峰值
  • 【Scratch】从入门到放弃(五):指令大全-运算、变量、自制积木
  • 第14次课 认识图 A
  • 一分钟快速了解Apache
  • 阿里开源AI大模型ThinkSound如何为视频配上灵魂之声
  • 分层架构的C++高并发内存池性能优化
  • 【PTA数据结构 | C语言版】出栈序列的合法性
  • Paimon Lookup 哈希文件和Sort文件选择
  • 粒子滤波|粒子滤波的相关算法理论介绍
  • el-tree 懒加载 loadNode
  • Vue》》总结
  • Flutter、React Native、Uni-App 的比较与分析
  • Redis分布式锁面试笔记