提示词工程相关文章:
OpenAI开发系列(八):基于思维链(CoT)的进阶提示工程
提示词工程(Prompt engineering)-写好提示词激活大模型(LLM)基本策略
福利:关于协助生成提示词的应用--没有亲测过
7大提示词神器
资料分析
网上相关的资料非常多,我找了两个有代表性的文档,
第一个:偏方法论一些
第二个:偏技巧一些
我个人比较喜欢第一个文章,其给出的方法更底层一些,基于这些方法可以更变化出更多技巧,同时更容易进行结构化处理,方便内化吸收;
第二个文章:给了好多方法,也做了分类,但无法应用MECE法则进行结构化处理。
针对第一个文章中给出的提法方法,我有一个大体感觉:
通用大语言模型就像一个刚高校毕业步入职场的新人,其经过多年的学校学习与训练,已经具备一定的基本知识与能力;
但如何让新人在公司的具体岗位上快速成长,在工作中表现出色,只有两个方法:
1、数据:提供其岗位工作内容的历史数据,让其参考学习
2、方法:提供本公司本岗位的工作方法,让其掌握方法工具
通用大语言模型也是类似。
提示方法(结构化处理 -MECE):
分类 | 提示方法 | 描述 | 案例 |
---|---|---|---|
样本 (数据) | Zero-Shot | 无样本 | |
Few-Shot & One-shot | 少量样本(类似问题和答题做为参考样本) | Q:“罗杰有五个网球,他又买了两盒网球,每盒有3个网球,请问他现在总共有多少个网球?” A:“现在罗杰总共有11个网球。” Q:“食堂总共有23个苹果,如果他们用掉20个苹果,然后又买了6个苹果,请问现在食堂总共有多少个苹果?” A:? | |
思考链 (CoT) (方法) | Zero-shot-CoT | 一种非常简单而有效的方式是:在提示词尾部追加一句“Let’s think step by step”,即可大幅提高模型推理能力。 中文语境:请一步步进行推理并得出结论 | 罗杰有五个网球,他又买了两盒网球,每盒有3个网球,请问他现在总共有多少个网球?请一步步进行推理并得出结论。 |
Few-shot-CoT | Few-shot-CoT的不同之处只是在于需要在提示样本中不仅给出问题的答案、还同时需要给出问题推导的过程(即思维链),从而让模型学到思维链的推导过程,并将其应用到新的问题中。 | Q:“罗杰有五个网球,他又买了两盒网球,每盒有3个网球,请问他现在总共有多少个网球?” \ A:“罗杰起初有五个网球,又买了两盒网球,每盒3个,所以,他总共买了2×3=6个网球,将起始的数量和购买的数量相加,可以得到他现在总共的网球数量:5+6=11,所以罗杰现在总共有11个网球” \ Q:“食堂总共有23个苹果,如果他们用掉20个苹果,然后又买了6个苹果,请问现在食堂总共有多少个苹果?” \ A:? | |
Least-To-Most-CoT | 两个阶段进行: 第一个阶段是自上而下的分解问题(Decompose Question into subquestion), 为了解决“__”这个问题,首先要解决的问题是__ 第二个阶段是自下而上的依次解决问题(Sequentially Solve Subquestion) 整个依次回答问题的过程,其实就可以看成是CoT的过程, 只不过LtM会要求模型根据每个不同的问题,单独生成解决问题的链路, 从而能够更加精准的解决复杂推理问题。 | 见第一个文章 |
补充:
对于一个大的复杂的问题,建议采用两阶段法:
两阶段推理的设想:
第一个阶段先进行问题的拆分并分段解答问题(Reasoning Extraction),
第二阶段再进行答案的汇总(Answer Extraction)
之前我使用AI编写论文时,基本就使用的这个方法。
先让AI针对论文题目给出了论文目标结构
然后针对每个章节进行单独询问,最新把答案汇总。
感想
目前的AI还基于处于强人工智能的初级阶段,即只会把人类已有的知识进行更好的组织,还无法进行真正的创新。
所以对于提出的问题,必须是人类已经有答案的。
对于要写的论文,核心观点或思想还是要我们自己提供的。
目前的AI还是处于助手的阶段,核心问题还是要我们自己来处理的,
根据二八定律,我们只需做20%的核心工作,其它均可交于AI完成!