当前位置: 首页 > ai >正文

【AI大模型学习路线】第一阶段之大模型开发基础——第四章(提示工程技术-1)Zero-shot与Few-shot。

【AI大模型学习路线】第一阶段之大模型开发基础——第四章(提示工程技术-1)Zero-shot与Few-shot。

【AI大模型学习路线】第一阶段之大模型开发基础——第四章(提示工程技术-1)Zero-shot与Few-shot。


文章目录

  • 【AI大模型学习路线】第一阶段之大模型开发基础——第四章(提示工程技术-1)Zero-shot与Few-shot。
  • 前言
    • 1 背景与前景
    • 2 Zero-Shot 提示
      • 2.1 定义与原理
      • 2.2 优缺点
      • 2.3 Python 示例
    • 3 Few-Shot 提示
      • 3.1 定义与原理
      • 3.2 优缺点
      • 3.3 Python 示例
    • 4 对比与选择
    • 5 最佳实践


欢迎宝子们点赞、关注、收藏!欢迎宝子们批评指正!
祝所有的硕博生都能遇到好的导师!好的审稿人!好的同门!顺利毕业!

大多数高校硕博生毕业要求需要参加学术会议,发表EI或者SCI检索的学术论文会议论文。详细信息可关注VX “学术会议小灵通”或参考学术信息专栏:https://fighting.blog.csdn.net/article/details/146692330


前言

以下内容首先概括 Zero-shot 与 Few-shot 的核心差异与适用场景,然后分别详细介绍两种提示方式的定义、原理、优缺点,并给出可复制的 Python 示例,最后对比两者并给出实操建议。

随着“模型即服务”(MaaS)模式兴起,Prompt Engineering 已从探索性试错上升为系统化方法,Zero-shot 与 Few-shot 是最基础的两种技术

  • Zero-shot 通过直给指令利用模型的广泛预训练能力,无需示例即可完成任务;
  • Few-shot 则通过在 Prompt 中添加少量示例,引导模型做“上下文学习”,在复杂任务上通常效果更好。

两者各有成本与效果权衡,合理选择并结合动态模板化,可显著提升大模型应用质量与开发效率。

1 背景与前景

  • 大模型拥有海量预训练知识,能在无专门微调下“举一反三”​;
  • 同时,在少量示例条件下,模型能进一步校准输出风格与结构,提高准确性与一致性​。

随着工业界对“低成本高质量”AI 解决方案需求激增,Zero-shot 与 Few-shot 已成为大模型落地的标配技术,也催生了“Prompt 模板库”“Prompt Pattern” 与“Prompt Recipes”等工程化实践​。

2 Zero-Shot 提示

2.1 定义与原理

  • Zero-shot 提示是指在 Prompt 中不包含任何示例,仅通过自然语言指令描述任务,直接让模型发挥其预训练知识​。
  • 这一方式依赖模型的大规模自监督训练,使其能对未见过的任务做推断​。

2.2 优缺点

  • 优点:无需准备示例,Prompt 简洁;适合快速原型与多任务场景,通用性强​。
  • 缺点:对于结构化或高度专业化任务,缺乏示例指导时易出现“幻觉”或输出不稳定;对 Prompt 质量依赖更高​。

2.3 Python 示例

import os, openai
openai.api_key = os.getenv("OPENAI_API_KEY")prompt = ("You are an expert data scientist. ""Task: Explain ridge regression in simple terms."
)
resp = openai.ChatCompletion.create(model="gpt-4",messages=[{"role":"user","content":prompt}],temperature=0.2, max_tokens=150
)
print(resp.choices[0].message.content)
  • 此示例仅传入一条用户指令,无任何示例,实现 Zero-shot 调用。

3 Few-Shot 提示

3.1 定义与原理

  • Few-shot 提示是在 Prompt 中加入少量(通常 1–5 个)输入–输出示例(shots),使模型在上下文中“看到”期望的格式和风格,从而生成更符合预期的结果。

3.2 优缺点

  • 优点:通过示例示范,可大幅提升模型在特定任务上的准确性与一致性,尤其在结构化输出或多步骤推理时效果显著​。
  • 缺点:Prompt 越长,Token 消耗与延迟越高;超长示例可能触及上下文窗口限制;准备合适示例需要额外成本​。

3.3 Python 示例

import os, openai
openai.api_key = os.getenv("OPENAI_API_KEY")examples = [{"role":"user","content":"Translate to French: 'Good morning'"},{"role":"assistant","content":"Bonjour"}
]
# 新任务示例
examples.append({"role":"user","content":"Translate to French: 'How are you?'"})resp = openai.ChatCompletion.create(model="gpt-4",messages=examples,temperature=0.2, max_tokens=50
)
print(resp.choices[0].message.content)
  • 通过在 messages 中添加两个示例对,模型可在第三条 Prompt 后给出准确翻译。

4 对比与选择

在这里插入图片描述

  • 在资源受限或任务多样时,可首用 Zero-shot 快速迭代;
  • 在性能关键或对格式有严格要求时,优先 Few-shot 并优化示例集。

5 最佳实践

  • 动态模板化:将示例与指令模块化,使用 Python 的 string.Template 或 Jinja2 管理,方便批量生成与维护。
  • 示例筛选:通过嵌入检索(RAG)选出与用户输入最相似的示例,提升 Few-shot 效果。
  • 上下文裁剪:对长历史或示例做摘要或优先级排序,避免超出模型上下文窗口。
  • 自动评估:构建小规模验证集,定期测评不同 shots 数量与示例组合对性能的影响。
  • 安全与合规:在示例与输入中剔除敏感信息,并使用 system message 设定行为准则,防止模型生成不当内容​。

通过上述 Zero-shot 与 Few-shot 技术及 Python 实操示例,可在不同业务场景中灵活选择与优化提示策略,高效驾驭大模型能力。

http://www.xdnf.cn/news/3937.html

相关文章:

  • 基于 jQuery 实现灵活可配置的输入框验证功能
  • 模型 - Xiaomi MiMo
  • Sui 上线两周年,掀起增长「海啸」
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】5.3 相关性分析(PEARSON/SPEARMAN相关系数)
  • MongoDB入门详解
  • 永磁同步电机控制算法--基于PI和前馈的位置伺服控制
  • C 语言 第五章 指针(7)
  • LLM提示词设计及多轮对话优化策略在心理健康咨询场景中的应用研究
  • 从零开始学习RAG
  • Jetpack Compose 响应式布局实战:BoxWithConstraints 完全指南
  • 从0到1快速了解Redis数据库
  • 数字化转型:激活存量,引爆增量的三大核心逻辑
  • Spring-使用Java的方式配置Spring
  • 基于Python+MongoDB猫眼电影 Top100 数据爬取与存储
  • 常用CPU、GPU、NPU、DSP、ASIC等芯片区别介绍
  • RGB三原色
  • MATLAB仿真定点数转浮点数(对比VIVADO定点转浮点)
  • 【AI论文】像素修补师(PixelHacker):具有结构和语义一致性的图像修复(Image Inpainting)
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】5.2 数据分组与透视(CUBE/ROLLUP/GROUPING SETS)
  • 三十二、命名实体识别概述
  • 前端-Vue的项目流程
  • 基于EFISH-SCB-RK3576工控机/SAIL-RK3576核心板的KTV点歌主机技术方案‌(国产化替代J1900的全场景技术解析)
  • DotNetBrowser 3.2.0 版本发布啦!
  • SpringMVC——第6章:RESTFul编程风格
  • Winform(11.案例讲解1)
  • 用户模块 - IP归属地功能实现与测试
  • Cookie 与 Session详解
  • 【ArcGIS Pro微课1000例】0066:多边形要素添加折点,将曲线线段(贝塞尔、圆弧和椭圆弧)替换为线段?
  • /etc/kdump.conf 配置详解
  • 方法:批量识别图片区域文字并重命名,批量识别指定区域内容改名,基于QT和阿里云的实现方案,详细方法