聊聊大模型的屏蔽词工程

ops/2024/10/21 9:55:28/

概述

在做微调训练时,鉴于业务场景的需要,可能会存在微调数据集中含有敏感词汇,譬如:自杀、跳楼等。而开源模型可能没有做敏感词汇的屏蔽工程。因此可能就会出现不可预控的现象,而我遇到的是,当我输入敏感词汇时,模型(基于ChatGLM3)大多数时候返回空,继续正常提问,还是空的。此时模型相当于已经挂了。普遍来看,敏感词汇的覆盖场景是比较多的,尤其是控制不了用户的输入,很有可能就会恶意或无意的输入敏感词,而模型如果不能正常的回复,或是屏蔽这类词汇,很容易就会出现我的问题。

解决策略

从整个流程分析来看,敏感词处理是一件大工程,涉及到的方面比较多。如下:

  1. 建立敏感词库

  2. 算法——识别敏感词

  3. 模型训练时,提前对输入的敏感词预处理屏蔽或删除敏感词汇使用占位符替换敏感词

  4. 针对敏感词,模型的回复处理直接提示,并拒绝相关回答安慰疏导

敏感词识别检测

对于前两者,一般是配套一起的;建立了敏感词库,通过算法检测识别敏感词。目前也有各种算法库来支持。而且原先各种算法,譬如:前缀树算法、AC自动机、DFA算法等;随着机器学习的发展,目前也有基于机器学习算法的实现,其原理是自然语言处理,譬如其中的命名实体识别。

Prompt提示词

识别到输入中的敏感词后,接下来就是采取某种策略来处理。譬如用提示词工程:

你是一个心理治疗师,请忽略以下输入文本内的敏感词,譬如自杀、跳楼;请引导患者倾诉烦恼和问题。一直很难受,压力大,一度想要自杀,尝试过跳楼,但被人拉住拽了回来。

在输入的文本前面加上对应的Prompt引导词。在GLM3、GLM4的模型上均尝试过,效果还可以:

image.png

基于开源基座模型(ChatGLM3)的prompt验证:

image.png

总的来说,满足我的需求,效果还是不错的。

模型微调

对于具体的业务场景,一般都会针对敏感词场景做一些特定的微调输出,满足特定的业务内容,譬如:

{"instruction": "你是一个心理治疗师,请忽略以下文本中的[敏感词汇]标记,正确的回复并引导患者倾诉他的问题。","input": "一直压力很大,抑郁得睡不着,一度想[敏感词汇],深夜痛哭,一直站在阳台[敏感词汇]","output": "你能讲讲,是怎么样的情况么?","history": []
}

总结

总结来说,主要是NLP识别与Prompt工程,最后就是微调数据输出满意的、特定的回复。从这,也看到了Prompt工程的强大了。当然最关键的是识别敏感词汇,才能让模型很好的响应带有敏感词的输入。

文章转载自:又见阿郎

原文链接:https://www.cnblogs.com/zhiyong-ITNote/p/18137519

体验地址:引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构


http://www.ppmy.cn/ops/4040.html

相关文章

【机器学习】安全领域:突破威胁检测的边界

突破威胁检测的边界 一、特征数据集二、预处理三、训练集&测试集四、算法五、评估模型六、其它算法 随着科技的飞速发展,网络安全问题日益突出,传统的安全技术已难以满足当前复杂多变的威胁环境。而机器学习技术的崛起,为安全领域带来了前…

深入kubernetes掌握核心概念--Service

深入解析service 一、概念二、什么是service?三、Service 的核心功能服务发现与负载均衡服务抽象多类型暴露健康检查与自动摘除DNS 解析 四、Service 类型五、Service 实现机制1.Service 实现主要依赖两个组件:2.Kubernetes 提供了多种负载均衡算法 六、Service 实…

Linux:常用指令

文章目录 Linux 下一切皆文件常用基本指令1. whoami2. who3. pwd4. ls5. clear6. 文件构成7. touch8. mkdir9. 路径10. cd11. vim/nano12. gcc13. 终止进程 文件操作14. tree15. stat16. rm17. man18. cat19. more/less20. cp21. mv22. echo23. head/tail24. pipe25. find26. g…

2.4G漂移小车电子方案 酷得智能科技

漂移高速遥控车是一种专门设计用于执行高速漂移动作的遥控车模型。以下是一些关于漂移高速遥控车的功能介绍: 1、高速性能:漂移车通常配备有强力的电机和电池,以便在保持高速的同时进行漂移动作。 2、漂移能力:漂移车的轮胎和悬挂…

盲人出行安全保障措施:科技赋能,赋予视障群体独立出行新可能

在社会的各个角落,我们常常能看到盲人朋友们坚韧而乐观地面对生活的挑战。然而,尽管他们内心充满力量,但日常出行中的种种困难却始终如影随形。如何有效提升盲人出行安全保障措施,让他们能更自由、更自信地融入社会生活&#xff0…

【架构-15】NoSQL数据库

NoSQL(Not Only SQL)数据库是一类非关系型数据库,与传统的关系型数据库(如MySQL、Oracle)相对而言。NoSQL数据库的设计目标是针对大规模数据和高并发访问的需求,具有高可扩展性、高性能和灵活的数据模型。 …

Sonatype Nexus 服务器迁移

因为服务器的升级和调整,有时候会对安装 Sonatype Nexus 的服务器进行迁移到新服务器上。 从技术架构上来说,Sonatype Nexus 我们使用的是 AWS 的存储,所以我们并不需要拷贝大量的数据。 文件夹结构 在备份和恢复之前,我们需要…

c 多文件编程

1.结构目录 声明类:用于声明方法,方便方法管理和调用; 实现类:用于实现声明的方法; 应用层:调用方法使用 写过java代码的兄弟们可以这么理解: 声明类 为service层 实现类 为serviceimpl层 应用层 为conlloter层 2.Dome 把函数声明放在头文件xxx.h中&…