CareerBot/init_data.py
ln0422 96997daed0 Initial commit: CareerBot full-stack career showcase with AI chatbot
- FastAPI backend with SQLAlchemy ORM and SQLite
- AI chatbot with OpenAI-compatible LLM integration (SSE streaming)
- Admin panel for content management, LLM config, token management
- Anonymous access with 3-question limit, token-based access control
- Recruiter intent detection with admin notification
- Resume generator (JD-based, Markdown to Word export)
- Chinese localized public interface

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 20:36:38 +08:00

174 lines
12 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Seed the database with resume data from Liu Ning's CV."""
import sys
import os
sys.path.insert(0, os.path.dirname(__file__))
from app.database import init_db, SessionLocal
from app.models import (
AdminUser, Profile, Skill, Education, WorkExperience, AccessToken, LLMConfig,
)
from app.routers.auth import hash_password
def seed():
init_db()
db = SessionLocal()
try:
# ── Admin User ──
if not db.query(AdminUser).first():
db.add(AdminUser(
email="ln0422@gmail.com",
password_hash=hash_password("qshs123456"),
))
# ── Profile ──
if not db.query(Profile).first():
db.add(Profile(
name="刘宁",
phone="13910660633",
location="北京市",
birthday="1982.04.22",
party="中共党员",
education_level="硕士研究生",
email="ln0422@gmail.com",
self_summary="工作+教育背景C9名校本硕10余年研发和管理经验1年半商学院驻美半年学习经历。"
"曾在精锐教育集团、元知科技集团担任CTO/研发中心负责人主导AI大模型落地、OMO数字化转型等重大项目。"
"曾任国内顶级咨询公司外聘专家,参与或主导多项传统行业数字化转型、智能化升级的规划和落地实施。"
"擅长技术战略规划、团队建设与数字化变革精通AI与大数据技术在教育、物业、商业等传统领域的落地应用。\n\n"
"技术栈AI大模型多Agent体系架构JavaPython微服务经验",
))
# ── Skills ──
if not db.query(Skill).first():
skills = [
("技术战略能力", "曾主导集团级技术中台建设规划推动AI、大数据与业务深度融合", 1),
("团队管理能力", "具备从0到1组建团队和空降管理经验管理过上百人研发团队形成高效的技术管理体系", 2),
("AI大模型规划与落地", "曾主导多个AI大模型应用的规划和落地", 3),
("传统行业与技术结合", "多年传统行业技术1号位擅长传统行业与技术的结合", 4),
("数字化转型", "曾主导元知集团智能中台数据治理精锐教育OMO升级研发体系升级以及全链路数字化", 5),
("综合素质", "技术扎实且有多年综合管理经验,综合能力强,逻辑思维清晰,擅长快速学习,大局观好", 6),
]
for cat, content, order in skills:
db.add(Skill(category=cat, content=content, sort_order=order))
# ── Education ──
if not db.query(Education).first():
educations = [
("2015.9", "2016.1", "密歇根大学Ross商学院", "MBA", "MBA", "", 1),
("2014.9", "2016.1", "长江商学院", "MBA", "MBA", "", 2),
("2008.9", "2011.6", "中国科学技术大学", "软件工程", "硕士", "", 3),
("2002.9", "2006.6", "浙江大学", "计算机科学与技术", "本科", "", 4),
]
for start, end, school, major, degree, details, order in educations:
db.add(Education(
start_date=start, end_date=end, school=school,
major=major, degree=degree, details=details, sort_order=order,
))
# ── Work Experience ──
if not db.query(WorkExperience).first():
experiences = [
{
"start_date": "2020.1", "end_date": "2025.5",
"company": "元知智能研究院",
"position": "研发中心负责人CTO",
"company_intro": "元知智能研究院隶属于老牌地产集团合生-珠江,是合生-珠江集团科技板块的核心组成部分定位为整个科技板块大脑作为AI技术中台和数据中台汇总科研资源与应用技术向科技板块内其余13个行业板块进行AI、大数据等技术的赋能。",
"responsibilities": "元知研究院经营班子成员主管研发负责研究院所有产品线的产品研发工作。涉及到集团AI与大数据应用技术赋能平台Sophia智慧营销SaaS平台以及基础研发赋能平台MetaX的规划、搭建、维护、迭代以及集团数据中台的搭建。同时任集团产品技术委员会委员对各行业板块的技术产品立项进行评估和指导。\n\n"
"战略规划:结合集团发展战略,规划研究院的大技术中台布局。\n"
"新技术调研和实施持续跟进AI、大数据等领域技术发展趋势推动集团与华为、百度达成深度战略合作。调研大模型和相关技术积极推进业务板块应用接入大模型。\n"
"产品研发与主架构设计负责核心产品线的研发管理和顶层技术框架设计。为公司获取2项专利和数十项软件著作权。\n"
"部门管理从0到1搭建团队搭建起产品技术人员的内部职级体系。",
"achievements": "1. 智能中台Sophia从0到1搭建Sophia平台以云服务模式向各板块输出AI和大数据API/SDK。\n"
"2. 产研对接平台MetaX从0到1搭建基础科研对接平台对接研究机构与产业需求。\n"
"3. 集团门户App和数据中台牵头搭建集团统一门户App及核心板块数据治理和数据中台。\n"
"4. 智能客服基于大模型QWEN-2.5-32BRAG技术和Function Calling打造多Agent体系客服专家。\n"
"5. 知识库基于大模型GraphRAG和多Agent体系搭建知识库和管理助手智能体。\n"
"6. 各板块定制化智能应用智能人流量分析ReID配送智能调度智能安全检查和质检等。",
"sort_order": 1,
},
{
"start_date": "2017.7", "end_date": "2020.1",
"company": "精锐教育集团",
"position": "研发中心负责人CTO",
"company_intro": "上海精锐教育集团是精锐教育国际著名投资集团下属的大型外资教育连锁机构,由哈佛大学及北京大学教育专家创立,以中小学生个性化教育为核心的综合性教育集团。",
"responsibilities": "历任研发总监、网校事业部研发负责人网校CTO精锐教育集团研发中心负责人集团CTO负责集团整体研发工作的管理。\n\n"
"战略规划:制定产品研发方向与策略,引入新技术增强产品竞争力。\n"
"产品研发完成多个项目从0到1涉及巨人网校、直播平台、数据分析系统等。完成精锐OMO布局的系统升级。\n"
"新技术调研主导公有云选型和迁移推进教育产品与AI的集成落地。\n"
"团队组建为在线业务从0到1组建团队最大团队规模达40余人。\n"
"流程管理优化将敏捷开发引入精锐集团研发中心推行DevOps自动化流程。",
"achievements": "1. 精锐集团研发技术中心2019.6-2020.1解决ERP系统固有问题大幅提升系统稳定性推进数据中台和业务中台建设OMO升级支撑10万学员转线上教学QPS达5000+。\n"
"2. 巨人网校2018.8-2019.60-1搭建团队2个月完成核心团队搭建及一期版本上线单机QPS 500+。\n"
"3. 精锐直播平台2017.11-2018.8从0到1搭建直播平台大班直播延时1秒级百人大班掉线率远低于1%\n"
"4. 精锐佳播2017.7-2018.7ROI由0.4做到1.3+招生量100%增长。",
"sort_order": 2,
},
{
"start_date": "2016.1", "end_date": "2017.7",
"company": "北京百思多德科技有限公司",
"position": "创始人",
"company_intro": "面向赴美留学生的在线教育平台,由美国名校本土大学生担任教师在线一对一授课。",
"responsibilities": "战略和方向制定:对在线教育、留学教育领域进行行业研究,制定公司战略方向。\n"
"产品和运营负责产品规划2个月完成从产品设计到第一版上线。\n"
"商务拓展建立与包括哈佛大学在内10余所排名前50大学的优质连接0成本快速获取外教。",
"achievements": "建立与哈佛等10余所美国名校的合作连接实现0成本获取外教资源与多所留学教育机构达成商务合作。",
"sort_order": 3,
},
{
"start_date": "2011.7", "end_date": "2014.9",
"company": "微策略软件研发有限公司MicroStrategy",
"position": "Senior Software Design Engineer",
"company_intro": "MicroStrategy创建于1989年是全球商务智能软件的佼佼者客户遍及财富500强及政府机构。",
"responsibilities": "核心开发负责移动端商户O2O项目Alert的核心开发完成移动端身份识别产品Usher的Android移植。\n"
"团队管理带领移动客户端团队引入敏捷开发年度评估团队平均绩效3.85分制\n"
"产品管理:调研竞品,设计数据埋点,产品为客户带来显著营收增加。\n"
"商务谈判参与公司与Facebook、印度Reliance集团、中国电信新疆分公司的合作谈判。",
"achievements": "团队年度平均绩效达3.85分制远高于公司平均水平培养出两位技术Leader。",
"sort_order": 4,
},
{
"start_date": "2009.9", "end_date": "2011.4",
"company": "Microsoft微软",
"position": "软件开发工程师",
"company_intro": "微软是全球最大的电脑软件提供商,总部位于美国华盛顿州雷德蒙德。",
"responsibilities": "开发自动化评测系统编写爬虫抓取热点新闻编写分析引擎自动分析Bing和竞争对手对热点新闻的覆盖情况。\n"
"相关性数据分析:设计相关度评价指标,进行数据挖掘,输出搜索相关性分析报告。\n"
"在微软亚研院全职实习一年,参与人立方项目,深入学习机器学习、数据挖掘等技术。",
"achievements": "自动化评测系统和数据分析报告成为研发组内重要工具。",
"sort_order": 5,
},
{
"start_date": "2006.6", "end_date": "2008.7",
"company": "中国普天信息技术研究院",
"position": "软件工程师",
"company_intro": "中国普天信息技术研究院隶属于中国普天,专业从事高新技术产品的研发、生产、市场营销等全产业链业务。",
"responsibilities": "通信系统管理软件客户端配置模块的开发,以及相关需求和设计文档的维护。",
"achievements": "",
"sort_order": 6,
},
]
for exp in experiences:
db.add(WorkExperience(**exp))
# ── Default LLM Config (empty, needs admin setup) ──
if not db.query(LLMConfig).first():
db.add(LLMConfig(
api_url="",
api_key="",
model_name="",
is_active=True,
))
db.commit()
print("Database seeded successfully!")
print(f"Admin login: ln0422@gmail.com / qshs123456")
finally:
db.close()
if __name__ == "__main__":
seed()