编写大模型Prompt提示词方法

明确目标和任务

// 调用LLM进行分析const prompt = `你是一名严格而友好的英语口语评分官,专业背景包括语音学(phonetics)、二语习得(SLA)和自动语音识别(ASR)。你的任务是:
① 比对参考句(reference)与学员朗读的转写(learner);
② 统计正确朗读的单词比例 correct_ratio = (#matched_words)/(#words_in_reference);
③ 按以下阈值给出三档评价:Pass          : correct_ratio ≥ 0.90Too Marginal  : 0.70 ≤ correct_ratio < 0.90Fail          : correct_ratio < 0.70
④ 输出 JSON,字段包括- "classification": "Pass" / "Too Marginal" / "Fail"- "correct_ratio": (保留两位小数)- "missing_or_wrong": [列出没读出或明显读错的单词]参考句: "${currentSentence.text}"
学员朗读: "${recognizedText}"`;
  • 核心功能:在这个提示词中,核心目标是让大模型充当英语口语评分官,对学员朗读进行评估并输出特定格式的结果。所以,编写提示词时要清晰定义模型的任务,避免模糊不清。例如,明确要求统计正确朗读单词比例、给出评价等级以及列出错误单词等。
  • 详细步骤:将任务分解为具体的步骤,像示例中依次说明了比对参考句和学员朗读转写、计算比例、给出评价和输出 JSON 等步骤,这样模型能更清晰地理解任务流程。

提供必要信息

  • 参考信息:为模型提供足够的参考信息,如参考句和学员朗读的转写内容。在提示词中使用变量插值(如 ${currentSentence.text} 和 ${recognizedText}),方便在实际使用时动态替换具体内容。
  • 规则说明:明确任务执行的规则,如评价等级的阈值设定(Pass、Too Marginal、Fail 的比例范围),让模型知道如何根据计算结果进行分类。

规定输出格式

  • 数据结构:清晰规定输出的格式,这里要求输出 JSON,并明确列出 JSON 的字段("classification"、"correct_ratio"、"missing_or_wrong"),有助于模型生成符合要求的结果,也方便后续开发中对结果进行处理。
  • 数据类型和精度:对输出的数据类型和精度进行说明,如 "correct_ratio" 要求保留两位小数,避免模型输出不符合预期的数据。

编写提示词的注意点

语言简洁明了

  • 避免歧义:使用简洁、准确的语言,避免使用模糊或容易引起歧义的词汇和句子。例如,在描述任务时,使用具体的动词和明确的表述,让模型能准确理解意图。
  • 逻辑连贯:提示词的逻辑要连贯,各步骤之间要有合理的顺序和衔接,便于模型按照顺序执行任务。

提供示例(可选但推荐)

  • 辅助理解:如果任务比较复杂,提供示例可以帮助模型更好地理解任务要求。例如,可以给出一个简单的参考句、学员朗读转写内容以及对应的输出 JSON 示例,让模型更直观地了解期望的输出形式。

考虑模型能力

  • 适配模型:不同的大模型有不同的能力和特点,编写提示词时要考虑模型的理解能力和输出能力。避免提出超出模型能力范围的要求,确保提示词与模型的适配性。

实际开发中的返回及处理

返回内容

根据提示词的要求,大模型会返回一个 JSON 对象,示例如下:

{"code": 0,"message": "","data": {"input_token_size": 260,"output_token_size": 241,"result": "根据您提供的参考句和学员朗读的内容,两者完全一致。这意味着学员正确地朗读了所有的单词。\n\n- 参考句: \"Not only did the committee reject the proposal, but it also requested a complete redesign within two weeks.\"\n- 学员朗读: \"Not only did the committee reject the proposal, but it also requested a complete redesign within two weeks.\"\n\n基于此,我们可以计算出正确的单词比例 `correct_ratio` 为 1.00(即100%),因为没有单词被遗漏或错误发音。\n\n按照给定的评价标准:\n- Pass: 如果 `correct_ratio` ≥ 0.90\n- Too Marginal: 如果 0.70 ≤ `correct_ratio` \u003c 0.90\n- Fail: 如果`correct_ratio` \u003c 0.70\n\n该情况属于 \"Pass\" 级别。\n\n因此,输出的 JSON 如下:\n\n```json\n{\n  \"classification\": \"Pass\",\n  \"correct_ratio\": \"1.00\",\n \"missing_or_wrong\": []\n}\n```\n\n这表明学员的表现非常好,没有任何单词被遗漏或错误发音。"}
}

处理返回结果

在实际开发中,需要对返回的 JSON 结果进行处理。以下是一个简单的 JavaScript 示例,展示如何解析和使用返回的结果:

const llmResponse = await CallLLM(prompt, SupportLLM.TONGYIQIANWEN);const llmResult = await llmResponse.json();if (llmResult.code !== 0) {throw new Error(llmResult.msg || 'AI分析失败');}// 从返回的文本中提取 JSON 部分const resultText = llmResult.data.result;const jsonMatch = resultText.match(/```json\n([\s\S]*?)\n```/);

通过以上步骤,你可以在实际开发中有效地编写提示词,并处理大模型返回的结果。

注意⚠️:仅供参考!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/79150.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/79150.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MCP系列(一)什么是MCP?

MCP 是什么&#xff1a;从 USB-C 到 AI 的「万能接口」哲学 MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09; 是Anthropic于2024年11月推出的AI跨系统交互标准&#xff0c;专为解决LLM&#xff08;大语言模型&#xff09;的「数字失语症」——让…

NoMachine 将虚拟显示器改为物理显示器

一、前言 大多数服务器需求是设置为虚拟显示器&#xff0c;因为服务器本身不接物理的显示器。但我的需求不太一样&#xff0c;服务器就在身边&#xff0c;有时候关闭远控也需要实时监测&#xff0c;所以接了物理的显示器。 NoMachine 默认会为用户创建一个新的桌面会话&#xf…

YOLOv8 优化:基于 Damo-YOLO 与 DyHead 检测头融合的创新研究

文章目录 YOLOv8 的背景与发展Damo-YOLO 的优势与特点DyHead 检测头的创新之处融合 Damo-YOLO 与 DyHead 检测头的思路融合后的模型架构融合模型的代码实现导入必要的库定义 Damo-YOLO 的主干网络定义特征金字塔网络&#xff08;FPN&#xff09;定义 DyHead 检测头定义融合后的…

关税冲击下,FBA国际物流企业如何靠智能拓客跑出增长“加速度”?

国际物流行业正迎来前所未有的增长机遇。据中研普华最新报告&#xff0c;2025年全球物流市场规模已突破6.27万亿美元&#xff0c;其中中国跨境物流市场预计达2.71万亿元。在全球化与数字化双轮驱动下&#xff0c;国际物流从“规模扩张”迈向“价值重构”。可以说&#xff0c;国…

《内存单位:解锁数字世界的“度量衡”》

&#x1f680;个人主页&#xff1a;BabyZZの秘密日记 &#x1f4d6;收入专栏&#xff1a;C语言 &#x1f30d;文章目入 一、基础单位&#xff1a;字节&#xff08;Byte&#xff09;二、进阶单位&#xff1a;千字节&#xff08;KB&#xff09;、兆字节&#xff08;MB&#xff09…

PyQt 探索QMainWindow:打造专业的PyQt5主窗

在PyQt5的世界里&#xff0c;窗口的创建和管理是构建图形用户界面&#xff08;GUI&#xff09;的基础。QMainWindow作为主窗口类&#xff0c;为开发者提供了强大而灵活的应用程序框架。今天&#xff0c;就让我们一起深入了解QMainWindow的奥秘。 QMainWindow简介 QMainWindow…

Missashe高数强化学习笔记(随时更新)

Missashe高数强化学习笔记 说明&#xff1a;这篇笔记用于博主对高数强化课所学进行记录和总结。由于部分内容写在博主的日记博客里&#xff0c;所以博主会不定期将其重新copy到本篇笔记里。 第一章 函数极限连续 第二章 一元函数微分学 第三章 一元函数积分学 第一节 不定…

Ruby 字符串(String)

Ruby 字符串&#xff08;String&#xff09; 引言 在编程语言中&#xff0c;字符串是表示文本数据的一种基本数据类型。在Ruby中&#xff0c;字符串处理是日常编程中非常常见的一项任务。本文将详细介绍Ruby中的字符串&#xff08;String&#xff09;类型&#xff0c;包括其创…

【wpf】12 在WPF中实现HTTP通信:封装HttpClient的最佳实践

一、背景介绍 在现代桌面应用开发中&#xff0c;网络通信是不可或缺的能力。WPF作为.NET平台下的桌面开发框架&#xff0c;可通过HttpClient轻松实现与后端API的交互。本文将以一个实际的HttpsMessages工具类为例&#xff0c;讲解如何在WPF中安全高效地封装HTTP通信模块。 二、…

【2025最新】gitee+pycharm完成项目的上传与管理

再见了误删、误改以及不知道动了哪里突然就不能运行的整个项目&#xff01; 之前做过一次全流程&#xff01;结果没有及时记录文档&#xff0c;很快就忘记了&#xff0c;每次从头开始就觉得有很大的阻力&#xff0c;不想搞。导致每次误删和项目出bug都非常痛苦。 可见&#x…

ACTF2025 - Web writeup

ACTF2025 - Web writeup ACTF upload 进去后是一个登录界面&#xff0c;输入用户名后登录&#xff0c;然后到一个文件上传的界面。 在 /upload?file_path 处&#xff0c;可以实现任意文件读取&#xff0c;文件内容保存在 img 标签中的 base64 值中。 示例请求&#xff1a;…

BERT模型讲解

BERT的模型架构 BERT: Bidirectional Encoder Representations from Transformers BERT这个名称直接反映了&#xff1a;它是一个基于Transformer编码器的双向表示模型。BERT通过堆叠多层编码器来构建深度模型。举例来说&#xff1a; BERT-Base&#xff1a;堆叠了12层Encoder&a…

权限控制模型全解析:RBAC、ACL、ABAC 与现代混合方案

权限控制模型全解析&#xff1a;RBAC、ACL、ABAC 与现代混合方案 在企业信息系统、SaaS 应用、安全平台中&#xff0c;权限控制模型是确保用户访问安全和功能隔离的基础架构设计之一。本文将系统性梳理常见的权限控制模型&#xff0c;包括 RBAC、ACL、ABAC、DAC、MAC、ReBAC 等…

一些模型测试中的BUG和可能解决方法

一些模型测试中的BUG和可能解决方法 模型一直重复反馈相同内容的问题查找思路 如下顺序也是排查优先级 检查提示词和上下文,保证提示词中没有类似的要求,然后再查看上下文是不是占满了token长度。检查一下选择的model是不是本身就有这样的问题尝试增加repeat_penalty(1.05、…

Kafka的Log Compaction原理是什么?

Kafka的Log Compaction&#xff08;日志压缩&#xff09;是一种独特的数据保留策略&#xff0c;其核心原理是保留每个key的最新有效记录。以下是关键原理分点说明&#xff1a; 1. 键值保留机制 通过扫描所有消息的key&#xff0c;仅保留每个key对应的最新value值。例如&#…

在 MyBatis 中实现控制台输出 SQL 参数

在 MyBatis 中实现控制台输出 SQL 参数&#xff0c;可通过以下方案实现&#xff1a; # 一、使用 MyBatis-Plus 的 SqlLogInterceptor&#xff08;推荐&#xff09; ‌适用场景‌&#xff1a;项目已集成 MyBatis-Plus&#xff08;3.5.3版本&#xff09; ‌配置步骤‌&#xff…

黄金、碳排放期货市场API接口文档

StockTV 提供了多种期货市场的数据接口&#xff0c;包括获取K线图表数据、查询特定期货的实时行情等。以下为对接期货市场的详细接口说明。 一、获取K线图表数据 通过调用/futures/kline接口&#xff0c;您可以获取指定期货合约的历史K线数据&#xff08;例如开盘价、最高价、…

“ES7+ React/Redux/React-Native snippets“常用快捷前缀

请注意&#xff0c;这是一个常用的列表&#xff0c;不是扩展提供的所有前缀。最完整和最新的列表请参考扩展的官方文档或在 VS Code 中查看扩展的详情页面。 React (通常用于 .js, .jsx, .ts, .tsx): rfce: React Functional Component with Export Defaultrafce: React Arro…

[Windows] 能同时打开多个图片的图像游览器JWSEE v2.0

[Windows] 能同时打开多个图片的图像游览器JWSEE 链接&#xff1a;https://pan.xunlei.com/s/VOPpO86Hu3dalYLaZ1ivcTGIA1?pwdhckf# 十多年前收藏的能同时打开多个图片的图像游览器JWSEE v2.0&#xff0c;官网已没有下载资源。 JWSEE v2.0是乌鲁木齐金维图文信息科技有限公司…

[AI Tools] Dify 工具插件上传指南:如何将插件发布到官方市场

Dify 作为开源的 LLM 应用开发平台,不仅支持本地化插件开发,也提供了插件市场机制,让开发者能够将自己构建的插件发布并供他人使用。本文将详细介绍如何将你开发的 Dify Tools 插件上传至官方插件市场,包括 README 编写、插件打包、仓库 PR 等核心步骤。 一、准备 README 文…