菜单

概述

相关源文件

介绍

ChatGPT 桌面应用程序是 OpenAI ChatGPT 服务的跨平台桌面封装。它使用 Tauri 框架构建,为 Windows、macOS 和 Linux 上的 ChatGPT 提供原生桌面集成。本文档提供了关于应用程序目的、架构和功能的高层概述,以及它与后继者 Noi 的关系。

有关系统架构的详细信息,请参阅 系统架构。有关迁移到 Noi 的信息,请参阅 迁移到 Noi

来源: README.md1-24

应用程序结构

ChatGPT 桌面应用程序遵循一种混合架构模式,将 Web 技术与原生功能相结合。其核心是使用 Tauri 框架创建一个桌面应用程序,该应用程序将 Web 内容封装在原生操作系统窗口中。

该应用程序分为不同的层

  1. 前端:基于 React 的用户界面组件
  2. Tauri Bridge:通过命令和事件连接 Web UI 与原生功能
  3. 后端:基于 Rust 的核心功能,负责应用程序逻辑
  4. 系统集成:与主机操作系统进行接口

来源: .vscode/extensions.json1-4 README.md3-4

多 Webview 方法

ChatGPT 桌面应用程序的一个关键特色是其多 Webview 架构。它不是为整个应用程序使用一个 Webview,而是将用户界面划分为专门的 Webview。

这种多 Webview 方法提供了几个优势

  • 针对不同功能进行优化的 UI 组件
  • 改进的性能和资源管理
  • 通过原生控件增强的用户体验

有关多 Webview 系统的更多详细信息,请参阅 多 Webview 系统

来源: README.md24 (显示 GIF 中的应用程序界面)

用于通信的命令系统

该应用程序使用基于命令的通信系统,以实现前端(JavaScript/React)和后端(Rust)之间的交互。这提供了一种执行管理窗口、处理用户输入和访问原生功能等操作的结构化方法。

命令系统是应用程序不同层之间的主要通信桥梁,实现了跨 Web 和原生边界的协调运行。有关更多详细信息,请参阅 命令系统

来源: .vscode/extensions.json2 (指示 Tauri 和 Rust 技术栈)

主要功能

ChatGPT 桌面应用程序提供了一系列功能来增强 ChatGPT 的体验

功能描述
跨平台支持适用于 Windows、macOS 和 Linux
原生桌面集成系统通知、托盘图标等。
自定义用户界面优化交互的专用 UI
独立的“提问”面板快速发送提示到 ChatGPT 的入口
自定义标题栏增强的窗口控件和导航
主题支持可自定义的应用程序外观

有关特定功能的更详细信息,请参阅 功能

来源: README.md3-4 README.md24

与 Noi 的关系

ChatGPT 桌面应用程序现已被视为 Noi 的前身,Noi 被描述为“ChatGPT 桌面应用程序概念的后继者”。虽然此应用程序专门专注于为 ChatGPT 提供桌面界面,但 Noi 被定位为功能更强大、功能更全面的 AI 封装应用程序。

正如 README 中所述,OpenAI 已发布了官方的 macOS 版 ChatGPT,并计划发布 Windows 版。项目维护者目前正专注于开发 2.0 版,以提供差异化功能,从而超越官方应用程序的价值。

有关迁移和未来方向的更多详细信息,请参阅 迁移到 Noi

来源: README.md15-22

当前状态

项目正在演进中

  1. 之前的稳定版本:v1.1.0 可供想要 prior 实现的用户使用
  2. 开发重点:2.0 版目前正在开发中,重点在于实现差异化功能
  3. 后继应用程序:Noi 正在开发中,将成为功能更强大的 AI 封装应用程序

项目团队正在积极为 2.0 版寻找差异化功能,以提供超越官方 OpenAI 桌面应用程序的价值。

来源: README.md15-22