布景

OpenAI官方具体介绍了ChatGPT运用的最佳实践,不仅适用于运用ChatGPT网站进行直接对话的用户,还适用于经过OpenAI API接入的开发者。

掌握了这些最佳实践,就能更好地运用GPT大模型。

本文是ChatGPT运用最佳实践系列第2篇 – 供给参阅信息(provide reference text)。

GPT可能会自信地编造虚伪的答案,尤其是在被询问深奥的话题或许要求供给引证内容或许URLs时。

就像做笔记能够帮助学生在考试中得到更好的成果一样,为GPT供给参阅信息也能够帮助大模型生成更精确的答复,减少伪造答案的可能性。

战略1:引导模型依据已知信息来答复问题

用户提问时,假如咱们能够把和问题相关的已知现实或许信息给到大模型,就能够引导模型依据咱们供给的已知信息来答复问题,减少大模型伪造答案的可能性。

以下是结构Prompt的示例:

SYSTEM Use the provided articles delimited by triple quotes to answer questions. If the answer cannot be found in the articles, write “I could not find an answer.”
USER <insert articles, each delimited by triple quotes>
Question:<insert question here>

不过需要注意的是,因为GPT模型有上下文长度(context length)的限制,咱们需要精准找到和问题相关的信息。

向量化(embedding)就能够用来实现高效的信息检索。

能够参阅Use embeddings-based search to implement efficient knowledge retrieval 了解更多向量化检索细节。

战略2:引导模型在答复里带上引证内容

假如Prompt里供给了和问题相关的参阅文档,那就能够要求大模型在答复里引证Prompt里供给的文档中的相关内容。

以下是结构Prompt的示例:

SYSTEM You will be provided with a document delimited by triple quotes and a question. Your task is to answer the question using only the provided document and to cite the passage(s) of the document used to answer the question. If the document does not contain the information needed to answer this question then simply write: “Insufficient information.” If an answer to the question is provided, it must be annotated with a citation. Use the following format for to cite relevant passages ({“citation”: …}).
USER “””<insert document here>”””
Question: <insert question here>

注意:答复里的引证内容精确性是能够和Prompt里供给的内容做字符串匹配来验证的。

能够在这个链接里看效果:Open in Playground。

总结

本文是ChatGPT运用最佳实践系列第2篇 – 供给参阅信息(provide reference text)。

具体叙述了2个战略,以上战略不仅适用于GPT模型,还适用于其它大语言模型。

文章和示例代码开源在GitHub: GPT实战教程,能够看到一切干流的开源LLM。

公众号:coding进阶。

个人网站:Jincheng’s Blog。

知乎:无忌。

References

  • platform.openai.com/docs/guides…