阅读(525) 书签 (0)

文心一言技巧 To Do and Not To Do

2023-06-17 15:15 更新

在问答场景里,为了让 AI 回答更加准确,一般会在问题里加条件。比如让 AI 推荐一部电影给你。但这个 prompt 太空泛了,AI 无法直接回答,接着它会问你想要什么类型的电影,但这样你就需要跟 AI 聊很多轮,效率比较低。所以,为了提高效率,一般会在 prompt 里看到类似这样的话(意思是不要询问我对什么感兴趣,或者问我的个人信息):

<不要询问我对什么感兴趣,或者问我的个人信息>

如果你在 文心一言 里这样提问,或者使用 文心一言 最新的 API ,它就不会问你问题,而是直接推荐一部电影给你,它的 输出 是这样的:

但如果你使用的是如 Davinci-003 这样的模型,它的 Output 很可能是这样的,它还会问你的兴趣爱好:

<当然,我可以根据你的兴趣推荐一部电影。你想看什么样的电影?你喜欢动作片、喜剧片、爱情片还是其他的?>

所以 OpenAI 的 API 最佳实践文档里,提到了一个这样的最佳实践:与其告知模型不能干什么,不妨告诉模型能干什么。 我自己的实践是,虽然现在最新的模型已经理解什么是 Not Todo ,但如果你想要的是明确的答案,加入更多限定词,告知模型能干什么,回答的效率会更高,且预期会更明确。还是电影推荐这个案例,你可以加入一个限定词:推荐一部全球热门电影给我。

当然并不是 Not Todo 就不能用,如果:

  • 你已经告知模型很明确的点,然后你想缩小范围,那增加一些 Not Todo 会提高不少效率。
  • 你是在做一些探索,比如你不知道如何做精准限定,你只知道不要什么。那可以先加入 Not Todo ,让 AI 先发散给你答案,当探索完成后,再去优化 prompt。