当前位置: 首页 > news >正文

github项目:llm-guard

总目录 大模型安全相关研究:https://blog.csdn.net/WhiffeYF/article/details/142132328

llm-guard:https://github.com/protectai/llm-guard

https://www.doubao.com/chat/6928083396193026

速览

llm-guard 是由 Protect AI 开发的一个全面的工具库,旨在增强大语言模型(LLMs)交互的安全性。以下是该仓库的详细介绍:

主要特性

  • 安全防护:提供输入和输出的清理、有害语言检测、数据泄漏预防以及对提示注入攻击的抵抗能力,确保与大语言模型的交互安全可靠。
  • 易于集成:设计用于在生产环境中轻松集成和部署,开箱即用,同时会根据需要自动安装必要的库。
  • 丰富的扫描器:支持多种输入和输出扫描器,涵盖从敏感信息检测到语言和代码检查等多个方面。

仓库结构

仓库的主要目录和文件结构如下:

.editorconfig
.gitignore
.gitleaks.toml
.markdownlint.yml
.pre-commit-config.yaml
.ruff.toml
CONTRIBUTING.md
LICENSE
Makefile
README.md
SECURITY.md
mkdocs.yml
pyproject.toml
pyrightconfig.json
tests/__init__.pyinput_scanners/output_scanners/test_evaluate.pytest_util.py
examples/amazon_bedrock.pygoogle_gemini.pylangchain.pyopenai_api.pyopenai_streaming.py
docs/CNAMEapi/assets/changelog.mdcustomization/get_started/...
llm_guard/...
.github/...
llm_guard_api/...
benchmarks/...

主要组件

扫描器
  • 输入扫描器(Input Scanners):对输入到 LLM 的提示进行检查,包括匿名化、禁止特定代码、检测提示注入、检查毒性等。例如:
    • Anonymize:对输入进行匿名化处理。
    • PromptInjection:检测提示注入攻击。
    • Secrets:使用 detect-secrets 库检测输入中的敏感信息,支持部分插件如 DropboxDetectorShopifyDetector 等,用于检测特定服务的令牌。
  • 输出扫描器(Output Scanners):对 LLM 的输出进行检查,确保输出的安全性和合规性。例如:
    • Sensitive:检测输出中的敏感(PII)数据。
    • JSON:检测、验证和修复输出中的 JSON 结构。
示例代码(Examples)

提供了多个示例脚本,展示如何在不同的场景中使用 llm-guard,包括与 Amazon Bedrock、OpenAI API 等的集成。例如 amazon_bedrock.py 展示了如何使用 llm-guard 与 Amazon Bedrock 代理进行交互:

import boto3from llm_guard import scan_output, scan_prompt
from llm_guard.input_scanners import Anonymize, PromptInjection, TokenLimit, Toxicity
from llm_guard.output_scanners import Deanonymize, NoRefusal, Relevance, Sensitive
from llm_guard.vault import Vault# ... 其他代码 ...VAULT = Vault()
INPUT_SCANNERS = [Anonymize(VAULT), Toxicity(), TokenLimit(), PromptInjection()]
OUTPUT_SCANNERS = [Deanonymize(VAULT), NoRefusal(), Relevance(), Sensitive()]PROMPT = "Make an SQL insert statement ..."sanitized_prompt, results_valid, results_score = scan_prompt(INPUT_SCANNERS, PROMPT)
# ... 其他代码 ...
文档(Docs)

包含详细的文档,帮助用户了解如何使用 llm-guard,包括入门指南、API 文档、变更日志等。

安装和使用

  • 安装:使用 pip 安装 llm-guard
pip install llm-guard
  • 使用示例:可以参考 examples 目录下的脚本,了解如何在不同的场景中使用 llm-guard

社区和贡献

llm-guard 是一个开源项目,欢迎社区成员参与贡献,包括修复 bug、提出新功能建议、改进文档等。用户可以在 GitHub 上给项目加星支持。

http://www.xdnf.cn/news/642205.html

相关文章:

  • 函数[x]和{x}在数论中的应用
  • 李沐《动手学深度学习》| 4.4 模型的选择、过拟合和欠拟合.md
  • STL的map和set(关联式容器深度解析)
  • 2025第三届黄河流域网络安全技能挑战赛--Crypto--WriteUp
  • 网络原理入门详解:从零理解互联网如何工作
  • Modbus协议原理
  • 【Hive 开发进阶】窗口函数深度解析:OVER/NTILE/RANK 实战案例与行转列高级技巧
  • Day02
  • springboot日志
  • NotePad++编辑Linux服务器文档
  • 安全权限管理:从零到精通Android动态权限请求机制
  • CV中常用Backbone-3:Clip/SAM原理以及代码操作
  • Spring Boot 项目中常用的 ORM 框架 (JPA/Hibernate) 在性能方面有哪些需要注意的点?
  • 2025年- H50-Lc158 --25. k个一组翻转链表(链表,双指针,虚拟头节点)--Java版
  • Muduo网络库流程分析
  • quill 富文本多张图片排序
  • SRS流媒体服务器之RTC播放环境搭建
  • 揭开C语言指针的神秘面纱:地址、变量与“指向”的力量
  • systemverilog的单精度浮点和双精度浮点
  • AI测试怎么做投入产出比分析以及人员分配?
  • YOLOV8涨点技巧之DSS模块(一种轻量化火灾检测模型)
  • Unity引擎源码-物理系统详解-其三
  • C++23 std::out_ptr 和 std::inout_ptr:提升 C 互操作性
  • 锁与死锁的诊断:如何通过 SHOW ENGINE INNODB STATUS 解锁瓶颈
  • 加密货币投资亏损后,能否以“欺诈”或“不当销售”索赔?
  • 如何在 Windows 11 上安装 Ubuntu 20.04 WSL2
  • 《红警2000》游戏信息
  • YOLOv8源码修改(5)- YOLO知识蒸馏(下)设置蒸馏超参数:以yolov8-pose为例
  • Karakeep | 支持Docker/NAS 私有化部署!稍后阅读工具告别云端依赖,让知识收藏更有序
  • 机器学习---特征降维