第三章:Few-shot 学习¶
什么是 Few-shot¶
Few-shot(少样本)学习通过提供少量示例,让模型理解任务模式和期望输出。
基本结构¶
任务:情感分析
示例1:
输入:这个产品太棒了,用起来很顺手
输出:正面
示例2:
输入:质量一般,价格偏高
输出:中性
示例3:
输入:完全不能用,退货了
输出:负面
现在请分析:
输入:{{user_input}}
输出:
示例设计原则¶
1. 代表性¶
2. 一致性¶
# 格式一致
示例1:
输入:产品A很好用
输出:{"sentiment": "positive", "product": "产品A"}
示例2:
输入:产品B质量差
输出:{"sentiment": "negative", "product": "产品B"}
# 格式不一致(避免)
示例1:
输入:产品A很好用
输出:正面
示例2:
输入:产品B质量差
输出:{"sentiment": "negative"}
3. 多样性¶
Few-shot 变体¶
Zero-shot(零样本)¶
One-shot(单样本)¶
Many-shot(多样本)¶
实战示例¶
文本分类¶
任务:新闻分类
示例:
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。