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

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.xdnf.cn/news/15395.html

相关文章:

  • 2.单例模式
  • 用 Python 将分组文本转为 Excel:以四级词汇为例的实战解析
  • python-while循环
  • 数据标注:AI时代的黄金矿场如何规避法律暗礁
  • K3S滚动发布Jar
  • Windows环境下JS计时器精度差异揭秘
  • 老项目模拟器运行提示Executable Path is a Directory
  • 三步定位 Git Push 403:从日志到解决
  • 技术面试问题总结二
  • SE机制深度解析:从原理到实现
  • React - createPortal
  • blender uv小技巧
  • C++实现二叉树左右子树交换算法
  • JavaSE重点知识
  • 【Spring AOP】什么是AOP?切点、连接点、通知和切面
  • 从0到1搭建个人技术博客:用GitHub Pages+Hexo实现
  • STM32中的RTC(实时时钟)详解
  • 客户资源被挖?营销方案泄露?企业经营信息保护避坑指南
  • YOLOv8
  • Win11怎样进入WinRE恢复环境
  • 介绍几个电机驱动芯片(TC1508S、DRV8848)
  • TensorBoard
  • 【QT】多线程相关教程
  • 【面试八股文】2025最新软件测试面试
  • 股票的k线
  • React useState原理解密:从源码到实战
  • 苍穹外卖-day06
  • JavaScript代码段注入:动态抓取DOM元素的原理与实践
  • 巅峰对决:文心4.5 vs DeepSeek R1 vs 通义Qwen3.0——国产大模型技术路线与场景能力深度横评
  • Python-魔术方法-创建、初始化与销毁-hash-bool-可视化-运算符重载-容器和大小-可调用对象-上下文管理-反射-描述器-二分-学习笔记