找回密码
 立即注册
首页 业界区 业界 【GitHub每日速递 250917】69k 星标!这个 MCP 服务器大 ...

【GitHub每日速递 250917】69k 星标!这个 MCP 服务器大集合,竟能解锁 AI 无限可能?

凉砧掌 前天 05:58
1.png

原文:【GitHub每日速递 250917】69k 星标!这个 MCP 服务器大集合,竟能解锁 AI 无限可能?

爆火!garak——大语言模型漏洞扫描神器全揭秘

garak 是一个用于检测大语言模型漏洞的扫描工具。简单讲,它能自动发现AI模型中的安全弱点和潜在风险。适用人群:AI安全研究人员、模型开发者和测试人员。
项目地址:https://github.com/NVIDIA/garak
主要语言:Python
stars: 5.5k
核心功能

garak 是一个用于扫描大语言模型(LLM)漏洞的免费工具,也被称为生成式人工智能红队与评估套件。它可以检测LLM是否会出现诸如幻觉、数据泄露、提示注入、错误信息、毒性生成、越狱等不期望的行为,类似于网络扫描工具 nmap 或 msf / Metasploit Framework 对网络的扫描,只不过 garak 针对的是LLM。该工具结合了静态、动态和自适应探测方法,来探索LLM或对话系统可能出现的失败情况。
优势


  • 广泛的LLM支持:支持多种类型的LLM,包括Hugging Face Hub的生成模型、Replicate的文本模型、OpenAI API的聊天与续写模型、Litellm、通过REST访问的模型、gguf模型(如llama.cpp版本 >= 1046)等。
  • 丰富的探测类型:提供了多种不同类型的探测方法,如空白探测、自动攻击生成、恶意内容签名探测、延续不期望词汇探测、DAN攻击探测等,能全面检测LLM的各种潜在漏洞。
  • 详细的日志记录:生成多种日志,包括调试信息日志 garak.log、当前运行的详细JSONL报告以及记录漏洞探测命中情况的日志,方便后续分析。
  • 易于扩展:代码结构清晰,各个功能模块(如探测、检测、评估、生成器、测试框架等)都有对应的基类,用户可以继承基类开发自己的插件,并且提供了测试新代码的方法。
安装方式


  • 标准安装:使用 pip 从PyPI安装,命令为 python -m pip install -U garak。
  • 开发版本安装:从GitHub获取最新版本,命令为 python -m pip install -U git+https://github.com/NVIDIA/garak.git@main。
  • 从源代码克隆安装:可以在Conda环境中安装,具体步骤为创建并激活 garak 环境,克隆仓库,然后使用 python -m pip install -e . 进行安装。
使用方法


  • 基本语法:garak ,需要指定要扫描的模型,默认会使用所有已知的探测方法对模型进行测试。
  • 指定生成器:使用 -model_type 和 -model_name 选项指定模型类型和具体模型名称。例如,使用Hugging Face模型时,-model_type huggingface,-model_name 为模型在Hub上的名称。
  • 指定探测方法:可以使用 -probes 选项指定具体的探测方法,如 -probes promptinject 只使用PromptInject框架的方法,也可以指定具体的插件,如 -probes lmrc.SlurUsage。
示例


  • 探测ChatGPT的基于编码的提示注入漏洞:
  1. export OPENAI_API_KEY="sk-123XXXXXXXXXXXX"
  2. python3 -m garak --model_type openai --model_name gpt-3.5-turbo --probes encoding
复制代码

  • 检测Hugging Face版本的GPT2是否易受DAN 11.0攻击:
  1. python3 -m garak --model_type huggingface --model_name gpt2 --probes dan.Dan_11_0
复制代码
结果读取


  • 每个探测过程会显示进度条,生成完成后会输出对每个探测器结果的评估。如果提示尝试导致了不期望的行为,响应将标记为FAIL,并给出失败率。
  • 错误信息记录在 garak.log 中,运行详细信息记录在 .jsonl 文件中,还提供了基本的分析脚本 analyse/analyse_log.py 来输出导致最多命中的探测和提示。
代码结构


  • 探测模块(garak/probes/):包含用于生成与LLM交互的类。
  • 检测模块(garak/detectors/):用于检测LLM是否表现出特定的失败模式。
  • 评估模块(garak/evaluators/):负责评估报告方案。
  • 生成器模块(garak/generators/):包含要被探测的LLM的插件。
  • 测试框架模块(garak/harnesses/):用于组织测试过程。
  • 资源模块(resources/):包含插件所需的辅助项。
应用场景


  • 模型安全评估:在开发和部署LLM之前,使用 garak 对模型进行全面的安全检测,发现并修复潜在的漏洞,提高模型的安全性和可靠性。
  • 研究和实验:研究人员可以利用 garak 探索LLM的各种弱点,深入了解模型的行为和安全性,为改进模型提供依据。
  • 教育和学习:作为教学工具,帮助学生和开发者了解LLM的安全问题和漏洞检测方法。
AI开发者必看!高性能向量数据库Milvus的全方位揭秘

milvus 是一个高性能、可扩展的云原生向量数据库。简单讲,它专门用来快速搜索和管理大量向量数据,适合处理AI模型中的相似性匹配任务。适用人群:AI开发者、机器学习工程师、需要处理大规模向量检索的技术团队。
项目地址:https://github.com/milvus-io/milvus
主要语言:Go
stars: 37.3k
项目简介

Milvus 是一个为大规模应用而构建的高性能向量数据库,可高效组织和搜索大量非结构化数据,如文本、图像和多模态信息,为 AI 应用提供支持。它采用 Go 和 C++ 编写,实现了 CPU/GPU 的硬件加速,以达到一流的向量搜索性能。
核心功能


  • 高性能与高可用性:采用分布式架构,分离计算和存储,可水平扩展,适应不同流量模式。通过独立增加查询节点处理读密集型工作负载,增加数据节点处理写密集型工作负载来实现最佳性能。K8s 上的无状态微服务可快速从故障中恢复,支持副本机制,进一步增强容错能力和吞吐量。
  • 支持多种向量索引类型和硬件加速:分离系统和核心向量搜索引擎,支持多种为不同场景优化的向量索引类型,如 HNSW、IVF、FLAT 等,以及基于量化的变体和 mmap。针对元数据过滤和范围搜索等高级功能优化向量搜索,实现硬件加速,支持 GPU 索引。
  • 灵活的多租户和冷热存储:支持在数据库、集合、分区或分区键级别进行隔离的多租户策略,单个集群可处理大量租户,确保优化的搜索性能和灵活的访问控制。采用冷热存储机制,将频繁访问的热数据存储在内存或 SSD 中以提高性能,将访问较少的冷数据存储在成本较低的存储设备上,降低成本。
  • 支持稀疏向量的全文搜索和混合搜索:除了通过密集向量进行语义搜索外,还原生支持使用 BM25 的全文搜索以及学习型稀疏嵌入,如 SPLADE 和 BGE - M3。用户可以在同一集合中存储稀疏向量和密集向量,并定义函数对多个搜索请求的结果进行重新排序。
  • 数据安全和细粒度访问控制:通过强制用户认证、TLS 加密和基于角色的访问控制(RBAC)确保数据安全。用户认证确保只有具有有效凭证的授权用户才能访问数据库,TLS 加密保护网络内的所有通信,RBAC 允许根据用户角色分配特定权限,实现细粒度的访问控制。
快速开始

通过 pip install -U pymilvus 安装 Python SDK,然后使用 MilvusClient 创建客户端。可以创建本地向量数据库,也可以指定凭据连接到已部署的 Milvus 服务器或 Zilliz Cloud。使用客户端可以创建集合、摄入数据并执行向量搜索。
应用场景

受 AI 开发者信赖,可用于构建文本和图像搜索、检索增强生成(RAG)和推荐系统等应用,为众多初创企业和企业的关键业务提供支持。
生态系统和集成

与一系列 AI 开发工具集成,如 LangChain、LlamaIndex、OpenAI 和 HuggingFace,是生成式 AI 应用(如 RAG)的理想向量存储。还提供了方便的工具,如 pymilvus[model],用于将非结构化数据转换为向量嵌入并利用重排序模型优化搜索结果。其生态系统还包括用于 GUI 管理的 Attu、用于系统调试的 Birdwatcher、用于监控的 Prometheus/Grafana、用于数据同步的 Milvus CDC、用于数据迁移的 VTS 以及各种数据连接器。
构建要求


不同操作系统有不同的构建要求,如 Linux 系统需要 Go >= 1.21、CMake >= 3.26.4、GCC 9.5 和 Python > 3.8 且

相关推荐

您需要登录后才可以回帖 登录 | 立即注册