https://github.com/57ws/ai-win11-administrator
Let the LLM control the computer autonomously,让大模型自主操作电脑
https://github.com/57ws/ai-win11-administrator
ai good-first-issue json llms python3 windows-11
Last synced: 9 months ago
JSON representation
Let the LLM control the computer autonomously,让大模型自主操作电脑
- Host: GitHub
- URL: https://github.com/57ws/ai-win11-administrator
- Owner: 57ws
- License: apache-2.0
- Created: 2025-05-24T00:53:20.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-23T14:54:59.000Z (about 1 year ago)
- Last Synced: 2025-09-28T02:43:51.300Z (9 months ago)
- Topics: ai, good-first-issue, json, llms, python3, windows-11
- Language: Python
- Homepage: https://github.com/liluoyi666/AI-win11-Administrator.git
- Size: 226 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# AI-win11-管理员
## 项目概述
本项目旨在让大语言模型(LLM)能够操作Windows 11系统。让AI输出特地格式的json,解析json中的指令,对指令进行执行,允许AI执行各种任务。这为自动化操作Windows 11系统提供了可能,使得一些重复性的任务可以由AI自动完成,提高工作效率。
***这将把AI的能力发挥到极致***
双 AI 架构原理是利用两个 AI 进行互相监督协同工作,一个 AI 负责生成指令,另一个负责确认指令是否应该执行并提出意见。这种架构能更好地应对复杂的任务和情况,且大大提升安全性。且双AI架构能极大提升用户在交互时的体验。
***AI安全性与趣味性将有巨大提升***
## 目录
- [项目概述](#项目概述)
- [项目结构](#项目结构)
- [核心特性](#核心特性)
- [AI命令格式与命令执行的原理](#ai命令格式与命令执行的原理)
- [单AI架构与双AI架构](#单ai架构与双ai架构)
- [GUI软件设计与功能介绍](#gui软件设计与功能介绍)
- [项目愿景](#项目愿景)
- [当前情况](#当前状况)
- [本地部署方法](#本地部署方法)
- [贡献](#贡献)
- [许可证](#许可证)
- [开发者留言](#开发者留言)
## 项目结构
```
AI-win11-Administrator:
main.py # 启动GUI
more_Types/ # 更多操作类型
logs/: # 日志
log_ai_executor.txt # 执行者AI日志
log_ai_supervisor.txt # 监察者AI日志
brain/: # 核心功能实现
prompts/: # AI提示词
String.py # 通用字符串
String_chat.py # 聊天提示词模板
String_work.py # 工作提示词模板
json_parser.py # json解析器
LLM_api.py # api
log_editor.py # 日志服务
powershell.py # 命令行
Control_Center/: # 中央控制系统
GUI.py # GUI
new_GUI.py # 新GUI
status.py # 系统状态类
thread_chat.py # 聊天线程
thread_work.py # 工作线程
Role_Settings/ # AI个性化角色设定(开发中)
```
## 核心特性
- **结构化JSON执行PowerShell命令**:通过特定格式的JSON,LLM可以方便地执行PowerShell命令,实现对系统的操作。
- **安全的虚拟机环境**:将程序部署在虚拟机中,增加了系统的安全性,避免因错误操作对主机系统造成影响。
- **多数据类型接口**:支持多种数据类型的接口,为LLM提供更丰富的数据处理能力。
- **单AI模式与双AI模式自由切换**:根据安全需求与经济条件选择模式,以适应不同用户需求。
## AI命令格式与命令执行的原理
### 运行流程
```
while True:
AI通过上一轮系统返回的消息,生成json
系统解析json中的指令,并执行
保留执行时系统返回的信息,下一轮返回给AI
```
### 命令格式
AI的输出需包含以下格式的json,系统会检测AI的输出,并将提取出命令,在计算机中执行:
```json
{
"type": "操作类型",
"相关命令",
"add_log": "执行操作时顺便写入日志"
}
```
任何情况下都必须存在type键,其他键具体由type决定。add_log不存在不影响操作执行,add_log存在也不会影响任何类型的操作。记入日志时会自动添加时间以及换行,无需手动添加。日志文件由系统自动维护。
### 命令执行原理
系统通过thread_work.py的核心执行循环,接收 LLM 的响应并解析其中的 JSON。根据 JSON 中的type键,调用相应的操作方法。例如,如果type为powershell,则调用PowerShellSession类的execute_command方法执行相应的 PowerShell 命令;如果type为read_log,则调用log类的read方法读取日志。
## 单AI架构与双AI架构
### 单AI架构
单 AI 架构是指整个系统中只有一个 AI解析指令和执行操作。
它直接接收用户的留言,根据内置的规则和操作手册,将用户的需求转化为具体的操作命令,并通过 PowerShell 接口执行这些命令。
### 双AI架构
设定两个AI:执行者AI与监察者AI,执行者负责编写命令以完成用户的目标,监察者当前负责决定是否应该执行执行者的命令,并为执行者提供思路与解决方案。
双方的日志分别独立,执行者的所有输出对监察者完全公开,监察者的输出只有部分向执行者分开。
后续为了平衡执行者和监察者的操作权限,还会进行进一步的平衡性调整,进一步修改其可执行命令。
双AI架构有利于提示系统稳定性与安全性,在后续开发与用户的交流对话模式下,双AI也可以提升用户在交流中趣味性。
## GUI软件设计与功能介绍
### 聊天与工作状态
初始进入GUI为聊天状态,可与AI进行聊天,可提前保存工作留言,以及进入工作状态。进入工作状态后,你无法与AI直接进行交流,但可继续追加工作留言,与AI保持交流。
在工作期间,你可以随时切换为聊天状态与AI交流,即便反复进行状态切换,AI的记忆和powershell的状态都会长期保存,从而确保AI操作的连续性,灵活性,可控性。
### 工作留言机制
在工作期间AI无法与你直接交流,但可以通过留言获取用户的任务以及提示。留言队列可以保存最新的三条用户留言,并在工作状态时呈现给AI。
在聊天状态时用户可以提前进行留言追加,在工作状态开启后AI将会得到用户的留言。在工作状态时,用户也可以进行该操作,实现在工作中途给AI传递信息。
用户的留言会实时追加到留言列表中,且自带时间信息,确保AI了解信息的时效。
### GUI布局设计
左侧为日志信息流显示区,在工作时显示AI生成的指令以及AI操作后返回的信息,在聊天时显示AI的聊天信息,当然也包括用户发送的信息以及本系统的提示信息,且这些信息都附带了时间信息。
右侧为控制面板,可切换当前状态,切换AI个数,追加工作留言。并显示工作状态信息。
## 项目愿景
### 原始计划
- **起步阶段**:让LLM能够操作PowerShell,确保程序稳定运行。
- **初期阶段**:将程序转移到虚拟机,增加更多操作语法和安全设置。
- **中期阶段**:增加更多数据类型接口,尝试让LLM自主完成某些简单项目。
- **最终阶段**:实现非虚拟机部署,让LLM安全稳定地完成人类50%的计算机任务。
### 分支计划
- **起步阶段**:实现双AI命令执行系统稳定运行。
- **初期阶段**:实现工作状态与对话状态的自由切换,既可与用户对话,也可以操作计算机。
- **中期阶段**:开发可视化窗口以及软件,增加更多数据类型接口,设计AI虚拟形象。
- **最终阶段**:完成为一集成:自动化工作,休闲聊天,电脑安全管控等功能的多功能AI桌面助手。
## 当前状况
- **单AI架构初步运行成功**
- **增加了文件读写方法,实现100行文本一次写入**
- **修改了json解析器,大大降低报错率**
- **双AI架构初步运行成功**
- **能够一次检测多个json,并按顺序运行,大大提高操作效率**
- **开发完成GUI以及聊天功能**
## 本地部署方法
### 环境准备
确保你的系统满足以下要求:
- **操作系统**:Windows 11
- **Python版本**:Python 3.x
- **依赖库**:根据`requirements.txt`文件安装所需的依赖库。可以使用以下命令进行安装:
```bash
pip install -r requirements.txt
```
### 配置API密钥
根据你使用的LLM模型,配置相应的API密钥。例如,如果你使用的是DeepSeek模型,需要设置`DEEPSEEK_API_KEY`环境变量:
```bash
export DEEPSEEK_API_KEY=your_api_key
```
### 启动项目
在项目根目录下,运行以下命令启动项目:
```bash
python main.py
```
### 运行主循环
在`main.py`文件中,你可以设置一些参数,如`max_rounds`和`msg`,来控制主循环的运行。例如:
```python
msg = '''
如果刚开始进入命令行,你会出现在该项目的主文件夹中。
你需要做:...
'''
xxx = main_cycle_single(log_path=r"logs/log_ai_executor.txt")
xxx.cycle(max_rounds=30, msg=msg)
```
## 贡献
### 如果你想完全理解代码,可按照该顺序查看代码:
1. `brain/LLM_api.py`
2. `brain/String.py`
3. `brain/powershell.py`
4. `Control_Center/thread_work.py`
### 如果你想为这个项目做出贡献,请遵循以下步骤:
1. Fork这个仓库。
2. 创建一个新的分支:`git checkout -b feature/your-feature-name`。
3. 提交你的更改:`git commit -m 'Add some feature'`。
4. 推送至分支:`git push origin feature/your-feature-name`。
5. 提交Pull Request。
```
This Markdown document provides both English and Chinese versions, with links at the beginning of each version to allow users to switch between languages easily.