大模型学习笔记:Prompt Engineering 提示词工程
Prompt Engineering 也成为In-Context Prompting, 是指在不更新模型权重的情况下如何与大模型交互以引导其行为以获得所需结果的方法。人工智能领域,Prompt指的是用户给大语言模型发出的指令。 提示词技巧: 详细的描述 让模型充当某个角色 使用分隔符标明输入的不同部分 – 例:用20个字符总结由三引号分割的文本。“”“在此插入文本”“” 对任务指定步骤:对于可以拆分的任务可以尽量拆开,最好能为其指定一系列步骤 – 步骤1:“”“用户输入文本”“”,用一句话总结这段文本,并加上前缀“Summary” – 步骤2:将步骤1中的摘要翻译成英语,并添加前缀“翻译: ” 提供例子:本质类似于few-shot learning。先扔给大模型举例,然后让模型按照例子来输出 – 按照这句评论文本的格式:““”用户输入文本”“”,帮我创造新的样本 基于文本文档:帮助大模型问答,**降低模型“幻觉”**, 经典知识库用法,让大模型使用我们提供的信息来组成答案:- 根据下文中三重引号引起来的文章来回答问题。如果在文章中找不到答案,请写“我找不到答案”, 不要自己造答案。“”“<在此插入文档>”“”“”“<在此插入文档>”“”问题:<在此插入问题> 大模型本身是一种很简单的结构:用户输入,模型输出。不管RAG还是Agent智能体或其他围绕模型的各种复杂的开发工作,本质上都可以简单总结为在提示词上下功夫。 Few-Shot, Zero-Shot思想 Zero-shot Learning(联想),指在训练阶段不存在与测试阶段完全相同的类别,但是模型可以使用训练过的知识来推广到测试集中的新类别上。“零样本”学习。因为模型在训练时从未见过测试集中的新类别,在模型训练和提示词优化中均有体现。 在提示词优化中:用于基于已训练的能力,不提供任何示例,仅通过语言去描述任务的要求、目标和约束,让模型直接生成结果。简单来说就是“用语言定义任务,解放(信任)模型的预训练知识”。 例:请判断“”包围的用户评论中的情感倾向,输出 正面 或 负面。“这款代餐鸡胸肉饱腹感很强,吃起来也不柴,很推荐!” Few-shot Learning (示例)是指少样本学习,当模型在学习了一定类别的大量数据后,对于新的类别,只需要少量的样本就能快速学习,对应的有one-shot learning,单样本学习,也算样本少到为一的情况下的一种few-shot learning from openai import OpenAI import os client = OpenAI( api_key=os.getenv(“OPENAI_API_KEY”), base_url=”https://dashscope.aliyuncs.com/compatible-mode/v1″,
大模型学习笔记:Prompt Engineering 提示词工程 Read More »