# LocalAgentWin7 **Repository Path**: hackha/LocalAgentWin7 ## Basic Information - **Project Name**: LocalAgentWin7 - **Description**: Local AI Agent Framework for Win7 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-16 - **Last Updated**: 2026-05-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LocalAgentWin7 🤖 > **本地 AI 智能体框架 — 专为 Windows 7 无网络环境设计** > > 内嵌 Python 3.8 解释器,零依赖绿色运行;支持 Web 界面交互 --- ## ✨ 核心功能 | 功能 | 说明 | |------|------| | 🧠 **三层记忆架构** | 短期会话 / 会话摘要 / 长期知识,跨 session 持续学习 | | 🕸️ **知识图谱语义召回** | NetworkX MultiDiGraph 驱动,每次对话自动提取三元组,按实体关联召回历史知识 | | 🔧 **OpenAI Function Calling** | 完整工具调用循环链,支持自动重试与错误恢复 | | 📦 **插件化 Skill 系统** | `skills/` 目录下 SKILL.md 自动加载,匹配关键词即注入领域知识 | | 🌐 **双端口 Web UI** | Flask + WebSocket,流式 SSE 输出,工具/技能/KG 可视化面板 | | 💬 **CLI 交互界面** | 彩色终端,支持多会话管理 | | 🔌 **多 LLM 后端** | 兼容 DeepSeek / 智谱AI / SiliconFlow / Ollama 等 | | 🖼️ **多模态支持** | 图片上传、Base64 编码、视觉模型识别 | | 📦 **离线绿色打包** | 内嵌 Python 3.8,依赖预装,Win7 无网络环境双击即用 | --- ## 🚀 快速开始 ### 方式一:普通运行(需 Python 3.8 环境) ```bash pip install -r requirements.txt # 编辑 config.yaml 填入 API Key python web_app.py # Web 界面(推荐) # 或 python ui/cli.py # 命令行界面 ``` ### 方式二:离线绿色包(Win7 无网络,无需安装 Python) 1. **运行** `package_offline.py` 打包(或直接用预打包的分发包) 2. 解压后双击 `start_web.bat` 3. 浏览器打开 `http://localhost:5000` 4. 在设置页面填入 API Key 即可使用 > ⚡ 所有依赖已预装,Python 3.8 解释器内嵌其中 --- ## 🧠 知识图谱记忆系统 LocalAgentWin7 内置了基于 **NetworkX MultiDiGraph** 的知识图谱引擎: ### 自动提取 每轮对话结束后,后台线程自动: 1. **L1 规则提取**:路径、URL、时间、版本号等结构化信息 2. **L2 句式匹配**:`XX是YY` / `负责XX` / `修复了XX` 等自然语言模式 3. **L3 事实提取**:助手回复中的关键实体关系 ### 智能召回 下次提问时,系统会: 1. 对用户输入进行**语义搜索**,匹配 KG 中的实体 2. 获取实体的关系网络(出边/入边) 3. 格式化为上下文注入 LLM System Prompt ### 可视化 Web 界面中的知识图谱面板提供: - 📊 概览(实体类型分布、最新三元组) - 🔍 图检索(关键词搜索三元组) - 🕸️ 实体关系(指定实体的关联网络) - 🎯 D3.js 力导向图(交互式可视化) --- ## 📁 项目结构 ``` local-agent-win7/ ├── agent_core.py # Agent 核心引擎(主循环 + 记忆 + KG) ├── llm_client.py # LLM 统一调用客户端 ├── web_app.py # Web UI 服务(Flask + SSE + WS) ├── package_offline.py # 离线绿色打包脚本 ├── config.yaml # 配置文件(API Key 等) ├── start_web.bat # Web 启动脚本 ├── requirements.txt # 依赖清单 │ ├── memory/ # 记忆系统 │ ├── storage.py # SQLite 三层存储 │ └── knowledge_graph.py # NetworkX 知识图谱引擎(~750行) │ ├── tools/ # 工具系统 │ ├── registry.py # 工具注册中心 │ └── builtin/ # 内置工具集(计算/时间/文件/搜索等) │ ├── skills/ # Skills 插件(自动加载) │ ├── manager.py # Skill 管理器 │ └── weather/finance/... # 领域技能 │ └── ui/ # 用户界面 ├── cli.py # 命令行界面 └── web/ # Web 界面(CSS/JS/模板) ``` --- ## 📊 架构概览 ``` 用户输入 | v +-------------------------------------------+ | agent_core.py (_build_messages) | | +-- 加载长期记忆 (SQLite) | | +-- 加载知识图谱上下文 (KG) | | +-- 匹配 Skills 插件 | | +-- 构建 System Prompt | +------------------+------------------------+ | v +-------------------------------------------+ | LLM 流式推理 (SSE) | | +-- Function Calling <--> 工具执行 | | | +-- 自动重试 x3 | | +-- 流式文字输出 | | +-- 思考过程 (Reasoning) | +------------------+------------------------+ | v +-------------------------------------------+ | 后台异步处理 | | +-- 提取用户信息 -> 长期记忆 | | +-- 生成会话摘要 | | +-- 提取三元组 -> 知识图谱 | +-------------------------------------------+ ``` --- ## ⚙️ 技术栈 | 组件 | 技术 | |------|------| | 后端框架 | Flask 2.x + WebSocket | | 核心语言 | Python 3.8(兼容 Win7) | | 知识图谱 | NetworkX 2.x MultiDiGraph | | 存储 | SQLite + JSONL | | 前端 | Vue 2.x + SSE + D3.js | | 工具协议 | OpenAI Function Calling | | 流式输出 | Server-Sent Events (SSE) | | 并发 | Threading (后台记忆/KG提取) | --- ## 🔧 内置工具 | 工具 | 说明 | |------|------| | `calculator` | 数学表达式计算 | | `time_utils` | 日期时间查询 | | `web_search` | 网络搜索 | | `web_tools` | Web 内容抓取 | | `file_ops` | 文件读写操作 | | `code_executor` | 代码执行 | | `generate_word` | Word 文档生成 | --- ## 🔌 扩展开发 ### 添加新工具 在 `tools/builtin/` 下创建 .py 文件,使用 `@tool.register` 装饰器即可自动注册。 ### 添加新 Skill 在 `skills/` 下创建目录和 `SKILL.md`,Agent 启动时自动扫描加载。 --- ## ⚠️ Win7 + Py3.8 兼容性 - 所有依赖已锁定在兼容版本范围内 - `asyncio` 使用 `WindowsSelectorEventLoopPolicy` - 不依赖任何需要编译 C 扩展的包 - 离线版内嵌 Python 3.8 embeddable,无需系统安装 Python --- ## 📄 License MIT License — 可自由使用和修改