如何用Rust编写一个ChatGPT桌面应用(保姆级教程)

京东云开发者
• 阅读 75

为什么我们需要一个桌面应用
原因实在太多,我们需要便捷地导出记录,需要在回答长度超长的时候自动加上“继续”,需要收藏一些很酷很实用的prompt......
(首先我假设你是一名如我一样习惯用IDEA开发的java仔)

  1. 安装 Rust 语言工具链:首先,请确保你已安装了 Rust 编程语言工具链,包括 Rust 编译器 (rustc) 和包管理工具 (cargo)。可以通过访问 Rust 官方网站 并遵循说明来安装。如何用Rust编写一个ChatGPT桌面应用(保姆级教程)

  2. 安装 Rust 插件:打开 IntelliJ IDEA,然后转到 "File" > "Settings" (Windows/Linux) 或 "IntelliJ IDEA" > "Preferences" (macOS)。在设置窗口中,选择 "Plugins",搜索 "Rust",然后单击 "Install"。安装完成后,重启 IntelliJ IDEA。

  3. 创建新的 Rust 项目:在 IntelliJ IDEA 中,选择 "File" > "New" > "Project",然后在项目类型列表中选择 "Rust"。按照提示配置项目设置,然后单击 "Finish" 以创建新项目。

  4. 添加 GUI 库:你可以选择的 GUI 库(如 GTK 或 Qt),在项目的 Cargo.toml 文件中添加相应的依赖项。例如,对于 GTK,需要添加如下依赖:

    [dependencies]
    gtk = "0.9"
  5. 编写代码:使用 IntelliJ IDEA 编辑器编写 Rust 代码。Rust 插件会提供代码补全、语法高亮、错误提示等功能。

  6. 构建和运行:使用 IntelliJ IDEA 的内置终端或外部终端运行 cargo buildcargo run 命令,以构建和运行你的 Rust 桌面应用程序。

为了验证这个流程是否足够保姆级,我提前发给学弟操作了一遍,最后在cargo run 这里报错没有glib-2.0
这是因为在 macOS 上运行包含 gtk 依赖项的 Rust 项目时,需要先在系统上安装 GTK+ 和相关库。可以通过使用 Homebrew 包管理器来解决这个问题。请按照以下步骤操作:

  1. 如果尚未安装 Homebrew,请访问 Homebrew 官方网站 并按照说明进行安装。

  2. 打开终端并运行以下命令以安装 GTK+ 及其依赖库:

    brew install gtk+3
    brew install adwaita-icon-theme
  3. 安装 pkg-config 工具:

    brew install pkg-config
  4. 设置环境变量,让 Rust 编译器和链接器能够找到 GTK+ 库。在 shell 配置文件中(如 ~/.bashrc~/.zshrc~/.zshrc 等),添加以下行:

    export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
  5. 保存更改并重新加载 shell 配置文件,以使更改生效。比如你修改了 ~/.zshrc,则应运行以下命令:

    source ~/.zshrc

如何用Rust编写一个ChatGPT桌面应用(保姆级教程) 当你看到这个hello world,就已经成功一大半了。
因为已经有大佬开源了一套 https://github.com/lencx/ChatGPT 目前star过3w
很可惜的是,由于被盗用和潜在的法务风险,后续更新就不开源了,大家也可以基于这个版本发挥自己的创造力了。
如何用Rust编写一个ChatGPT桌面应用(保姆级教程) 上图就是提供了便捷下载的一个示例。

大家如果想基于这个版本开发,或者有别的使用过程中的问题,欢迎交流。剩下的那就等下次更新了~

点赞
收藏
评论区
推荐文章
Alex799 Alex799
3年前
11个基于vue的UI框架_U.R.M.L
ElementUI来自中国,由与MintUI相同的开发者所创建。ElementUI是用于Web和桌面应用程序的桌面UI工具包,如果你需要开发Electron应用,这个库会是你的理想之选。iView是一个UI工具包,其中包含简洁又设计优雅的小部件和各种组件。iView团队维护非常及时,最近一次的更新在19年3
晴雯 晴雯
1年前
SmartGit密钥许可 Git客户端 支持M1M2
是一款非常实用的版本控制工具。如果你是一名程序员,使用SmartGit可以帮助你更轻松地管理代码,在多人协作开发过程中更容易地掌控整个代码库。今天我就来分享一下我使用SmartGit的心得体会。首先,SmartGit有着非常友好的界面,让人很容易上手。安装
Python进阶者 Python进阶者
2年前
盘点儿童智力开发的首选编程语言——Scratch
大家好,我是IT共享者,人称皮皮。前言Scratch作为少儿编程的首选编程语言,这几年发展的如火如荼,当然,这主要还是因为它简单易学,不用掌握太多概念即可编程,这意味着你不用认识英文单词,编程照样行云流水,是不是很激动?那么现在让我们一起进入Scratch的世界吧。一、安装Scratch首先我们需要安装Scratch,下载地址:https://u062.
Stella981 Stella981
2年前
Python从零实现区块链仿真【含源码】
在区块链或数字货币领域,Python并不是主流的开发语言。但是如果你的目的是研究区块链技术的原理,或者需要在自己的笔记本上仿真一个区块链网络并进行一些研究性的实验,比如完成自己的毕业设计项目或科研课题,那么Python就是合适的。在这个教程里,我们将学习如何使用Python从零开发一个多节点的区块链网络,并基于这个仿真区块链网络,开发一个去中心化的数据分享应
Stella981 Stella981
2年前
Python大佬用20行代码带你打造一个微信聊天机器人(附代码)
近来,打开微信群发消息,就会秒收到一些活跃分子的回复,有的时候感觉对方回答很在理,但是有的时候发现对方的回答其实是驴唇不对马嘴,仔细深究发现,原来对方是机器人。今天,小编就带大家用20行代码,带你一起打造一个微信聊天机器人,让你的微信群一直嗨不停~~首先我们需要安装一个微信相关的第三方库,itchat,在Windows上通过命令:pipinstall
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
2年前
Polkadot
polkadotk8s是一个用于快速搭建安全的Polkadot或Kusama验证节点的开源项目。Polkadot是一个支持分片的采用POS共识的区块链,Kusma是Polkadot的测试网络。在这个教程中,我们将学习如何利用自动化工具在GoogleKubernetesEngine上部署Polkadot验证节点,不需要编译任何Rust代码或安全任何启动脚
【保姆级教程】如何用Rust编写一个ChatGPT桌面应用 | 京东云技术团队
为什么我们需要一个桌面应用原因实在太多,我们需要便捷地导出记录,需要在回答长度超长的时候自动加上“继续”,需要收藏一些很酷很实用的prompt......(首先我假设你是一名如我一样习惯用IDEA开发的java仔)
liam liam
1年前
通过 Postman 提升你的接口测试技能
在现代软件开发生命周期中,接口测试是一个至关重要的部分。使用Postman这一工具,可以轻松地进行。以下是一份简单的使用教程,帮助你快速上手。安装Postman首先,你需要在电脑上安装。你可以从官网上下载并安装它。安装完成后,你可以打开应用并创建一个新的请