chatbox icon indicating copy to clipboard operation
chatbox copied to clipboard

关于系统人设的使用体会和建议

Open xieziyu opened this issue 1 year ago • 2 comments

翻阅了一下源码,注意到当前调用api时总是会保留当前 chat session 的第一条 prompt,结合 clean 功能仅清除 system role 之外的消息,我猜想这里的设计初衷是希望引导用户把第一条 prompt 优先作为 system role 来使用的,这样能达到最佳的指导效果。

这几天在实际使用时,我会对不同的问答场景开不同的 chat session,这里会首先预设它的身份。目前的交互是: 先发一条 prompt 预设其身份,一些指导性的 context 以及输入输出的用例指导。等回复后,我会把第一条消息 edit 一下,把 role 改成 system,然后 clean 掉 bot 无意义的答复,再开始提出实际的问题。接下来再把交互中新产生的一些有用的背景知识 edit 到第一条 system 消息里。这个 session 就成了未来相同场景下的专家了。

这里想说的是,是否可以将 system role 的 prompt 单独地做成一个 chat session 的配置项,而不是默认总拼接第一条?而且在设置 system 的时候,不需要发出 api 请求?主要是这几点:

  1. system role 本是可选的,尤其是一些简单提问场景下,不太能预设第一条一定是人设型的问题。
  2. 当需要设定 system role 时,能更直观和方便,且不会产生多余的 api 调用
  3. 这个 system role 的 prompt 可以通过置顶或者其他固定的展示方式,用于提示这个chat session的基本设定,而不用一直往上翻来确认和编辑

xieziyu avatar Mar 17 '23 10:03 xieziyu