基本信息
- 孙啟航 / 男 / 中共党员
-
CET-6
TOEFL-99 (21.08-23.08) - JLPT N2-102
联系方式
教育经历
-
澳门大学(THE 180 | QS 245) — 硕士
专业: 计算机科学
GPA: 3.45/4.0
-
河北农业大学(一本) — 本科
专业: 计算机科学与技术
GPA: 89.14/100   3.78/4.0
专业排名: 3/67, 前 5%
个人荣誉
1、 河北农业大学本科优秀毕业设计
2、 2019/2020 - 2021/2022学年 河北农业大学一等奖学金(前5%)
3、 2018/2019学年 河北农业大学三等奖学金(前20%)
技能点
竞赛经历
-
第五届河北省大学生程序设计竞赛二等奖
-
2020年中国大学生程序设计竞赛秦皇岛站优胜奖
-
第十一届蓝桥杯全国软件和信息技术专业人才大赛C/C++程序设计省二等奖
-
第四届河北省大学生程序设计竞赛三等奖
-
全国高校计算机能力挑战赛人工智能算法赛决赛三等奖
-
第三届河北农业大学大学生程序设计竞赛专业组一等奖
-
第十一届河北农业大学机器人大赛特等奖
-
第二届河北农业大学大学生程序设计竞赛专业组三等奖
工作经历
-
【校招】: 科大讯飞股份有限公司
- [工作岗位]: C++开发工程师
- 待补充...
-
[我的任务]:
待补充...
- [个人收获]: 待补充...
-
【实习】: 北京智览医疗科技有限公司
- [工作岗位]: LLM应用后端开发实习生
- 负责公司LLM应用(医疗问答机器人CareBot)的需求分析,后端的架构设计、功能开发测试及性能优化,参与产品的迭代更新、RAG向量检索流程优化、知识库构建等技术预研工作。
-
[我的任务]:
1、使用Python和Flask框架开发和维护LLM应用后端服务,实现了流式传输首token平均1.5s的响应时间。
2、基于Dify开源框架的Workflow重构LLM应用,并实现Dify查询外部知识库的接口。
3、调研并实施了基于QA分段的知识库Embedding方法,提高了知识库的内容质量,为RAG提供可靠支持。
4、调研并实施了基于LLM的问题重写、HyDE假设文档嵌入,Reranking重排序等RAG方案,提高了RAG的准确性。
5、将Langfuse集成至后端服务,实现了对LLM对话的实时追踪评估,以及RAG检索质量的持续监控。
6、基于Elasticsearch、Kibana、Beats搭建了对LLM应用、Nginx以及数据库的日志采集系统,加强了问题的诊断效率。
7、使用Docker构建测试、生产环境,并负责维护项目Docker仓库,提高了部署流程的自动化水平。 - [个人收获]: 增强了后端服务和开发和维护的实战经验,对大模型领域的后端应用开发有了深刻的理解,掌握了prompt工程、RAG向量检索等LLM相关知识,锻炼了实际的项目规划和管理能力。
项目经验
-
WebServer Demo
- 技术栈: C++、Linux、epoll、Socket
- [项目描述]: 在Linux下使用C++开发的轻量多线程HTTP服务器,支持一定数量的客户端连接和响应,并支持客户端访问服务器的图片、视频等资源。在2C4G配置的虚拟机中使用webbench进行压力测试,模拟1500个客户端并发访问10s能同时连接6.2万左右的TCP连接,QPS为6801。
-
[主要工作]:
1、使用Socket实现不同主机之间的通信。
2、利用IO复用和epoll与线程池实现多线程的Reactor高并发模型
3、利用正则表达式和状态机解析HTTP请求报文,处理静态资源的请求。
4、基于小根堆实现定时器,能够关闭超时的非活动连接。
5、利用vector<char>封装Buffer,实现自动增长的缓冲区。
- [个人收获]: 对HTTP请求、TCP三次握手和Linux网络编程,如Socket通信、epoll等知识有了直观的了解和认识,提高了 Linux下定位和解决错误的能力。
-
MiniSTL Demo
- 技术栈: C++、Linux
- [项目描述]: 根据《STL源码剖析》基于C++ 11所实现的简单STL。
-
[主要工作]:
1、基于C++11实现大部分STL库中的容器和函数。
2、实现简单的测试框架,并定义宏来封装测试过程。 - [个人收获]: 从零开始实现STL让我对STL的六大组件,特别是vector、map、set等容器的底层有了深刻的了解,对C++的模板和泛型机制理解也更深入。
-
基于深度学习的鱼类细粒度分类及目标检测研究与实现(本科校优秀毕业设计)
- 技术栈: Python、Pytorch、YOLO、PyQT、Android
- [项目描述]: 基于F4K鱼类数据集进行分类和目标检测的模型实现,开发可视化界面,可实现对图片、视频以及摄像头输入的实时画面进行检测。其中分类任务在重型网络EfficientNet下的准确率为99.67%,在轻量网络ShuffleNetV2下的准确率为96.89%,目标检测任务的准确率为88.82%。
-
[主要工作]:
1、使用DCGAN生成虚假鱼类图像,有效扩增了数据集,增强了模型的泛化能力。
2、在细粒度分类任务中,对比训练多种神经网络,包括EfficientNet和ShuffleNetV2,通过综合评估,确定最优模型。
3、基于YOLOV5框架,使用预训练权重对网络进行微调,实现了高效的目标检测任务。
4、将ShuffleNetV2分类模型和YOLOV5目标检测模型转换为TorchScript格式,为移动端部署提供了便利。
5、使用PyQt5和Android开发客户端和移动端用于部署神经网络模型,展示模型效果。 - [个人收获]: 了解了Pytorch框架和YOLOV5框架的使用,熟悉了构建和训练复杂神经网络模型的流程,掌握了神经网络调参技巧,熟悉了PyQt5界面设计和Pytorch模型转化为TorchScript格式的操作。
-
验证码图片及内容识别(全国高校计算机能力挑战赛人工智能算法赛决赛三等奖)
- 技术栈: Python、Pytorch、Docker
- [竞赛描述]: 竞赛方5000张jpg格式的高饱和度的验证码图片及其对应标签,图片包含四位异形的数字或字母。选手的任务是利用竞赛方提供的图片训练一个机器学习或深度学习模型,将训练好的模型上传至竞赛方平台,由竞赛方采用一组不对外公开的5000张验证码图片对选手的模型进行封闭测试以评估模型准确度。
-
[主要工作]:
1、对赛方提供的5000张高饱和度、异形字母验证码图片,以7:2:1的比例分割为训练集、验证集和测试集供网络训练
2、搭建CUDA和CentOS测试开发环境,使用预训练权重对VGG16、ResNet、EfficientNet等多种神经网络进行对比实验。
3、对所有验证码图片在训练前实施了灰度二值化、归一化等图片预处理技术,以增强模型的识别能力。
4、以准确率优先原则选定EfficientNet作为基底模型,对其进行针对性微调,并通过迁移学习方法进一步优化模型参数。
5、将生成的模型和运行代码通过Docker打包上传验证,最终准确率为97.32%,在93个参赛队伍中排名第31。 - [个人收获]: 了解了Pytorch框架和YOLOV5框架的使用,熟悉了构建和训练复杂神经网络模型的流程,掌握了神经网络调参技巧,熟悉了PyQt5界面设计和Pytorch模型转化为TorchScript格式的操作。
专业能力