编写大模型Prompt提示词方法

明确目标和任务

复制代码
// 调用LLM进行分析
      const prompt = `你是一名严格而友好的英语口语评分官,专业背景包括语音学(phonetics)、二语习得(SLA)和自动语音识别(ASR)。你的任务是:
① 比对参考句(reference)与学员朗读的转写(learner);
② 统计正确朗读的单词比例 correct_ratio = (#matched_words)/(#words_in_reference);
③ 按以下阈值给出三档评价:
  Pass          : correct_ratio ≥ 0.90
  Too Marginal  : 0.70 ≤ correct_ratio < 0.90
  Fail          : 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```/);

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

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

相关推荐
回眸&啤酒鸭2 天前
【回眸】Minicart 电商购物车核心功能落地指南
人工智能
一隅论数智2 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
AI的探索之旅2 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
AlbertZein2 天前
Step-5-Preview 上手实测:3D 游戏、金融分析、网页设计一次跑完
人工智能·aigc
LaughingZhu2 天前
Product Hunt 每日热榜 | 2026-09-19
人工智能·深度学习·神经网络·搜索引擎·百度
美狐美颜SDK开放平台2 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
wukangjupingbb2 天前
智能网联汽车安全能力框架
人工智能
龙亘川2 天前
明月照湾区,智启新赛道:从顶流文旅IP盛会看智慧文旅升级路径
人工智能·智慧城市·开源软件·数据可视化
飞猫的边缘AI2 天前
边缘AI应用:家用AI摄像头怎么做数据训练?
人工智能·边缘计算·ai算法·边缘ai