跳转至

第三章:Few-shot 学习

什么是 Few-shot

Few-shot(少样本)学习通过提供少量示例,让模型理解任务模式和期望输出。

基本结构

任务:情感分析

示例1:
输入:这个产品太棒了,用起来很顺手
输出:正面

示例2:
输入:质量一般,价格偏高
输出:中性

示例3:
输入:完全不能用,退货了
输出:负面

现在请分析:
输入:{{user_input}}
输出:

示例设计原则

1. 代表性

# 好的示例:覆盖各种情况
示例1:正面情感
示例2:负面情感
示例3:中性情感
示例4:混合情感

# 不好的示例:只有正面
示例1:很好
示例2:很棒
示例3:优秀

2. 一致性

# 格式一致
示例1:
输入:产品A很好用
输出:{"sentiment": "positive", "product": "产品A"}

示例2:
输入:产品B质量差
输出:{"sentiment": "negative", "product": "产品B"}

# 格式不一致(避免)
示例1:
输入:产品A很好用
输出:正面

示例2:
输入:产品B质量差
输出:{"sentiment": "negative"}

3. 多样性

# 多样化的输入
示例1:简短评论(5字以内)
示例2:中等长度评论(20-50字)
示例3:长评论(100字以上)
示例4:包含表情符号的评论
示例5:包含网络用语的评论

Few-shot 变体

Zero-shot(零样本)

请判断以下评论的情感倾向(正面/负面/中性):
评论:{{comment}}
情感:

One-shot(单样本)

请判断评论的情感倾向:

示例:
评论:这个产品很好用
情感:正面

评论:{{comment}}
情感:

Many-shot(多样本)

提供5-10个示例,覆盖更多情况

实战示例

文本分类

任务:新闻分类

示例:
1. "苹果公司发布新款iPhone" → 科技
2. "央行宣布降息" → 财经
3. "某明星宣布结婚" → 娱乐
4. "国家队晋级决赛" → 体育

新闻:{{news}}
分类:

文本转换

任务:将口语转换为书面语

示例:
1. "咋回事啊" → "请问发生了什么事"
2. "这玩意儿挺好使" → "这个产品使用效果很好"
3. "不太行" → "效果不太理想"

口语:{{text}}
书面语:

代码生成

任务:根据描述生成SQL

示例:
1. "查询所有用户" → "SELECT * FROM users;"
2. "查询年龄大于18的用户" → "SELECT * FROM users WHERE age > 18;"
3. "统计每个部门的员工数" → "SELECT department, COUNT(*) FROM employees GROUP BY department;"

描述:{{description}}
SQL:

小结

本章学习了 Few-shot 学习技巧。下一章学习 Chain of Thought。