0%

个人信息

专业技能

  • 熟悉的语言框架:Python(Flask、FastAPI)、Node.js(Express、Koa)
  • 熟练使用LangChain构建大模型应用,使用 LangSmith 排查大模型可能产生的幻觉问题
  • 熟悉知识库、提示词工程优化、RAG、大模型API集成(ChatGLM3、Qwen2.5)等大模型应用相关技术
  • 熟悉大模型部署框架:Ollama、vLLM等等
  • 熟悉常见web后端相关:微服务架构设计、RESTful API开发、容器化部署(Docker、K8s)
  • 熟悉版本管理、文档和自动化部署工具Git、Kibana、Elasticsearch等等
  • 熟悉 Mysql、SQLite、Oracle 等关系型数据库和 MongoDB 非关系型的数据库
  • 熟悉CI/CD流程:Git/GitLab-CI、ElasticSearch等
  • 熟悉测试流程工具: Node.js和 Python常见单元测试框架mocha/chai/pytest
  • 了解Golang、Java等语言

工作经历

2020.12 - 2024.12 | 暗物智能科技(广州)有限公司 | Python开发

后端研发工程师(Python Web & 大模型应用开发)

算法工程项目

  • 总体职责:Prompt Engineering(提示词优化)、LangChain框架应用、RAG(检索增强生成)设计、API部署
  • 提示词优化与设计:根据产品需求开发工程,设计并优化提示词,显著提高了意图识别的准确率。
  • 产品接口开发:对接业务后端,开发满足具体产品需求的接口,确保高效率的数据流转。
  • 数据分析:Pandas/NumPy + 自动化报告生成
  • 数据构建与验证:使用大模型构建数据,优化方案并开发测试脚本,确保数据构建的准确性和高效性。

理化生项目-教育类项目

  • 集成开发与项目部署:担任集成开发及项目部署工作,对接算法、后端和工具链等各个模块。
  • 开发基于Python的数据处理工具链,自动化处理百万级表格数据,提升团队效率40%
  • 优化数据清洗流程,结合Pandas与自定义脚本,处理效率提升60%
  • 优化自动部署:与运维团队沟通,优化自动部署中的 PVC 挂载问题,并处理 CI/CD 过程中 Pipeline产生的错误。开发阶段将部分运维操作交由开发团队完成,运维只需统一运行脚本设置 Pipeline,大大减少了沟通成本

2019.11-2020.10|深圳兰宇网络科技有限公司 | Node.js及Python开发

2017.12-2019.09|深圳市艾德网络科技发展有限公司 | Node.js及Python开发

2016.02-2017.08|北京开科唯识技术股份(深圳)有限公司 | Lua开发

2015.07-2016.01|深圳市中深软通科技有限公司 | Java开发


重点项目

暗物小应语音助手(2024)

项目概述:开发了一款语言助手AI大模型项目,主要涉及:意图识别模型,槽位识别模型、内容回复微调模型。

项目功能

  • 语音指令处理:用户通过语音输入指令,前后端处理后将指令文本传递给本项目。
  • 提示词生成:根据不同的会话类型(单轮或多轮),自动生成相应的提示词模板。
  • 数据库管理:维护了意图表和槽位表,用于生成提示词。
  • 大模型调用:使用 Python 和 Flask-RESTful 构建 Web API,通过 LangChain 对接大模型,封装成 API 调用。
  • 效果反馈:从大模型获取意图和槽位信息,并返回给前端,前端根据这些信息执行相应操作

技术

  • Python与Web开发:使用 Python 和 Flask-RESTful 构建了高效稳定的服务端处理逻辑。
  • 大模型应用与封装:利用 LangChain 封装和调用大模型接口,确保精准调用和数据处理。
  • 问题排查与测试:使用 LangSmith 排查大模型可能产生的幻觉问题。
  • 工作流构建:通过 Dify 构建工作流接口供测试人员使用,确保各环节无缝对接。
  • 维护与优化:设计和优化了整个系统的架构,确保高效率和高稳定性,同时降低了维护成本和沟通成本。

教育背景

河南科技大学 | 信息与计算科学 | 本科 | 2011-2015

英语四级证书: CET4

参考技能关键字

  • Python
  • Linux
  • Docker
  • Mysql
  • MongoDB
  • Redis
  • Node.js
  • Express
  • Git
  • Stackoverflow

致谢

感谢您花时间阅读我的简历,期待能有机会和您共事。

上传镜像
要上传镜像到私有仓库,需要在镜像的 tag 上加入仓库地址:

1
docker tag express-app 111.111.111.111:5000/sunhengzhe/express-app:v1

为了不与其他镜像冲突,可以加入命名空间如 sunhengzhe,另外最好给镜像打上 tag 如 v1。

注意仓库地址没有加协议部分,docker 默认的安全策略需要仓库是支持 https 的,如果服务器只能使用 http 传输,那么直接上传会失败,需要在 docker 客户端的配置文件中进行声明。

阅读全文 »

Docker rmi

docker rmi 通过镜像的 ID 删除镜像。

要删除镜像,首先需要列出所有镜像以获取镜像的 ID,镜像的名称和其他详细信息。 运行简单的命令 docker images -a 或 docker images。

之后,明确要删除哪个镜像,然后执行简单命令 docker rmi 。然后,列出所有镜像并检查,可以确认镜像是否已删除。
一次删除多张镜像

当你要一次删除多张镜像时,可以使用一种方法。首先只需列出镜像即可获取镜像的 ID,然后执行简单的命令:

docker rmi

列出镜像的 ID,每个 ID 之间留一个空格。
一次删除所有镜像

要删除所有镜像,有一个简单的命令可以做到:docker rmi $(docker images -q)。

在上面的命令中,有两个命令,第一个在 $() 中执行的命令是 shell 语法,返回以该执行的结果。然后,-q- 是一个选项,用于返回唯一的 ID。$() 返回镜像 ID 的结果,然后 docker rmi 删除所有这些镜像。

一、使用 export 和 import
1,查看本机的容器
这两个命令是通过容器来导入、导出镜像。首先我们使用 docker ps -a 命令查看本机所有的容器。

2,导出镜像
(1)使用 docker export 命令根据容器 ID 将镜像导出成一个文件。

1
docker export f299f501774c > hangger_server.tar

(2)上面命令执行后,可以看到文件已经保存到当前的 docker 终端目录下。

3,导入镜像
(1)使用 docker import 命令则可将这个镜像文件导入进来。

1
docker import - new_hangger_server < hangger_server.tar

(2)执行 docker images 命令可以看到镜像确实已经导入进来了。

Docker rmi
docker rmi 通过镜像的 ID 删除镜像。

要删除镜像,首先需要列出所有镜像以获取镜像的 ID,镜像的名称和其他详细信息。 运行简单的命令 docker images -a 或 docker images。
之后,明确要删除哪个镜像,然后执行简单命令 docker rmi 。然后,列出所有镜像并检查,可以确认镜像是否已删除。

一次删除多张镜像
当你要一次删除多张镜像时,可以使用一种方法。首先只需列出镜像即可获取镜像的 ID,然后执行简单的命令:

docker rmi

列出镜像的 ID,每个 ID 之间留一个空格。

一次删除所有镜像
要删除所有镜像,有一个简单的命令可以做到:

docker rmi $(docker images -q)。

在上面的命令中,有两个命令,第一个在 $() 中执行的命令是 shell 语法,返回以该执行的结果。然后,-q- 是一个选项,用于返回唯一的 ID。$() 返回镜像 ID 的结果,然后 docker rmi 删除所有这些镜像。

阅读全文 »

less命令 与 more命令 非常类似,但less命令 可以更加随意地浏览文件,而且 less 在查看之前不会加载整个文件。
相比较于more命令,很多人更喜欢使用 less命令。

阅读全文 »

当只有一台服务器,而又想运行多个 web 后端服务,且希望网址为 www.XX.com / bbs.XX.com / blog.XX.com,怎么办,此时就要用nginx进行反向代理

以 ubuntu 为例

  1. 安装 NGINX
1
$ sudo apt-get install nginx
阅读全文 »

让终端走代理的几种方法包括以下几种‌:

1.‌直接在终端中运行命令‌:

可以在终端中直接运行以下命令来设置代理:

1
2
export http_proxy=http://proxyAddress:port
export https_proxy=http://proxyAddress:port

例如,如果你想使用127.0.0.1的7890端口作为代理,应该输入:

1
2
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890

这种方法的好处是简单直接,并且只对当前终端有效‌

2.‌将代理服务器地址写入shell配置文件‌:

可以将代理服务器地址写入.bashrc或.zshrc配置文件中,这样设置会永久保存,下次可以直接使用。例如:

1
2
export http_proxy="http://localhost:port"
export https_proxy="http://localhost:port"

以使用小飞机代理为例,代理端口为1080,则应设置为:

1
2
export http_proxy="http://127.0.0.1:1080"
export https_proxy="http://127.0.0.1:1080"

保存后,在终端中执行source ~/.bashrc或退出当前终端再重新打开一个终端‌ 。

3.‌修改特定工具的配置‌:

对于某些特定的工具,如apt、git等,可以直接在它们的配置文件中设置代理。例如,对于apt:

1
sudo vim /etc/apt/apt.conf

在文件末尾加入:

1
Acquire::http::Proxy "http://proxyAddress:port"

对于git:

1
2
git config --global http.proxy 'socks5://127.0.0.1:1088'
git config --global https.proxy 'socks5://127.0.0.1:1088'

这样设置后,该工具就会使用指定的代理服务器‌。

4.‌使用Proxychains‌:

Proxychains可以在终端中使用SOCKS5代理。如果代理服务器需要登录,可以直接在命令中指定用户名和密码:

1
http_proxy=http://userName:password@proxyAddress:port