Stephan Profile picture
Feb 25 8 tweets 4 min read
AI提示工程(PE)小技巧系列第二篇:如何让ChatGPT写长文

在使用免费版的ChatGPT过程中,如果我们想要针对一个主题让ChatGPT写一篇长文的话,经常会发现几轮问答下来它的连贯性就不好了。好像ChatGPT对上下文的“记忆力”不太好。以下是原因及一些解决方法👇
#AI #ChatGPT #promptengineering
原因

ChatGPT有最大token数量的限制,token的定义如下图。

免费版API中,最大token上限是2048。也就是说一个API账号,能够“记住”的最大上下文信息是2048个token。对于记忆顺序,我猜大致是记新忘旧的。

注意,在对话过程中,用户的输入+ChatGPT的回答内容都会计算token。 Image
那么,如果需要让ChatGPT写长文,我们需要做的就是保障在2048个token内,有我们需要的所有必要信息。
方法1:迭代法

就是在每轮提问时,把上次他的回答带上。
这样做适合文章整体长度不太长,但单次回答又没有完成的情况。如下图所示: ImageImageImage
迭代法适合整体长度不太长的文章,但如果文章长度过长就不行了(需要迭代的前文长度都超过2048个token)

方法2:总分法
此时,可以将文章分为几段,且将段落提纲、必要的上下文信息放在每次提问中。然后在每次提问时让他写其中一段内容,如下图: ImageImageImage
如果总分法使用的token也不够了,可以再拆分一下conversation(理论上,只要整体框架完整,且各个章节间相对独立的话,是可以无限拆分的)。

比如,对于“环境问题概述”这部分单独拆分一个conversation出来(注意,标题也有变化): Image
备注:
1.ChatGPT Plus的text-davinci-003模型,支持的上限是4096个token,是免费版的一倍。如果需要更多,可以考虑用大招Fine-tuning(当然也是要收费的)。
2.这里有一个估算token数量的网站:gpttools.com/estimator ImageImage
3.中文能够容纳的token数量比英文要少,我实验大概在800个汉字左右对应2000个token(不绝对,还包括各种标点符号等)

以上,主要讨论了如何让ChatGPT写长文,实质问题是如何解决与AI对话的连贯性问题。

多说一句,我并不支持用这种方法学术造假,我认为AI的用处是提升生产力,但不能代替思考和创新。

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Stephan

Stephan Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @StephanCptMax

Feb 28
AI提示工程(PE)小技巧系列第四篇:自然语言编程

今天看到特斯拉前AI主管说过的一句话:The hottest new programming language is English.

我认为这里的"English"可以改为"natural language"

今天就来实验下:👇🧵

#AI #ChatGPT #promptengineering

之前的三篇,没看过的朋友可以回顾一下:
首先,我这里有如下图文本,我希望将此文本中的“时间”和“事件”分组聚合显示。首先,给出明确的指令、格式要求、以及输入内容:

可以看到,ChatGPT给出的答案不全,且有错误 Image
利用前面讲过的Few-Shot技巧,给出几个示例: Image
Read 8 tweets
Feb 28
主流稳定币数据跟踪

数据含义:
1.直方图值<0:代表MACD线小于信号线,长期利空趋势
2.直方图值>0:代表MACD线大于信号线,长期利好趋势
3.直方图深色:代表环比加速,红色短期利空趋势
4.直方图浅色:代表环比减速,粉色短期利好趋势

详细说明:


#stablecoin #稳定币
上周数据:
USDT供应直方图,突破0轴后,上周继续上升。当前处在长期中性+短期利好趋势 Image
Mcap/TVL

Mcap/TVL是稳定币的总市值和TVL的比值,反应了链上稳定币的资金使用率情况。
使用率越高Mcap/TVL比值越小,代表市场情绪倾向乐观,
使用率越低Mcap/TVL比值越大,代表市场情绪倾向悲观。
Read 4 tweets
Feb 27
AI提示工程(PE)小技巧系列第三篇:回答的多样性

有没有发现有时我们需要简单且明确的答案,ChatGPT却给出了非常“发散”的答案?
又或者我们有时希望他的回答能更具有“多样性”和“创造性”一些?今天就来聊聊这个👇🧵

#AI #ChatGPT #promptengineering

之前的两篇,没有看过的朋友可以回顾一下:
对于同样的问题,ChatGPT会有很多备选的不同答案,而这些答案在“创造性”和“可预测性”之间的选择是由“温度”来控制的。

“温度”是一个从0~1的值,温度越低,代表可预测性越强,答案会更加单一明确;温度越高,代表创造性越强,答案会更加多样化。 Image
在API中我们可以直接通过参数控制“温度”值的高低。
在网页中和ChatGPT对话时,虽然不能直接控制,但我们可以通过Prompt技巧来让ChatGPT调整结果的多样性,如下图举例: ImageImage
Read 6 tweets
Feb 24
AI提示工程(PE)小技巧——思维链(CoT)提示

提示工程(prompt engineering, PE)讲的是如何同AI交流,并得到你要的结果。我认为在未来,这方面的知识储备,就像英语一样,属于必备技能了。所以下面会定期将我学习的PE相关知识分享给大家👇

我的学习内容来源:
learnprompting.org/zh-Hans/docs/i…
ChatGPT面对一些逻辑问题有时会出错,为什么?能否优化?
能否“教”ChatGPT怎么思考,怎么推理?

首先,针对特定问题,我们可以“教”它怎么推理,这叫思维链(CoT)提示。
我们可以先以问答的形式,给出一个示例,并且答案中写明推理过程。这样可以有效提升ChatGPT在同类问题上的回答正确率。 Image
思维链提示实验1:

如下示例中,确实提示了推理过程,但实际问题中出现了“半小时”、“1小时”这种不同单位的词,ChatGPT给出的答案错误: Image
Read 5 tweets
Aug 6, 2022
1/ 听space做了一点笔记,包含space中老师讲到的 #MOVE 在安全层面的一些特性,以及与 #solidity 的对比,另外也加入了我自己的一些思考:

#MOVE #solidity #Starcoin
2/ 首先,为什么安全性在今天的web3领域如此重要?

来自慢雾的统计,2021年全年,区块链安全事件导致的资金损失高达98亿美元。

图片来源:
tuoluo.cn/article/detail…
3/ 可以看出DApp、DeFi、NFT、跨链的安全事件占比最大,这其中智能合约漏洞导致的安全事件非常多。在项目方角度来看,上线前的代码审计工作可能还待加强。但另一方面,有没有在代码编写之初就能够尽量降低安全漏洞风险的方法呢(毕竟审计还是属于事后工作)?这就引出了MOVE语言层面在安全性上的改进。
Read 9 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(