noah369-ux/ai-swarm-threat-intel
GitHub: noah369-ux/ai-swarm-threat-intel
一个基于多 LLM Agent 协作的自动化威胁情报系统原型,通过 Swarm 架构整合 OSINT 数据源实现从情报采集到报告生成的全流程自动化。
Stars: 0 | Forks: 0
# AI Swarm 威胁情报
[CrazyProAlbert]([object Object])
AI Swarm 是一种先进的自动化威胁情报系统,利用多个 AI agent 和 OSINT 数据源来收集、分析和关联威胁数据。
该系统的核心使用了一个 Swarm 架构,包含多个 LLM agent,它们相互通信和协作,从而实现快速、准确和全面的威胁情报收集和分析。
目录:
- [功能](#features)
- [前置条件](#prerequisites)
- [安装](#installation)
- [配置](#configuration)
- [使用方法](#usage)
- [示例](#examples)
- [主要组件](#key-components)
- [贡献](#contributing)
- [许可协议](#license)
## 功能
- **多 AI Agent 协作**:利用一组 LLM agent 同时处理不同的威胁情报任务。
- **OSINT 集成**:自动化收集 OSINT 数据,并将其整合到威胁分析流程中。
- **高级日志记录**:记录从查询到最终报告的完整过程,支持本地和远程日志记录。
- **基于 YAML 的配置**:通过 YAML 文件轻松配置系统设置、API 密钥和运行时参数。
- **异步执行**:异步处理威胁情报任务,以获得更快的结果。
- **模块化设计**:可轻松扩展新功能、agent 和 OSINT 源。
- **报告**:生成包含 YAML 头部和引用的详细威胁情报报告。
- **遥测**:遥测跟踪和路由(可配置为提供遥测数据的 Phoenix 风格 OTEL 导出,或 Langfuse)。需要 OTEL 收集器。
- **Redis 集成**:支持使用 Redis 作为异步任务的队列后端。
## 前置条件
在安装 AI Swarm 之前,请确保满足以下要求:
- Python 3.11 或更高版本
- Redis 服务器(使用 `redis://localhost:6379` 作为默认 URL)
- 一个或多个配置了 API 密钥的 LLM 提供商(OpenAI、Anthropic、Google 等)
- 用于 OSINT 服务的 API 密钥(VirusTotal、Shodan 等)(可选,但推荐)
## 安装
要安装 AI Swarm,请按照以下步骤操作:
1. 克隆代码库:
2. 切换到项目目录:
3. 安装所需的依赖项:
4. 将 `example_config.yaml` 文件复制到 `~/.config/ai_swarm/config.yaml`(如果需要,可调整路径):
5. 编辑 `~/.config/ai_swarm/config.yaml` 以包含你的 API 密钥和配置详细信息。
## 配置
AI Swarm 使用基于 YAML 的配置系统。主要的配置文件通常位于 `~/.config/ai_swarm/config.yaml`。
以下是 `example_config.yaml` 中提供的主要部分:
要配置 AI Swarm,请按如下方式编辑 `config.yaml`:
1. 打开 `~/.config/ai_swarm/config.yaml`。
2. 填写你选择的 `llm_providers` 的 API 密钥。
3. 调整 `active_agents` 以选择在分析期间将使用哪些 agent。
4. 设置日志记录级别、遥测配置和 OSINT 源首选项。
## 使用方法
要使用 AI Swarm,请运行以下命令:
如果 `config.yaml` 被放置在默认路径(`~/.config/ai_swarm/config.yaml`),它将被自动检测到。要指定自定义配置文件路径,请使用 `-c` 标志:
要使用 GUI 界面,请运行:
要查看可用选项,请使用 `-h` 标志:
## 示例
以下是一些如何使用 AI Swarm 的示例:
1. **基本查询**:
2. **详细输出**:
3. **使用自定义配置文件**:
## 主要组件
### Agent
AI Swarm 使用多个 AI agent 来处理不同的任务。默认启用的 agent 包括:
- **Analyst Agent**:分析并关联收集到的数据。
- **OSINT Agent**:处理 OSINT 数据的收集和聚合。
- **Reporting Agent**:生成详细且结构化的报告。
### 数据源
AI Swarm 使用以下数据源来收集情报:
- **VirusTotal**:用于文件、URL 和域名分析。
- **Shodan**:用于互联网连接设备的侦察。
- **AbuseIPDB**:用于 IP 地址信誉检查。
- **AlienVault OTX**:用于威胁指标和 Pulses。
### 日志记录
AI Swarm 中的日志记录系统捕获从发送给 LLM 的初始查询到最终报告生成的完整过程。日志可以存储在本地和/或远程。
### 遥测
提供 OpenTelemetry 兼容的遥测数据以监控系统性能和使用指标。如果进行了配置,数据将路由到 Phoenix 风格的 OTEL 导出器或 Langfuse。此功能需要 OTEL 收集器。
## 贡献
我们欢迎对 AI Swarm 的贡献!要贡献,请按照以下步骤操作:
1. Fork 本代码库。
2. 创建一个新分支(`git checkout -b feature/your-feature`)。
3. 提交你的更改(`git commit -m '添加了某某功能'`)。
4. 推送到该分支(`git push origin feature/your-feature`)。
5. 创建一个 Pull Request。
## 许可协议
该项目使用 GNU Affero General Public License v3.0 许可协议。有关详细信息,请参阅 [LICENSE]( ) 文件。
标签:AI集群, DAST, DLL 劫持, GPT, HTTP工具, IP 地址批量处理, PyRIT, 人工智能, 内存取证对抗, 博士研究, 多智能体系统, 大语言模型, 威胁情报, 安全大模型, 开发者工具, 恶意软件分析, 搜索引擎查询, 攻击者思维, 无线安全, 深度学习, 漏洞管理, 用户代理, 用户模式Hook绕过, 网络安全, 网络安全原型, 自动化威胁分析, 蓝军, 逆向工具, 隐私保护