高通跃龙IQ-9100工业平台的开发经验分享(4): llm-重复输出与prompt工程解决方案
设备: 高通跃龙IQ-9100 EVK (SA8775P, Hexagon v73)运行时: Qualcomm Genie 1.14.0模型: Qwen2.5-7B-Instruct (w4a16, 本地编译)应用: 农业边缘 AI 咨询系统本文将分享Genie 运行时不支持 repeat_penalty 时的 LLM 重复输出解决方案。一、问题现象Qwen2.5-7B-Instruct 在 Genie 运行时上生成回答时经常出现内容重复Q: 请介绍一下量子计算 A: 量子计算是一种利用量子力学原理进行计算的技术。量子计算利用量子比特qubit代替经典计算中的比特bit。 量子计算是一种利用量子力学原理进行计算的技术。量子计算利用量子比特qubit代替经典计算中的比特bit。 量子计算是一种利用量子力学原理进行...整段内容循环重复直到达到最大 token 数。这个问题在开放式问题“请介绍…”、“什么是…”上尤其明显而对于有明确答案的问题“23等于几”则不太会触发。二、分析为什么常规方案不适用2.1repeat-penalty不被支持大多数 LLM 推理框架如 llama.cpp、vLLM支持repeat-penalty重复惩罚采样参数用于降低已出现 token 的生成概率。这是抑制重复输出的标准方案。但Genie Runtime 1.14.0 不支持repeat-penalty。在genie_config.json的sampler配置中设置此参数会被直接忽略。Genie 的采样器仅支持以下参数参数支持状态seed✅ 支持temp✅ 支持top-k✅ 支持top-p✅ 支持repeat-penalty❌ 不支持2.2 单独调整采样参数效果有限降低temp、top-k、top-p可以在一定程度上减少重复但无法完全消除。例如配置重复频率temp0.8, top-k40, top-p0.95默认频繁重复temp0.6, top-k30, top-p0.85偶尔重复temp0.3, top-k10, top-p0.7减少但仍存在过于保守的采样参数会导致回答单调、缺乏多样性。需要一个不依赖采样器参数的解决方案。三、解决方案ChatML System PromptQwen2.5-7B-Instruct 使用 ChatML 格式的对话模板。通过在 system prompt 中加入明确的反重复指令可以在模型生成层面抑制重复。3.1 有效的 system prompt|im_start|system You are an agricultural AI assistant. Keep your answers concise. Do not repeat yourself.|im_end| |im_start|user 请介绍一下量子计算|im_end| |im_start|assistant其中“Do not repeat yourself”是最关键的一句。3.2 效果对比配置重复情况无 system prompt频繁重复system prompt 但无反重复指令仍然重复system prompt “Do not repeat yourself”不再重复system prompt “Do not repeat yourself” 调整采样参数不再重复回答质量进一步提升“Do not repeat yourself” 是单一最有效的措施。在此基础上配合适度的采样参数调整temp0.6, top-k30, top-p0.85效果最佳。四、在农业 AI 应用中的实际配置我们的应用场景是在 IQ-9100 边缘设备上运行农业咨询系统接入温湿度传感器数据通过 LLM 提供种植建议。4.1 完整的 prompt 构造应用在每次用户提问时动态注入当前传感器数据到 system prompt|im_start|system You are an agricultural AI assistant. Current sensor readings: Temperature 23.6°C, Humidity 56.2%. Keep your answers concise and to the point. Do not repeat yourself.|im_end| |im_start|user 现在适合浇水吗|im_end| |im_start|assistant4.2 genie_config.json 采样参数{sampler:{version:1,seed:42,temp:0.6,top-k:30,top-p:0.85}}4.3 实际效果中英文回答均无重复回答引用实际传感器数据“当前温度 23.6°C…”单次回答时间 3–13 秒取决于输出长度TTFT 约 176 mstoken 生成速率约 9.2 tok/s五、为什么 prompt 指令能替代 repeat_penaltyrepeat_penalty在采样阶段降低已出现 token 的 logits 概率——这是一个后处理机制。而 system prompt 中的 “Do not repeat yourself” 在模型生成阶段就起作用——它作为注意力机制的一部分影响模型内部的状态传播。对于经过 instruction tuning 的模型如 Qwen2.5-Instruct模型能够理解并遵循这类行为约束指令。两者的区别机制作用阶段原理repeat_penalty采样后处理降低已出现 token 的概率system prompt 指令模型生成通过注意力机制影响内部状态在没有repeat_penalty可用的情况下prompt 指令提供了一个有效的替代方案——前提是模型经过了充分的 instruction tuning。六、总结Genie Runtime 1.14.0 不支持repeat-penalty采样参数。在genie_config.json中设置该参数会被忽略。ChatML system prompt 中的 “Do not repeat yourself” 是最有效的替代方案。它在模型生成阶段抑制重复不依赖采样器功能。配合适度的采样参数调整temp0.6, top-k30, top-p0.85可以进一步提升回答质量。该方案适用于所有经过 instruction tuning 的模型。在应用中将反重复指令纳入标准的 system prompt 模板即可。

相关新闻

高通跃龙IQ-9100工业平台的开发经验分享(3): weights-packing-CLI与PythonAPI对比

高通跃龙IQ-9100工业平台的开发经验分享(3): weights-packing-CLI与PythonAPI对比

设备: 高通跃龙IQ-9100 (IQ-9075, SA8775P同样适用, Hexagon v73, 双 CDSP) 模型: Qwen2.5-7B-Instruct (w4a16 混合精度量化,28 层 Transformer) SDK: QAIRT 2.42.0.251225 日期: 2026-07-19概述 QAIRT SDK 提供两条编译路径:CLI 工具(qnn-c…

2026/10/4 14:35:20 阅读更多 →
高通跃龙IQ-9100工业平台的开发经验分享(2): 7B模型推理乱码的根因追踪

高通跃龙IQ-9100工业平台的开发经验分享(2): 7B模型推理乱码的根因追踪

设备: 高通跃龙IQ-9100 EVK (SA8775P, Hexagon v73, 双 CDSP) 模型: Qwen2.5-7B-Instruct (w4a16 混合精度量化,28 层 Transformer) SDK: QAIRT 2.42 (本地编译) Genie 1.14.0 推理运行时 日期: 2026-07-23 一个缺失的编译参数导致了数周的调试——排除了 9 个错误…

2026/10/14 15:17:18 阅读更多 →
智能体面试准备(二十七):人机协作 HITL——审批流、接管、反馈闭环与可审计

智能体面试准备(二十七):人机协作 HITL——审批流、接管、反馈闭环与可审计

智能体面试准备(二十七):人机协作 HITL——审批流、接管、反馈闭环与可审计前面讲了多模态 Agent(B25)、成本工程(B26),把 Agent 的"感知"和"算账"都补齐了。但…

2026/10/7 10:24:21 阅读更多 →

最新新闻

2026年最新--区块链运营岗面试题库(100题)

2026年最新--区块链运营岗面试题库(100题)

一、行业趋势与运营思维(1-10题) 1. 2026年加密行业营销的核心趋势有哪些?请结合“用户质量优先”的转变,说明运营策略应如何调整。 2026年加密营销的7大核心趋势涵盖绩效营销、内容创作、渠道多元化、活动体验、激励机制以及AI驱动的运营。最关键的转变是:Fintech和Web…

2026/10/14 15:17:11 阅读更多 →
C# GPS定位到地图显示:NMEA解析、坐标转换与GMap.NET实战

C# GPS定位到地图显示:NMEA解析、坐标转换与GMap.NET实战

简介:面向C#开发者和GIS初学者的GPS定位与地图综合示例源码。项目基于.NET框架,展示如何使用GeoCoordinateWatcher获取NMEA GPS数据,并通过Bing Maps控件实现地图加载、缩放、平移及城市名地理编码定位,涵盖地图事件处理、UI布局、…

2026/10/14 15:17:11 阅读更多 →
HTML表单与表格实战:学生注册表单与课程表制作全解析

HTML表单与表格实战:学生注册表单与课程表制作全解析

做了几年前端开发,接手过不少新人带教和作业评审。说句实在话,不管后来技术栈换成React还是Vue,凡是能把HTML里的表单和表格玩明白的,上手业务系统的效率往往都不会太差。这两块看起来基础,里面的门道却一点也不少——…

2026/10/14 15:17:11 阅读更多 →
工业AI检测项目为何死于“全产线覆盖”?

工业AI检测项目为何死于“全产线覆盖”?

1. 那句“全产线覆盖”,到底杀死了什么我做了七八年机器视觉和上位机开发,前前后后参与过二十多个工业AI项目,从服装检测、3C外观检、到食品包装异物识别都碰过。如果让我总结这些项目失败的最大共性,不是算法不行,不是…

2026/10/14 15:17:11 阅读更多 →
微信小程序商城定制怎么落地?选型要点全拆解

微信小程序商城定制怎么落地?选型要点全拆解

其实, 微信小程序商城定制这事儿, 说起来就是搭建一套能够实现商品售卖、会员管理以及营销推广的线上商业闭环, 不要被“定制”这两个字给吓到了, 要知道现在的SaaS平台已经把所有的基础功能都变成了现成的模块状态, 这些模块大概占据了整体功能总量的百分之八十的比例, 因此, …

2026/10/14 15:17:11 阅读更多 →
fast-check 4.7.0 深度解析:stringMatching 支持 Unicode 属性转义与可逆的 json 生成器

fast-check 4.7.0 深度解析:stringMatching 支持 Unicode 属性转义与可逆的 json 生成器

开发工具测试 【免费下载链接】fast-check Property based testing framework for JavaScript (like QuickCheck) written in TypeScript 项目地址: https://gitcode.com/gh_mirrors/fa/fast-check 点击查看 免费下载 fast-check 4.7.0 是一个围绕"让生成器更…

2026/10/14 15:16:08 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →