developer.chat
12 May 2024
category
什么是LLM Guard?
LLM Guard通过提供消毒、检测有害语言、防止数据泄露和抵抗即时注入攻击,确保您与LLM的交互保持安全。
安装
下载软件包,开始LLM Guard之旅:
pip install llm-guard
入门
重要提示:
- LLM Guard是为在生产环境中轻松集成和部署而设计的。虽然它已经准备好开箱即用,但请注意,我们正在不断改进和更新存储库。
- 基本功能需要有限数量的库。当您探索更高级的功能时,将自动安装必要的库。
- 确保您使用的是Python 3.9或更高版本。使用:python--version进行确认。
库安装问题?考虑升级pip:python-m pip-install--upgrade pip。
示例:
- Get started with ChatGPT and LLM Guard.
攻击
本节概述了可以针对大型语言模型(LLM)发起的攻击范围,并演示LLM Guard如何针对这些威胁提供强大的保护。
NIST值得信赖和负责任的人工智能
根据NIST值得信赖和负责任的人工智能框架,对包括LLM在内的生成型人工智能系统的攻击大致可分为四类。LLM Guard旨在有效对抗每一类:
1.可用性细分
针对LLM可用性的攻击旨在扰乱其正常操作。拒绝服务(DoS)攻击等方法很常见。LLM Guard通过以下方式对抗这些:
- TokenLimit输入
...
2.违反诚信
这些攻击往往通过注入恶意提示来破坏LLM的完整性。LLM Guard通过各种扫描仪保护完整性,包括:
- 即时注入
- 语言输入和输出
- 语言相同
- 相关性输出
- 事实一致性输出
- 禁止主题输入和输出
- ...
3.隐私泄露
这些攻击试图通过从LLM中提取敏感信息来损害隐私。LLM Guard通过以下方式保护隐私:
- 匿名输入
- 敏感输出
- 机密输入
- ...
4.滥用
滥用攻击涉及使用LLM生成有害内容。LLM Guard通过以下方式缓解这些风险:
- 偏置输出
- 毒性输入和输出
- 禁止竞争对手输入和输出
- ...
LLM Guard的扫描仪套件全面解决了每一类攻击,提供了多层防御机制,以确保LLM的安全和负责任使用。
最佳实践
性能优化
- 基准分析:在选择扫描仪之前,了解它们在不同实例上的性能至关重要。查看每个扫描仪的基准,以便根据您的具体要求做出明智的决定。
- 型号大小权衡:选择更小的型号将加快处理速度,减少延迟。然而,这是以准确性为代价的。我们正在积极致力于提供具有最小精度权衡的紧凑型版本。
- 使用ONNX Runtime进行CPU推理:ONNX Run是用于机器学习模型的高性能推理引擎。如果可能,我们建议使用ONNX Runtime为模型提供服务。
- 调谐变压器kwargs:变压器有各种参数,可以进行调谐以优化性能。例如,low_cpu_mem_usage,它通过利用Accelerate库来帮助使用更少的内存。
阅读有关优化策略的更多信息
服务配置
- 快速故障模式:在服务时启用fail_Fast模式,以确保提前退出,防止等待所有扫描仪完成,从而优化响应时间。
- 扫描仪选择:评估不同扫描仪与您的用例的相关性。与其同步使用所有扫描仪(这可能会使系统不堪重负),不如考虑异步使用它们。这种方法增强了可观察性,有助于精确调试和性能监控。
- 请求采样:对请求样本运行较慢的扫描程序,以减少总体延迟。当系统处于重负载下时,这种方法尤其有用。
可观察性和调试
- 日志记录和度量:实现强大的日志记录和指标收集,以监控系统的性能和运行状况。
- 持续改进
- 反馈循环:与系统用户建立反馈循环,以了解库在现实场景中的表现,并收集改进建议。
- 定期更新和测试:使用最新版本的llm-guard保持更新,并确保在生产设置中推出更新之前在暂存环境中进行彻底测试。
- 登录 发表评论