【Prompt Engineering】6 文本扩展

发布于:2024-12-21 ⋅ 阅读:(19) ⋅ 点赞:(0)

一、引言

  • 文本扩展:将短文本输入到大型语言模型中,生成更长的文本。
  • 应用场景:头脑风暴、生成电子邮件或论文等。
  • 风险:可能被用于生成垃圾邮件。
  • 使用原则:负责任地使用,确保有益于人们。
  • 技术准备:配置环境以使用OpenAI API。
from zhipuai import ZhipuAI
# 导入第三方库

key = "sk-..."
# 设置 API_KEY, 请替换成您自己的 API_KEY
client = ZhipuAI(api_key = key)

def get_completion(prompt, model="glm-3-turbo", temperature=0):
    messages = [{"role": "user", "content": prompt}]
    response = clinet.chat.completions.create(
        model=model,
        messages=messages,
        temperature=temperature, # 模型输出的温度系数,控制输出的随机程度
    )
    return response.choices[0].message.content

二、定制客户邮件

  • 根据客户评价和情感:使用LLM生成针对性的客户服务邮件。
  • 情感分析:先前章节中已学习如何判断评论情感。
  • Prompt设计:设计Prompt以生成感谢信,根据情感正面或负面调整回复内容。
  • 具体细节:确保回复中使用客户评价的具体细节。
  • 专业语气:以简明、专业的语气撰写邮件。
  • 签名:以“AI客户代理”名义签署邮件。
# 我们可以在推理那章学习到如何对一个评论判断其情感倾向
sentiment = "negative"

# 一个产品的评价
review = f"""
他们在11月份的季节性销售期间以约49美元的价格出售17件套装,折扣约为一半。\
但由于某些原因(可能是价格欺诈),到了12月第二周,同样的套装价格全都涨到了70美元到89美元不等。\
11件套装的价格也上涨了大约10美元左右。\
虽然外观看起来还可以,但基座上锁定刀片的部分看起来不如几年前的早期版本那么好。\
不过我打算非常温柔地使用它,例如,\
我会先在搅拌机中将像豆子、冰、米饭等硬物研磨,然后再制成所需的份量,\
切换到打蛋器制作更细的面粉,或者在制作冰沙时先使用交叉切割刀片,然后使用平面刀片制作更细/不粘的效果。\
制作冰沙时,特别提示:\
将水果和蔬菜切碎并冷冻(如果使用菠菜,则轻轻煮软菠菜,然后冷冻直到使用;\
如果制作果酱,则使用小到中号的食品处理器),这样可以避免在制作冰沙时添加太多冰块。\
大约一年后,电机发出奇怪的噪音,我打电话给客服,但保修已经过期了,所以我不得不再买一个。\
总的来说,这些产品的总体质量已经下降,因此它们依靠品牌认可和消费者忠诚度来维持销售。\
货物在两天内到达。
"""
prompt = f"""
你是一位客户服务的AI助手。
你的任务是给一位重要客户发送邮件回复。
根据客户通过“```”分隔的评价,生成回复以感谢客户的评价。提醒模型使用评价中的具体细节
用简明而专业的语气写信。
作为“AI客户代理”签署电子邮件。
客户评论:
```{review}```
评论情感:{sentiment}
"""
response = get_completion(prompt)
print(response)

三、引入温度系数

  • 温度系数:控制模型响应的多样性和随机性。
  • 温度影响:温度为零时,响应最可预测;温度较高时,响应更随机、多样。
  • 应用场景
    • 可预测响应:设置温度为零,适用于需要一致性的应用。
    • 创意输出:使用更高的温度,适用于需要创意和多样性的场景。
  • 实验建议:尝试不同的温度值,观察输出如何变化。
  • 温度效果:高温度下模型输出更随机,可能更有创造力但也可能更分散。
prompt = f"""
你是一名客户服务的AI助手。
你的任务是给一位重要的客户发送邮件回复。
根据通过“```”分隔的客户电子邮件生成回复,以感谢客户的评价。
如果情感是积极的或中性的,感谢他们的评价。
如果情感是消极的,道歉并建议他们联系客户服务。
请确保使用评论中的具体细节。
以简明和专业的语气写信。
以“AI客户代理”的名义签署电子邮件。
客户评价:```{review}```
评论情感:{sentiment}
"""
response = get_completion(prompt, temperature=0.7)
print(response)

总结

  • 文本扩展是利用LLM生成详细内容的有效方法,但需谨慎使用。
  • 定制客户邮件可以根据情感分析结果进行个性化回复。
  • 温度系数是调整模型创造性和随机性的重要参数。
  • 实验和调整温度系数可以优化模型输出,满足不同应用需求。