Introduction
为什么要学习提示词
最近一时兴起,做了一个爬虫项目,爬虫很简单,直接 requests + bs4,但是这个项目的实际需求,是将爬下来的内容序列化为 JSON,之后再通过接口导入到数据库中
JSON Schema 是确定的,如果按照传统的方式,只能人工一行一行阅读爬下来的 Raw Data,然后根据自己的理解一点一点去填写字段
数据量少还好,但如果是几十、几百、几千的数据呢?如果使用纯人工来做这些事情的话,是极其枯燥且容易出错的,而 LLM 在这类事情上,能有很好的处理效果
但如果只是把数据和需求,直接丢给 LLM,它是很难理解你要的需求的,经常会生成一些不规范/不需要的内容和字段
在学习 Prompt Engineering 之前,我写的很多提示词都不规范,我不知道如何去引导 LLM 去生成我想要的内容,也不知道如何去处理 LLM API 传回的数据,直接使用 requests 去请求 API,里面有很多的转义字符,处理起来有点棘手
事实上,我觉得 Prompt Engineering 很神奇的一点在于,哪怕是小小的改动,也能让 LLM 朝向完全不同的方向做出回答
Prompt Engineering 的学习也能帮助我们更好地了解一个实际的应用型生成式人工智能是如何构建的,这对于在应用中集成 LLM 非常有帮助
学习资源
主要借助了吴恩达老师的「提示工程」公开课资源,在 B 站上,它被搬运成:【吴恩达】2025年公认最好的【提示词工程】教程!大模型入门到进阶,一套全解决!Prompt Engineering-附带课件代码_哔哩哔哩_bilibili,但是你实际学习就会发现它并不是 2025 年的
课程中使用的模型是 GPT-3.5 Turbe,但由于 OpenAI 的 API 比较难申请,在实际操作中,我使用的是来自硅基流动的 DeepSeek V3,它同样非常优秀,而且响应很快
详细的代码我放在了代码仓库,所使用的 OpenAI 库的一些接口发生了改变,我对代码进行了修改,确保你能在最新(2025 年 7 月)跑起来:Prompt_Engineering |Gitea