Ais1on/CTI-RAG

GitHub: Ais1on/CTI-RAG

这是一个面向网络威胁情报的检索增强生成框架,通过集成知识图谱与因果推理能力,辅助分析师进行智能化的威胁情报挖掘与关联分析。

Stars: 23 | Forks: 2

# ThreatRAG ThreatRAG是一个面向网络威胁情报(CTI)的检索增强生成(RAG)框架,集成了知识图谱和因果推理能力,为安全分析师提供智能化的威胁情报分析工具。 ## 项目架构 ThreatRAG由以下主要模块组成: - **RAG模块**:基于LangChain实现的检索增强生成系统,支持多种文档格式和向量数据库 - **知识图谱(KG)模块**:实体关系抽取、图谱构建与存储 - **因果推理模块**:基于离散时间拓扑霍克斯过程的威胁情报图谱关系推理 - **API服务**:FastAPI实现的后端服务,提供对话和检索接口 ThreatRAG/ ├── rag/ # 检索增强生成模块 │ ├── api/ # API接口 │ ├── agents/ # 智能代理 │ ├── chains/ # LLM链 │ └── vector/ # 向量数据库 ├── kg/ # 知识图谱模块 │ ├── data_process/ # 数据处理 │ └── data_spider/ # 数据爬取 ├── experiment/ # 实验模块 │ └── rl_moldel/ # 强化学习模型 └── main.py # 主程序入口 ## 功能特点 - **智能检索**:基于向量数据库的相似度检索,支持多种文档格式 - **实体关系抽取**:从非结构化威胁情报报告中提取实体和关系 - **知识图谱构建**:将提取的实体关系保存到Neo4j图数据库 - **因果推理**:基于强化学习的图谱关系推理与补全 - **流式对话**:支持流式输出的对话接口 ## 快速开始 ### 环境配置 1. 克隆项目并安装依赖: git clone https://github.com/yourusername/ThreatRAG.git cd ThreatRAG pip install -r requirements.txt 2. 配置环境变量(创建.env文件): # 模型配置 BASE_MODEL=deepseek-ai/DeepSeek-V2.5 # SiliconFlow API API_BASE=https://api.siliconflow.cn/v1 API_KEY=your_key_of_siliconflow # OpenAI API (可选) OPENAI_API_KEY=your_openai_api_key # 环境配置 FASTAPI_ENV=development # Neo4j配置 NEO4J_URI=bolt://localhost:7687 NEO4J_USER=neo4j NEO4J_PASSWORD=12345678 NEO4J_DATABASE=neo4j 网页端路径: http://localhost:7474/browser/ ### 启动服务 启动项目: python ./main.py ### 数据库配置 #### Neo4j - 用户名:neo4j - 密码:12345678 - 访问地址:http://localhost:7474/browser/ #### Milvus 安装: pip install milvus 启动Milvus: milvus-server --data ./milvus_lite ## 模块说明 <<<<<<< HEAD ### RAG模块 ======= ### PgSQL说明 PgSQL用于存储知识库文档的文本信息,存储在text字段 RAG模块基于LangChain实现,支持多种文档格式和向量数据库,提供智能检索和对话功能。 主要特点: - 支持PDF、TXT、DOCX等多种文档格式 - 使用FAISS向量数据库进行高效检索 - 支持流式输出的对话接口 - 自动检测和更新文档变化 ### 知识图谱模块 知识图谱模块负责从非结构化威胁情报报告中提取实体和关系,并构建知识图谱。 主要功能: - 使用大语言模型进行命名实体识别和关系抽取 - 支持批量推理和处理 - 将提取的实体关系保存到Neo4j图数据库 - 提供图谱查询和可视化接口 ### 因果推理模块 因果推理模块基于离散时间拓扑霍克斯过程和强化学习,实现威胁情报图谱关系推理与补全。 主要特点: - 因果感知的关系预测 - 反事实推理能力 - 图谱补全能力 - 可解释性保障 ## 前端界面 前端项目仓库:[https://github.com/rstarall/br-cti-chat](https://github.com/rstarall/br-cti-chat) ## 贡献指南 欢迎贡献代码或提出问题!请遵循以下步骤: 1. Fork项目 2. 创建特性分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 创建Pull Request ## 许可证 本项目采用MIT许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。
标签:AI安全, AV绕过, Chat Copilot, DLL 劫持, FastAPI, HTTP/HTTPS抓包, LangChain, Neo4j, RAG, 向量数据库, 因果推理, 大语言模型, 威胁分析, 安全运营, 实体关系抽取, 强化学习, 态势感知, 扫描框架, 数据爬取, 检索增强生成, 流式对话, 网络威胁情报, 自动化侦查工具, 轻量级, 逆向工具, 霍克斯过程