这个项目能做什么

Taranis AI 是一个开源情报(OSINT)平台,旨在信息收集和态势分析。它从网站、RSS/Atom 订阅源、Mastodon、MISP 和 Request Tracker 等来源收集非结构化新闻文章,然后应用自然语言处理和 AI 来丰富内容。分析师审查这些 AI 增强的文章,并将其转换为结构化报告条目,这些条目可生成 PDF 文件等交付物,随后可进行发布。 架构和服务 系统分为多个组件。Nginx 入口作为反向代理入口点。Flask、HTMX 和 Tailwind CSS 前端提供 Web 界面和 REST 访问。核心后端处理数据库通信,并向工作器和前端暴露 REST 端点。RQ 工作器提供收集器、机器人、演示器和发布器功能。支持服务包括 PostgreSQL(主要)或 SQLite 作为数据库,Redis 作为消息代理和任务队列,以及 Centrifugo 用于实时更新。REST API 的 OpenAPI 规范包含在内,可在运行安装中的 config/openapi 下访问。 功能 - 跨多个数据源进行 OSINT 收集,生成整合的情报流。 - 基于 AI 和 NLP 的收集文章增强和丰富。 - 分析师工作流,将非结构化新闻转换为结构化报告条目。 - 可选的分析师聊天功能,提供持久的每用户对话,可回答一般问题或搜索分析师有权查看的故事,通过单独配置的 OpenAI 兼容响应 API 实现。 - 多格式输出,包括结构化报告和 PDF 文件。 - 发布最终情报产品。 - 实验性故事级共享,通过 MISP 在 Taranis AI 实例之间,或直接在 Taranis AI 和 MISP 之间进行。 健康端点 核心暴露两个无需认证的健康端点:/api/isalive 是一个轻量级存活探针,确认 API 进程响应;而 /api/health 报告依赖状态为 up、down 或 n/a,如果任何依赖项关闭则返回 503,否则返回 200。 硬件和部署 完整 NLP 功能建议至少需要 16 GB RAM、4 个 CPU 核心和 50 GB 磁盘。无 NLP 时,指示为 2 GB RAM、2 个 CPU 核心和 20 GB 磁盘。生产部署通过 Docker Compose 部署指南记录;存在从 Celery/RabbitMQ 迁移到 RQ 的迁移指南。仓库包含 src/ 下的源代码(core、ingress、frontend、models、worker)和 Docker 支持文件,附带示例 docker-compose 文件。 项目背景 该项目受 Taranis3 和 Taranis-NG 启发,并在欧盟公共许可证下发布。它通过连接欧洲基金获得了欧盟资助。文档涵盖用户故事、部署、IntelOwl 丰富、Mastodon 收集设置、发布步骤和 SBOM 范围。