运维123 - python
type: channel
link: https://sddts.cn/index.php/category/python/
items: DeepTutor AI 驱动个性化学习助手技术分析
items: Claude Code Bridge 多 AI 协作平台技术分析
items: Z-Library 到 NotebookLM 自动化工具技术分析
items: Auto Paper Digest AI论文自动化处理管道技术分析
items: Doc2X_GUI 跨平台桌面应用技术分析
items: VibeCraft AI 驱动 Minecraft 建造工具技术分析
items: vLLM Studio 技术分析
items: geowifi WiFi 地理位置信息查询工具技术分析
items: SECMON 信息安全监控与漏洞管理平台技术分析
items: NoDPI DPI 绕过工具技术分析

DeepTutor AI 驱动个性化学习助手技术分析
type: item
date: 2026-01-19T14:53:51+00:00
description: DeepTutor AI 驱动个性化学习助手技术分析一、项目概述1. 项目背景DeepTutor 是由香港大学数据智能实验室（HKUDS）开发的 AI 驱动个性化学习助手项目，采用 AGPL-3.0 开源协议。该项目于 2025 年 12 月 29 日正式发布，旨在通过多智能体架构和 RAG 技术提供全方位的学习辅助功能。2. 核心定位全栈式 AI 学习辅助平台，集成了知识问答、交互式学习可视化、知识强化、深度研究和创意生成等核心功能模块。3. 项目状态GitHub Stars：9.1k+Forks：1.2k+贡献者：24 人最新版本：v0.5.2（2026 年 1 月 18 日）开发语言：Python 63.8%，TypeScript 34.8%二、技术架构分析1. 整体架构设计DeepTutor 采用四层架构设计，从用户界面到底层数据存储形成完整的技术闭环。graph TB User[用户界面层] --> Agent[智能体模块层] Agent --> Tools[工具集成层] Tools --> Knowledge[知识与记忆基础层] subgraph "用户界面层" UI1[Web 前端] UI2[API 接口] end subgraph "智能体模块层" AG1[问题求解] AG2[问题生成] AG3[引导学习] AG4[深度研究] AG5[创意生成] end subgraph "工具集成层" T1[RAG 检索] T2[网络搜索] T3[代码执行] T4[PDF 解析] end subgraph "知识与记忆基础层" K1[知识图谱] K2[向量存储] K3[会话记忆] end2. 核心技术栈A. 后端技术Python 3.10+FastAPI：高性能异步 Web 框架混合检索 RAG：结合知识图谱和向量检索B. 前端技术React：UI 框架Next.js：全栈框架TailwindCSS：样式框架C. 部署方案Docker 容器化部署Docker Compose 编排预构建镜像支持 AMD64 和 ARM64三、核心功能模块1. 大规模文档知识问答A. 智能知识库支持上传教材、研究论文、技术手册和领域特定文档，构建 AI 驱动的综合知识仓库。B. 多智能体问题求解采用双循环推理架构，集成 RAG、网络搜索和代码执行，提供带精确引用的逐步解答。sequenceDiagram participant U as 用户 participant P as 问题求解器 participant R as RAG 引擎 participant W as 网络搜索 participant C as 代码执行 U->>P: 提出问题 P->>R: 检索知识库 R-->>P: 返回相关文档 P->>W: 网络补充搜索 W-->>P: 返回搜索结果 P->>C: 执行代码验证 C-->>P: 返回执行结果 P->>U: 逐步解答+引用2. 交互式学习可视化A. 知识简化与解释将复杂概念、知识和算法转化为易于理解的可视化辅助工具、详细的逐步分解和交互式演示。B. 个性化问答上下文感知对话，适应学习进度，提供交互式页面和基于会话的知识追踪。3. 知识强化与练习生成A. 智能练习创建根据当前知识水平和特定学习目标，生成针对性测验、练习题和自定义评估。B. 真实考试模拟上传参考考试，生成与原始风格、格式和难度完全匹配的练习题，提供实际考试的真实准备。graph LR Exam[参考考试] --> Upload[上传解析] Upload --> Style[风格提取] Style --> Generator[题目生成] Generator --> Validate[自动验证] Validate --> Practice[练习题输出]4. 深度研究与创意生成A. 综合研究与文献综述进行深入的主题探索和系统分析，识别模式，连接跨学科相关概念，综合现有研究发现。B. 新颖洞察发现生成结构化学习材料，发现知识缺口，通过智能跨领域知识综合识别有前景的新研究方向。四、部署与安装1. 部署方式对比部署方式优势适用场景Docker 部署无需 Python/Node.js 环境，一键启动生产环境、快速体验手动安装灵活定制，便于开发调试开发环境、二次开发2. Docker 快速部署A. 前置要求Docker 和 Docker ComposeB. 启动命令docker compose upC. 预构建镜像使用# Linux/macOS (AMD64) docker run -d --name deeptutor \ -p 8001:8001 -p 3782:3782 \ --env-file .env \ -v $(pwd)/data:/app/data \ -v $…

Claude Code Bridge 多 AI 协作平台技术分析
type: item
date: 2026-01-19T13:39:01+00:00
description: Claude Code Bridge 多 AI 卛作平台技术分析一、项目概述1. 项目背景Claude Code Bridge（简称 ccb）是一个创新的终端多 AI 协作工具，通过分屏终端实现 Claude、Codex 和 Gemini 的实时协作。A. 核心问题单一 AI 模型存在认知偏差、盲点和上下文限制，而传统的 MCP、Skills 等直接 API 调用方式存在诸多限制。B. 解决方案通过终端分屏技术，让多个 AI 模型并行工作，每个模型维护独立的持久化上下文，实现真正的专家团队协作模式。2. 项目定位版本：v2.3许可证：MIT平台：Linux、macOS、Windows（WSL 和原生支持）Python 要求：3.10+二、核心特性1. 可视化与可控性多个 AI 模型在分屏 CLI 中并行运行，用户可以实时看到所有模型的输出，完全掌控协作过程。2. 持久化上下文每个 AI 维护自己的记忆，支持随时关闭和恢复会话（通过 -r 标志），无需重新加载完整历史。3. Token 节省通过发送轻量级提示而非完整文件历史来恢复上下文，大幅降低 API 调用成本。4. 原生工作流集成直接集成到 WezTerm（推荐）或 tmux，无需复杂的服务器部署。三、系统架构1. 总体架构graph TB subgraph 用户终端环境 A[WezTerm/Tmux] --> B[Claude Code 主面板] A --> C[Codex 副面板] A --> D[Gemini 副面板] end subgraph ccb 核心层 E[CLI 命令解析] --> F[会话管理器] F --> G[上下文持久化] F --> H[任务调度器] end subgraph AI API 层 I[Claude API] J[Codex API] K[Gemini API] end B <-->|实时通信| E C <-->|实时通信| E D <-->|实时通信| E H -->|任务分发| I H -->|任务分发| J H -->|任务分发| K G <-->|上下文恢复| I G <-->|上下文恢复| J G <-->|上下文恢复| K2. 组件说明A. 终端层WezTerm/Tmux：提供多窗口分屏能力主面板：Claude Code 主界面副面板：Codex 和 Gemini 独立窗口B. 核心层CLI 命令解析：解析用户命令会话管理器：管理多个 AI 会话上下文持久化：存储和恢复对话历史任务调度器：协调多模型任务分配C. API 层直接对接各 AI 服务的 API支持异步任务提交四、安装与部署1. 前置要求Python 3.10+WezTerm（强烈推荐）或 tmux2. 安装步骤Linux / macOSgit clone https://github.com/bfly123/claude_code_bridge.git cd claude_code_bridge ./install.sh installWSL 环境# 在 WSL 终端中运行 git clone https://github.com/bfly123/claude_code_bridge.git cd claude_code_bridge ./install.sh installWindows 原生环境git clone https://github.com/bfly123/claude_code_bridge.git cd claude_code_bridge powershell -ExecutionPolicy Bypass -File .\install.ps1 install五、使用方法1. 启动命令# 启动 Codex ccb up codex # 启动 Gemini ccb up gemini # 同时启动多个 AI ccb up codex gemini2. 命令行标志标志描述示例-r恢复之前的会话上下文ccb up codex -r-a自动模式，跳过权限提示ccb up codex -a-h显示帮助信息ccb -h-v显示版本并检查更新ccb -v3. 更新命令ccb update六、协作场景1. 代码审查让 Codex 审查代码变更，提供独立的技术视角。2. 第二意见让 Gemini 提供替代实现方案，比较不同思路。3. 结对编程Codex 编写后端逻辑，Claude 处理前端，分工协作。4. 架构设计让 Codex 先设计模块结构，然后分配实现任务。5. 信息交换获取多轮对话历史并进行总结归纳。6. 创意场景：AI 扑克之夜让 Claude、Codex 和 Gemini 玩斗地主，明牌对战，展示多模型协作的趣味性。七、命令参考1. Codex 命…

Z-Library 到 NotebookLM 自动化工具技术分析
type: item
date: 2026-01-19T06:13:21+00:00
description: Z-Library 到 NotebookLM 自动化工具技术分析一、项目概述1. 项目背景Z-Library 是全球最大的数字图书馆之一，拥有海量的书籍资源。Google NotebookLM 是 Google 推出的 AI 驱动笔记工具，支持上传文档并进行智能问答。本项目旨在自动化将 Z-Library 书籍下载并上传到 NotebookLM 的流程，实现两个平台的无缝衔接。2. 核心价值A. 解决的问题手动下载书籍效率低下格式转换繁琐（PDF、EPUB 等）NotebookLM 上传步骤复杂大文件上传容易失败B. 创新点一次登录，永久使用智能格式选择与转换自动文件分块处理Claude Code Skill 原生集成二、系统架构1. 整体架构graph TB User[用户] -->|提供 Z-Library URL| Claude[Claude Code / CLI] Claude -->|启动| Login[登录模块] Login -->|保存会话| Session[storage_state.json] Claude -->|调用| Download[下载模块] Download -->|Playwright| Browser[Chromium 浏览器] Browser -->|访问| ZLib[Z-Library 网站] ZLib -->|下载| File[书籍文件 PDF/EPUB] File -->|转换| Convert[格式转换模块] Convert -->|EPUB→MD| Markdown[Markdown 文件] File -->|直接使用| PDF[PDF 文件] Markdown -->|检查大小| Chunk[分块模块] PDF -->|检查大小| Chunk Chunk -->|分割| Parts[多个文件块] Parts -->|上传| NotebookLM[Google NotebookLM] NotebookLM -->|返回| ID[笔记本 ID] ID -->|反馈| User2. 组件说明登录模块：处理 Z-Library 身份验证，保存会话状态下载模块：使用 Playwright 浏览器自动化下载书籍格式转换模块：将 EPUB 转换为 Markdown分块模块：智能分割大文件，确保上传成功上传模块：调用 NotebookLM CLI 上传内容三、核心功能实现1. 会话持久化A. 实现原理使用 Playwright 的 storage_state 功能保存浏览器会话：sequenceDiagram participant U as 用户 participant L as login.py participant B as 浏览器 participant Z as Z-Library U->>L: 执行 python3 scripts/login.py L->>B: 启动 Chromium B->>Z: 访问登录页面 Z-->>B: 显示登录表单 B-->>U: 打开浏览器窗口 U->>B: 手动完成登录 U->>L: 终端按 ENTER L->>B: 保存 storage_state B->>L: 返回 cookies 和 localStorage L->>L: 写入 ~/.zlibrary/storage_state.json L-->>U: 会话已保存B. 技术细节存储位置：~/.zlibrary/storage_state.json包含内容：cookies、localStorage、sessionStorage复用方式：load_storage_state() 加载已保存状态2. 智能格式处理A. 格式优先级graph LR A[书籍页面] --> B{检查可用格式} B -->|有 PDF| C[下载 PDF] B -->|无 PDF 有 EPUB| D[下载 EPUB] B -->|其他格式| E[下载原格式] C --> F{检查文件大小} D --> G[转换为 Markdown] E --> H[尝试转换] G --> F H --> G F -->|≤350k 词| I[直接上传] F -->|>350k 词| J[智能分块] J --> K[逐块上传]B. EPUB 转换实现使用 ebooklib 库解析 EPUB 结构：graph TD A[EPUB 文件] --> B[ebooklib 读取] B --> C[解析章节] C --> D[提取文本内容] D --> E[转换为 Markdown] E --> F[统计词数] F --> G{词数判断} G -->|≤350k| H[单文件输出] G -->|>350k| I[按章节分割] I --> J[生成多…

Auto Paper Digest AI论文自动化处理管道技术分析
type: item
date: 2026-01-19T05:53:52+00:00
description: Auto Paper Digest AI 论文自动化处理管道技术分析一、概述1. 项目简介Auto Paper Digest（APD）是一个自动化 AI 论文处理管道，能够自动追踪 Hugging Face 每周热门 AI 论文，下载 PDF，导入 NotebookLM 生成视频讲解，并将所有内容归档为可搜索的周报摘要。2. 核心功能自动抓取 Hugging Face 每周 AI 论文从 arXiv 下载论文 PDF（支持 SHA256 校验）通过 NotebookLM 自动生成论文视频讲解自动发布视频到 HuggingFace Dataset自动发布视频到抖音创作者平台提供 Gradio 门户网站在线播放视频二、系统架构1. 整体架构项目采用三阶段流水线设计，每个阶段可独立执行，支持断点续传。graph TB subgraph Phase1["Phase 1: Upload"] HF["HuggingFace Papers"] --> ArXiv["arXiv PDFs"] ArXiv --> NBLM["NotebookLM"] end subgraph Phase2["Phase 2: Download"] NBLM --> Video["Videos"] end subgraph Phase3["Phase 3: Publish"] Video --> HFDS["HuggingFace Dataset"] Video --> Douyin["Douyin Creator"] end subgraph Storage["SQLite Database"] DB[(状态追踪 NEW → PDF_OK → NBLM_OK → VIDEO_OK)] end HF -.状态.-> DB ArXiv -.状态.-> DB NBLM -.状态.-> DB Video -.状态.-> DB subgraph Portal["Portal Website"] PortalWeb["Gradio Portal (HF Spaces)"] end HFDS --> PortalWeb2. 组件说明A. 核心模块模块文件功能CLI 入口cli.py命令行接口，提供所有用户命令配置管理config.py配置常量和环境变量数据库db.pySQLite 状态持久化HF 抓取hf_fetcher.pyHuggingFace 论文抓取（支持周 URL）PDF 下载pdf_downloader.pyarXiv PDF 下载器（SHA256 校验）NotebookLMnblm_bot.pyNotebookLM 自动化操作抖音发布douyin_bot.py抖音创作者平台自动化HF 发布publisher.pyHuggingFace Dataset 发布周报生成digest.py本地周报生成B. 数据流论文获取：从 HuggingFace /week/YYYY-WXX URL 获取每周热门论文列表PDF 下载：从 arXiv 下载 PDF，使用 SHA256 校验避免重复下载视频生成：上传到 NotebookLM，触发 AI 视频生成（异步）视频下载：从 NotebookLM 下载生成的视频文件内容发布：上传到 HuggingFace Dataset 和抖音创作者平台门户展示：通过 Gradio Spaces 门户网站在线播放三、技术实现1. 状态机设计项目使用 SQLite 数据库实现状态追踪，确保处理过程的可恢复性。stateDiagram-v2 [*] --> NEW: 论文抓取 NEW --> PDF_OK: PDF 下载成功 NEW --> ERROR: 下载失败 PDF_OK --> NBLM_OK: 上传 NotebookLM PDF_OK --> ERROR: 上传失败 NBLM_OK --> VIDEO_OK: 视频下载成功 NBLM_OK --> NBLM_OK: 等待生成 NBLM_OK --> ERROR: 下载失败 VIDEO_OK --> [*]: 完成 ERROR --> NEW: 自动重试状态定义状态含义说明NEW论文已抓取初始状态，等待处理PDF_OKPDF 已下载文件已通过 SHA256 校验NBLM_OK已上传 NotebookLM视频生成中，可能需要等待VIDEO_OK视频已下载可以发布ERROR处理失败支持自动重试2. 浏览器自动化A. Playwright 集成项目使用 Playwright 进行浏览器自动化，支持：Google 账号登录（NotebookLM）抖音创作者平台登录登录状态持久化B. 登录状态管理登录状态保存在 data/profiles/ 目录下：浏览器配置文件（含 Cookies）支持一次登录，长…

Doc2X_GUI 跨平台桌面应用技术分析
type: item
date: 2026-01-18T10:44:39+00:00
description: Doc2X_GUI 跨平台桌面应用技术分析一、新闻概述1. 标题Doc2X_GUI：支持 Linux X11/Wayland 及 Windows 的第三方 Doc2X 桌面应用2. 发布时间根据 GitHub 仓库信息，项目持续活跃更新中3. 来源GitHub 开源仓库：Menghuan1918/Doc2X_GUI二、核心内容1. 事件摘要A. 主要内容Doc2X_GUI 是一个第三方开发的桌面应用程序，为 Doc2X 服务提供了原生客户端支持。该项目最显著的特点是完整支持 Linux 平台下的 X11 和 Wayland 两种显示服务器协议，同时也支持 Windows 操作系统。B. 核心亮点跨平台支持：Linux（X11、Wayland）和 Windows剪切板监听：自动监听并处理剪切板中的图片或 PDF 文件Wayland 原生支持：解决了 Wayland 环境下剪切板访问的兼容性问题图形界面：基于 PyQt6 构建的原生桌面应用2. 关键信息A. 版本状态项目持续开发中，有活跃的 Release 发布提供 Arch Linux AUR 安装源：doc2xgui-gitB. 技术栈编程语言：Python 3.12GUI 框架：PyQt6打包工具：Nuitka依赖工具：xclip、wl-clipboardC. 许可证开源项目，具体许可证类型需参考仓库 LICENSE 文件3. 背景介绍A. Doc2X 服务Doc2X 是一个将文档（特别是 PDF 和图片）转换为其他格式的服务。该桌面应用作为 Doc2X 的第三方客户端，提供更便捷的本地使用体验。B. 技术上下文Linux 桌面环境正在从传统的 X11 向新一代 Wayland 显示服务器迁移，但许多现有应用尚未完全适配 Wayland。该项目的价值在于同时支持两种协议，降低了用户迁移的技术门槛。三、详细报道1. 主要功能A. 剪切板监听应用的核心功能是监听系统剪切板的变化，当检测到图片或 PDF 文件时自动进行处理。这一功能在不同平台上实现方式各异：Linux X11：使用 xclip 工具Linux Wayland：使用 wl-clipboard 工具Windows：通过系统 API 实现B. 手动复制支持除了自动监听，用户也可以主动从剪切板复制图片进行解析。C. 文件类型支持图片格式（具体支持类型需参考项目文档）PDF 文档2. 技术细节A. 系统架构graph LR A[用户操作] --> B{操作系统} B -->|Linux X11| C[xclip] B -->|Linux Wayland| D[wl-clipboard] B -->|Windows| E[系统 API] C --> F[PyQt6 应用] D --> F E --> F F --> G[Doc2X 服务]B. 技术选型分析GUI 框架选择：PyQt6成熟稳定的跨平台 GUI 框架原生外观和性能丰富的组件库打包工具选择：Nuitka相比常见的 PyInstaller，Nuitka 具有以下特点：将 Python 代码编译为 C 代码，再编译为机器码更好的性能表现更小的可执行文件体积更高的反编译难度C. Linux 平台兼容性X11 与 Wayland 的技术差异：X11（X Window System）是传统的 Unix/Linux 图形界面系统，已有数十年历史。Wayland 是新一代显示服务器协议，提供更简洁、更安全的架构，但存在以下挑战：安全模型不同：Wayland 限制了应用对其他应用窗口和输入设备的访问剪切板访问需要专门的库支持该项目通过检测显示服务器类型并调用相应的工具（xclip 或 wl-clipboard），实现了对两种环境的透明支持。D. 运行模式默认情况下，程序在 XWayland（X11 兼容层）下运行，以确保功能的稳定性。用户可通过添加 -wayland 1 参数启用原生 Wayland 模式。3. 数据与事实A. 安装方式统计Release 下载：适合普通用户AUR 安装：Arch/Manjaro 用户专属源码运行：开发者和高级用户B. 系统依赖Ubuntu/Debian：sudo apt install xclip wl-clipboardArch/Manjaro：sudo pacman -S xclip wl-clipboard四、影响分析1. 行业影响A. Wayland 生态建设该项目是少数主动适配 Wayland 的开源应用之一，为其他开发者提供了参考案例。B. Python 桌面应用实践展示了使用 Python 构建跨平台桌面应用的完整技术栈和最佳实践。2. 用户影响A. Linux 桌面用户提供了便捷的 Doc2X 使用方式降低了 Wayland 环境…

VibeCraft AI 驱动 Minecraft 建造工具技术分析
type: item
date: 2026-01-18T03:25:44+00:00
description: VibeCraft AI 驱动 Minecraft 建造工具技术分析一、项目概述1. 项目背景VibeCraft 是一个创新的 AI 驱动 Minecraft 建造工具，允许用户通过自然语言对话与 Claude 交互，在 Minecraft 游戏中自动建造建筑结构。该项目由 Amenti Labs 开发，采用 MIT 许可证开源。A. 核心理念VibeCraft 的核心理念是将自然语言处理与游戏自动化结合，让玩家可以通过描述想要建造的内容，让 AI 代理自动在游戏中执行建造操作。这种交互方式极大地降低了 Minecraft 建造的门槛。B. 技术特色基于 MCP（Model Context Protocol）实现 AI 与游戏的桥接支持 Fabric 客户端模组，兼容任意 Minecraft 服务器提供 WorldEdit 集成，支持复杂的建筑操作包含预配置的 Claude Agent 工作流和建造技能2. 项目统计Star 数：29Fork 数：2主要语言：Python 81.4%，Java 15.3%，Shell 3.3%贡献者：2 人（Evan Reid、Kyryl Andreiev）最新提交：2026 年 1 月 12 日二、系统架构1. 整体架构设计VibeCraft 采用三层架构设计，通过 MCP 协议和 WebSocket 实现各组件之间的通信。graph TB subgraph 用户层 A[Claude AI 聊天] end subgraph 协议层 B[MCP 协议] end subgraph 服务层 C[VibeCraft MCP Server] C1[WebSocket 桥接] end subgraph 客户端层 D[Minecraft 客户端模组] end subgraph 游戏层 E[Minecraft 服务器] E1[WorldEdit 插件] end A -->|MCP| B B --> C C -->|WebSocket| C1 C1 --> D D -->|玩家操作| E E --> E12. 组件详解A. Claude Agent（代理层）Claude Agent 是整个系统的智能核心，负责：理解用户的自然语言建造请求调用 MCP 工具执行建造命令处理建造过程中的上下文和状态管理建筑材料和模板B. VibeCraft MCP Server（服务层）MCP Server 是 Claude 与 Minecraft 之间的桥梁，主要功能：实现 MCP 协议的服务端提供 SSE（Server-Sent Events）和 Stdio 两种通信模式通过 WebSocket 与客户端模组通信管理 WorldEdit 和原生游戏命令C. Fabric Client Mod（客户端层）客户端模组是直接操作 Minecraft 的组件，负责：建立 WebSocket 服务器接收命令解析并执行建造命令支持认证和权限控制提供游戏内命令接口三、核心交互流程1. 建造流程时序图sequenceDiagram participant U as 用户 participant C as Claude Agent participant M as MCP Server participant W as WebSocket 桥接 participant G as Minecraft 客户端 participant S as Minecraft 服务器 U->>C: 描述建造需求（如"建造石屋"） C->>M: 调用 MCP 工具 M->>W: 发送建造命令 W->>G: WebSocket 传输 G->>S: 执行游戏命令 S-->>G: 返回执行结果 G-->>W: 返回状态 W-->>M: 返回结果 M-->>C: 返回响应 C-->>U: 反馈建造进度2. 命令执行链路用户输入 ↓ Claude 理解意图 ↓ MCP 工具调用 ↓ WebSocket 消息 ↓ 客户端模组解析 ↓ 游戏命令执行（/fill, /setblock, WorldEdit） ↓ 结果反馈四、技术实现细节1. MCP Server 实现A. 技术栈Python 3.10+uv 包管理器FastAPI/Starlette（HTTP 服务）WebSocket（客户端通信）B. 核心工具MCP Server 暴露的主要工具包括：工具名称功能描述get_players获取在线玩家列表get_position获取玩家位置execute_command执行游戏命令fill_blocks批量填充方块set_block设置单个方块select_region选择建筑区域2. 客户端模组实现A. 技术栈Java 17/21Fabric Mod LoaderFabric…

vLLM Studio 技术分析
type: item
date: 2026-01-18T01:22:02+00:00
description: vLLM Studio 技术分析一、概述1. 项目简介vLLM Studio 是一个面向 vLLM 和 SGLang 推理服务器的模型生命周期管理平台。该项目由开发者 0xSero 开源，采用 Apache 2.0 许可证，旨在为大规模语言模型推理提供统一的管理界面和 API。A. 核心功能vLLM Studio 提供以下核心能力：模型启动与驱逐：支持在 vLLM 或 SGLang 后端上动态加载和卸载模型配方保存：可复用的模型配置方案，支持完整的参数配置推理支持：自动检测 GLM（glm45）、INTELLECT-3（deepseek_r1）和 MiniMax（minimax_m2_append_think）解析器工具调用：原生函数调用支持，具备自动工具选择功能（针对 GLM 和 INTELLECT-3 模型自动检测）Web 界面：提供聊天、模型管理和使用分析的图形化界面LiteLLM 集成：可选的 API 网关功能，支持 OpenAI/Anthropic 格式转换B. 技术栈后端：Python + FastAPI前端：Next.js（TypeScript 占比 69.3%）存储：SQLite部署：Docker Compose2. 架构设计A. 系统架构vLLM Studio 采用三层架构设计：graph TB Client[客户端] -->|HTTP :8080| Controller[Controller 控制器] Controller -->|管理命令| vLLM[vLLM/SGLang 后端 :8000] Controller -->|数据存储| SQLite[(SQLite 数据库)] Client -->|Web UI :3000| Frontend[Next.js 前端] Frontend -->|API 调用| Controller Controller -.可选.-> LiteLLM[LiteLLM 网关 :4100] LiteLLM -->|格式转换| External[外部 API]B. 组件说明Controller（控制器）核心组件，运行在 8080 端口负责：模型生命周期管理、进程管理、API 路由使用 FastAPI 构建，提供 RESTful APIBackend（推理后端）vLLM 或 SGLang 服务器，运行在 8000 端口负责实际的模型推理执行Frontend（前端）Next.js Web 界面，运行在 3000 端口提供聊天、模型配置、使用分析等功能LiteLLM（可选）API 网关，运行在 4100 端口提供 OpenAI/Anthropic 格式兼容、成本跟踪、路由功能C. 目录结构vllm-studio/ ├── controller/ # 后端控制器 │ ├── app.py # FastAPI 端点定义 │ ├── process.py # 进程管理 │ ├── backends.py # vLLM/SGLang 命令构建器 │ ├── models.py # Pydantic 数据模型 │ ├── store.py # SQLite 存储层 │ ├── config.py # 配置管理 │ └── cli.py # 命令行入口 ├── frontend/ # Next.js Web UI ├── config/ # 配置文件 │ └── litellm.yaml # LiteLLM 配置（可选） └── docker-compose.yml # 容器编排配置二、核心功能分析1. 模型生命周期管理A. Recipe（配方）机制Recipe 是 vLLM Studio 的核心概念，用于封装模型配置。一个 Recipe 包含以下字段：字段类型说明idstring唯一标识符namestring显示名称model_pathstring模型权重路径backendstringvllm 或 sglangtensor_parallel_sizeintGPU 并行度pipeline_parallel_sizeint流水线并行度max_model_lenint最大上下文长度gpu_memory_utilizationfloat显存使用率（0-1）kv_cache_dtypestringKV 缓存类型quantizationstring量化方法dtypestring模型数据类型served_model_namestringAPI 暴露的模型名称tool_call_parserstring工具调用解析器reasoning_parserstring推理/思考解析器enable_auto_tool_choicebool启用自动工具选择trust_remote_codebool允许远程代码extra_a…

geowifi WiFi 地理位置信息查询工具技术分析
type: item
date: 2026-01-17T22:03:34+00:00
description: geowifi WiFi 地理位置信息查询工具技术分析一、概述1. 简介A. 是什么geowifi 是一个开源情报（OSINT）工具，用于通过 BSSID（基本服务集标识符）或 SSID（服务集标识符）查询 WiFi 网络的地理位置信息。该工具整合了多个公开的 WiFi 地理位置数据库，为安全研究人员、渗透测试人员和 OSINT 从业者提供便捷的查询接口。B. 核心价值多数据源整合：同时查询多个 WiFi 地理位置数据库可视化输出：支持地图可视化展示查询结果灵活配置：支持 API 密钥管理和 SSL 验证配置易于部署：提供 Docker 和本地 Python 两种部署方式C. 应用场景渗透测试中的物理位置侦察安全审计与无线网络分析OSINT 调查中的地理位置定位无线网络安全研究2. 技术特点A. 支持的数据库Wigle：全球最大的 WiFi 网络数据库Apple：苹果地理位置服务Google：谷歌地理位置服务Milnikov：开源 WiFi 定位服务WifiDB：社区 WiFi 数据库Combain：商业定位服务Freifunk Carte：德国开源网络地图B. 技术栈编程语言：Python 3容器化：Docker输出格式：JSON、HTML 地图二、系统架构1. 架构设计graph TB User[用户] --> CLI[命令行接口] CLI --> Config[配置管理] CLI --> Parser[参数解析器] Parser --> Search{搜索类型} Search -->|BSSID| Query[查询引擎] Search -->|SSID| Query Config --> API[API 密钥管理] Query --> Wigle[Wigle API] Query --> Google[Google Geolocation API] Query --> Apple[Apple Location API] Query --> Combain[Combain API] Query --> Mylnikov[Mylnikov API] Query --> WifiDB[WifiDB API] Query --> Freifunk[Freifunk API] Wigle --> Collector[结果收集器] Google --> Collector Apple --> Collector Combain --> Collector Mylnikov --> Collector WifiDB --> Collector Freifunk --> Collector Collector --> Output{输出格式} Output -->|JSON| Formatter[JSON 格式化] Output -->|地图| Mapper[地图生成器] Formatter --> Display[结果显示] Mapper --> Display2. 组件说明CLI：命令行接口，负责用户交互配置管理：加载和解析 YAML 配置文件查询引擎：根据搜索类型分发查询请求API 适配器：封装各数据库的 API 调用逻辑结果收集器：聚合多个数据源的查询结果输出格式化：将结果转换为指定格式三、核心功能1. 搜索功能A. BSSID 搜索BSSID（Basic Service Set Identifier）是 WiFi 接入点的 MAC 地址，格式为 XX:XX:XX:XX:XX:XX。sequenceDiagram participant U as 用户 participant C as CLI participant Q as 查询引擎 participant W as Wigle participant G as Google participant A as Apple participant R as 结果收集器 U->>C: 输入 BSSID C->>Q: 解析参数 par 并行查询 Q->>W: 查询请求 Q->>G: 查询请求 Q->>A: 查询请求 end W-->>R: 返回结果 G-->>R: 返回结果 A-->>R: 返回结果 R->>U: 聚合展示B. SSID 搜索SSID（Service Set Identifier）是 WiFi 网络的名称。部分数据库支持通过 SSID 进行模糊搜索。2. API 配置A. Wigle API用途：查询 WiFi 网络的地理位置信息获取方式：注册 https://wigle.net/account配置参数：wigle_auth（Encoded for use 认证字符串）B. Google Geolocation API用途：利用谷歌的地理位置数据库获取方式：http…

SECMON 信息安全监控与漏洞管理平台技术分析
type: item
date: 2026-01-17T21:54:25+00:00
description: SECMON 信息安全监控与漏洞管理平台技术分析一、背景与目标1. 项目背景A. 业务场景随着信息安全威胁日益复杂，企业和组织面临着持续增长的漏洞管理挑战。SECMON 是一个基于 Web 的自动化信息安全监控和漏洞管理工具，旨在帮助安全团队及时获取相关 CVE（通用漏洞披露）信息、网络安全威胁动态，并有效管理基础设施中的安全风险。B. 痛点分析信息分散：CVE 信息、安全新闻、漏洞情报散布在多个平台手动追踪效率低：依赖人工检查安全公告，容易遗漏关键信息误报率高：通用的漏洞信息包含大量无关内容，难以快速定位管理难度大：缺乏统一的平台管理产品的安全状态2. 设计目标A. 功能目标自动化收集和推送 CVE 信息监控网络安全威胁动态提供漏洞管理和搜索功能生成安全报告和可视化分析B. 非功能目标易用性：Web 界面提供直观的操作体验可扩展性：支持多用户、多产品管理集成性：日志可集成到 SIEM 系统二、系统概述1. 产品定位SECMON 是一款开源的信息安全监控工具，专注于漏洞情报收集和管理。通过自动化轮询多种数据源，为安全团队提供及时、准确的安全威胁信息。2. 核心特性CVE 邮件告警：当产品列表中出现新的 CVE 时自动发送邮件安全新闻监控：推送网络安全相关新闻，包括新威胁、攻击事件等高风险产品可视化：展示 IT 基础设施中的高风险产品CVE Excel 报告：按日期范围下载漏洞报告网络安全主题排行：展示热门网络安全主题SIEM 日志集成：日志格式易于集成到 Splunk、Graylog 等漏洞详情查询：搜索 CVE 详细信息，包括利用代码检测三、系统架构1. 总体架构graph TB subgraph 数据源层 NIST[NIST CVE API] RSS[RSS 新闻源] Github[GitHub API] ExploitDB[Exploit-DB] end subgraph 采集层 Poller[轮询器] CVECollector[CVE 收集器] NewsCollector[新闻收集器] ExploitCollector[利用代码收集器] end subgraph 处理层 Analyzer[分析引擎] CPEMatcher[CPE 匹配器] KeywordMatcher[关键词匹配器] AlertGenerator[告警生成器] end subgraph 数据层 SQLite[(SQLite 数据库)] Log[日志文件] end subgraph 应用层 Flask[Flask Web 应用] WebUI[Web 界面] API[REST API] end subgraph 通知层 Email[邮件服务] SIEM[SIEM 集成] end NIST --> Poller RSS --> Poller Github --> Poller ExploitDB --> Poller Poller --> CVECollector Poller --> NewsCollector Poller --> ExploitCollector CVECollector --> Analyzer NewsCollector --> Analyzer ExploitCollector --> Analyzer Analyzer --> CPEMatcher Analyzer --> KeywordMatcher CPEMatcher --> AlertGenerator KeywordMatcher --> AlertGenerator AlertGenerator --> SQLite AlertGenerator --> Log AlertGenerator --> Email Flask --> SQLite Flask --> Log Flask --> WebUI Flask --> API WebUI --> 用户 API --> 外部应用 Log --> SIEM2. 组件说明轮询器：定期从各数据源获取最新信息收集器：解析和标准化原始数据分析引擎：处理收集的数据，匹配用户关注的产品匹配器：支持 CPE 和关键词两种匹配方式Web 应用：提供用户界面和管理功能通知服务：发送邮件告警和集成 SIEM四、核心功能1. CVE 监控与告警A. 数据收集机制SECMON 通过两种方法收集 CVE 信息：基于关键词：主动检索相关 CVE，无需精确版本检查，仅匹配关键词（如 "VMWare"、"Apache"）基于 CPE：精确匹配特定产品版本的 CVE（如 "Windows 10 1909"、"Apache 2.4.38"）B. 匹配流程graph LR A[新 CVE 发布] --> B{匹配方式} B --> C[关键词匹配] B…

NoDPI DPI 绕过工具技术分析
type: item
date: 2026-01-17T21:50:00+00:00
description: NoDPI DPI 绕过工具技术分析一、概述1. 简介A. 是什么NoDPI 是一个用于绕过 DPI（Deep Packet Inspection，深度包检测）网络审查的工具。它通过修改网络数据包的格式和结构，欺骗 DPI 系统，从而恢复被封锁网站的访问。B. 为什么关注网络审查日益普遍，DPI 技术被广泛用于封锁网站和服务NoDPI 提供了一个轻量级、易用的绕过方案开源项目，代码透明，使用安全跨平台支持，包括 Windows、Linux、macOS 和 AndroidC. 应用场景访问被 ISP 封锁的网站（如 YouTube）企业网络环境下访问受限资源研究网络审查和 DPI 技术原理2. 前置知识A. 必备概念DPI（深度包检测）：基于数据包内容的流量检测和过滤技术TLS/SSL：加密传输协议，ClientHello 是握手阶段的关键消息SNI（Server Name Indication）：TLS 扩展，包含目标域名代理服务器：转发网络流量的中间服务器B. 技术背景DPI 系统通常通过检查 TLS 握手阶段的 ClientHello 消息中的 SNI 字段来识别用户访问的网站，进而实施封锁。二、工作原理1. 核心机制NoDPI 在本地启动代理服务器（默认 127.0.0.1:8881），用户将浏览器的代理指向该地址。程序拦截外出的 HTTPS 连接，对 ClientHello 消息进行分片处理，使其无法被 DPI 正确识别。graph TB A[浏览器] --> B[NoDPI 代理] B --> C[ClientHello 处理] C --> D[碎片化数据包] D --> E[目标服务器] E --> B B --> A F[DPI 系统]2. 分片方法A. 随机分片（默认）ClientHello 被分割成多个随机长度的片段，每个片段都附加 ClientHello 类型前缀，然后将所有片段在一个数据包中发送。B. SNI 分片ClientHello 被分成 4 个部分：SNI 之前的部分SNI 的前半部分SNI 的后半部分SNI 之后的部分每个部分都附加类型前缀后打包发送。C. TLS 版本伪装无论使用哪种分片方法，程序都会将 TLS 版本替换为 1.3（最新的 TLS 版本）。这并不意味着数据实际按 TLS 1.3 规范传输，但可以进一步迷惑 DPI 系统。三、核心特性1. 技术优势A. 纯 Python 实现仅使用 Python 标准库无第三方依赖代码简洁，易于审计B. 易用性直观的命令行界面无需管理员权限即可运行支持开机自启动（Windows/Linux）C. 灵活配置支持黑名单模式支持自动检测被封域名可配置域名匹配模式（宽松/严格）D. 跨平台Windows、Linux、macOSAndroid 版本Docker 部署支持2. 功能特性A. 黑名单管理从文件加载黑名单自动检测被封域名支持所有域名强制分片模式B. 日志功能访问日志错误日志便于审计和故障排查C. 企业集成可集成到企业网络支持多用户使用适合团队部署四、快速上手1. 安装与运行A. 可执行文件方式# 下载并解压 # Windows nodpi.exe --blacklist blacklist.txt # Linux/macOS ./nodpi --blacklist ./blacklist.txtB. 源代码方式# 需要 Python 3.8+ git clone https://github.com/GVCoder09/NoDPI.git cd NoDPI python3 src/main.pyC. Docker 方式# 构建镜像 sudo docker build -t nodpi-proxy . # 运行容器 sudo docker run -d \ --name nodpi \ -p 8881:8881 \ -v $(pwd)/blacklist.txt:/tmp/nodpi/blacklist.txt \ nodpi-proxy \ --host 127.0.0.1 \ --port 8881 \ --blacklist /tmp/nodpi/blacklist.txt \ --quiet2. 浏览器配置将浏览器或系统代理设置为：地址：127.0.0.1端口：88813. 开机自启动# 安装（仅可执行文件版本支持） nodpi --install # 卸载 nodpi --uninstall五、命令行参数1. 完整参数列表usage: nodpi [-h] [--host HOST] [--port PORT] [--out-host OUT_HOST] [--blacklist BLACKLIST | --no-blacklist | …