taranis-ai/taranis-ai
GitHub: taranis-ai/taranis-ai
一款结合 AI 与 NLP 技术的开源网络情报平台,实现从多源数据采集、智能增强分析到结构化报告发布的完整 OSINT 工作流。
Stars: 965 | Forks: 122
# Taranis AI

Taranis AI 是一款先进的开源网络情报 (OSINT) 工具,利用人工智能 (AI) 彻底变革了信息收集和态势分析的方式。
Taranis 能够遍历网站等多种数据源以收集非结构化的新闻文章,并利用自然语言处理 (NLP) 和人工智能技术提升内容质量。
随后,分析师将这些经过 AI 增强的文章精炼为结构化报告,作为生成 PDF 文件等最终交付成果的基础,并最终发布。

## 快速开始
关于生产环境部署,请参阅我们的 [使用 docker compose 部署指南](https://taranis.ai/docs/getting-started/01_deployment/)
## 贡献
我们欢迎社区的贡献!如果您有兴趣为 Taranis AI 做出贡献,请阅读我们的 [开发环境设置指南](./dev/README.md) 以开始。
## 文档
关于当前功能的演示,请参阅 [taranis.ai/media](https://taranis.ai/media/)。
关于用户故事和部署指南的文档,请参阅 [taranis.ai](https://taranis.ai/docs/)。
## 服务
| 类型 | 名称 | 描述 |
| :--------- | :-------- | :------------------------------------ |
| Entrypoint | ingress | 配置为反向代理的 Nginx 入口 |
| Frontend | frontend | 基于 Flask、HTMX 和 tailwindcss 的 REST 前端 |
| Backend | core | 用于与数据库通信并向 worker 和 frontend 提供 REST Endpoints 的后端 |
| Worker | worker | Celery Worker,提供 collectors、bots、presenters 和 publisher 功能 |
### 支持服务
| 类型 | 名称 | 描述 |
| :-------------- | :------------------- | :------------------------------------ |
| Database | database | 支持 PostgreSQL 和 SQLite,其中 PostgreSQL 是我们的首选 |
| Message-broker | rabbitmq | 用于分发 Workers 和管理发布订阅队列的消息代理 |
| SSE | sse | [SSE Broker](https://github.com/taranis-ai/sse-broker) |
## 功能特性
* 先进的 OSINT 能力:Taranis AI 扫描网站等多种数据源以获取非结构化新闻文章,提供全面的情报源。
* AI 增强分析:利用人工智能和自然语言处理自动增强和丰富收集到的文章,以获得更高的内容质量。
* 对分析师友好的工作流:提供简化的流程,分析师可以轻松将非结构化新闻转换为结构化报告项,优化数据转换过程。
* 多格式输出:生成多种最终产品,包括结构化报告和 PDF 文件,以满足特定的信息需求。
* 无缝发布:促进最终情报产品的轻松发布,确保关键信息的及时传播。
* 协作威胁情报(实验性):支持通过 [MISP](https://www.misp-project.org/) 在 Taranis AI 实例之间进行 Story 级别的共享,或者直接在 Taranis AI 和 MISP 之间进行,以实现灵活的协作和信息传播。
### OpenAPI
系统包含 REST API 的 [OpenAPI 规范](./src/core/core/static/openapi3_1.yaml),可以在运行中的安装实例的 `config/openapi` 路径下访问。
### 硬件要求
要使用所有 NLP 功能,请确保至少拥有:16 GB RAM、4 个 CPU 核心和 50GB 磁盘存储。
不使用 NLP:2 GB RAM、2 个 CPU 核心和 20 GB 磁盘存储。
### 目录结构
* src/ - Taranis AI 源代码:
* [core](src/core/) 是 REST API,Taranis AI 的核心组件
* [ingress](src/ingress/) Nginx 反向代理配置
* [frontend](src/frontend/) Web 用户界面的 flask 和 htmx 部分
* [models](src/models/) 用于验证输入和输出的 pydantic 模型
* [worker](src/worker/) 从各种来源(如 web、twitter、email、atom、rss、slack 等)检索 OSINT 信息并创建 **新闻项**。
* [docker/](docker/) - Docker 镜像创建的支持文件和示例 docker-compose 文件
## 关于
本项目受 [Taranis3](https://github.com/NCSC-NL/taranis3) 以及 [Taranis-NG](https://github.com/SK-CERT/Taranis-NG/) 启发。
根据 [欧盟公共许可证](https://eupl.eu/1.2/en/) 的条款发布。
## 欧盟资助

标签:AI, Celery, Docker, ESC4, Flask, HTMX, HTTP/HTTPS抓包, Nginx, NLP, OSINT, PostgreSQL, Python, Tailwind CSS, 人工智能, 威胁情报, 安全防御评估, 实时处理, 密码管理, 开发者工具, 态势感知, 情报分析, 情报收集, 数据清洗, 文本分析, 无后门, 测试用例, 漏洞研究, 用户模式Hook绕过, 结构化数据, 网络安全, 网络诊断, 自动化代码审查, 自动化报告, 舆情分析, 请求拦截, 逆向工具, 隐私保护