月度归档:2023年02月

复盘 – ChatGPT-Feishu 项目

复盘 – ChatGPT-Feishu 项目

复盘目标

ChatGPT-Feishu

缘起

ChatGPT 火了一段时间了,我自己也玩了一段时间,但说实话,在 ChatGPT 的官网上使用这个东西实在是不方便,要切换机器,挂代理才能使用,于是,我便起了心念,想着可以做一个简单的飞书机器人,配置一下,这样我就可以在飞书里使用了。于是便写了一个这么个项目。

刚好 ChatGPT 又确实非常火, 于是便考虑把这个项目开源出去,于是便在 2 月 9 日的晚上,吃完饭的我打开电脑,开始了写 ChatGPT-FeiShu 的代码。

在写的过程中,我开了视频的录制,将整个开发的过程记录了下来,顺便,把项目开源出去 & 录制成一个 Vlog ,来作为我自己的记录,挺好。

当我录制完视频,写完代码之后,便将项目发出去睡了。接下来的几天里,我倒是没有太过费心的去研究这个项目,而是等待其自然发酵。直到今天,写下了这个复盘。

过程

这个项目做的好的?

我觉得这个项目做的好的有以下几个点:

1. 服务于小白用户

对于那些已经很擅长开发的人来说,其实我提供这个机器人并没有太大的价值。如果你仔细看我这段代码的话,会发现,这段代码并不复杂,核心就是解析飞书发过来的消息,并发给 OpenAI,然后将 OpenAI 的消息通过飞书返回回去。但他对于降低 ChatGPT 之类的产品的使用门槛有极大的帮助 —— 不再需要了解如何注册 ChatGPT 账号,一个企业只需要一个人配置, 就可以让整个企业的人用起来。

2. 提供了简洁明了的文字教程和图片教程

在后续和其他人交流时,大家对于我这个产品最大的感受是“牛,小白也可以用起来”,这个属性让我的项目得到了广泛的传播,被更多的人看到、使用,从而带来了更多后续的反馈。

这也让我更加认清出我的优势 —— 虽然我可能不是最聪明的工程师,但我可能是聪明的工程师里写教程写的最好的。虽然我可能不是写教程写的最好的工程师,但我可能是写过教程,写过代码, 还做过运营和产品的工程师,非常独特。

3. 时机还行

这个项目发布于 2022 年 2 月 10 日,距离百度指数 ChatGPT 指数级别最高的巅峰相比,稍微晚了一些。但总体来说,也不算太晚,还算是峰值比较高的时候,吃到了一波流量的红利。再加上本身简单易用,得到了不少关注和 Star。

这个项目做的差的

1. 没有更早的去寻求媒体的帮助

回溯 NESHouse 时期,会发现媒体的介入帮助我快速破圈。而这次我没有寻求媒体的帮助,也让我没能完美的吃到这一波红利。暂且不说能不能帮忙去推广,我没有主动推,就没有了可能,媒体老师也是很忙的。

后续还是要多去找一些媒体老师沟通,这样有了好的项目,也可以让他们帮忙推一下,对于我来说,有更多的好处。对于他们来说,也是更好的。

2. 迭代比较慢

说实话,这个项目因为没有什么收益的点(我并不打算做一些明确的付费服务),所以我对于项目的推进并不上心,大部分时间还在看书写字,研究自己喜欢的事情。不过得益于这个项目本身难度并不大,再加上上手很容易,还是有不少朋友进来做贡献的。感谢各位朋友参与到项目中贡献 & 在群内帮助解答问题,给我留出来了不少的空间。

后续启动一个新的项目还是要快速做投入,而不是像这次这样慢吞吞的进入,如果我可以更多的投入,或许这个项目还可以更好。

3. 太仓促,没有提前设计

做这个项目本身也只是临时起意,半夜用了一个半小时做的,再加上当时处在十分兴奋的状态,主要还是希望能够在预定时间范围内完成开发。所以其实没有太过仔细的去设计各种 Roadmap。比如,我完全可以上一次 Product Hunt 来推广一下,但当时完全没有做。

后续还是需要提前设计,或许,我应该给自己一个明确的 Checklist 清单。

数据

以下数据均截止于 2023 年 2 月 19 日晚 21 点。

飞书群

飞书群 733 人,比想象中的要多,好在是群里的大家可以帮忙互相解决问题,降低了我的群内回复的成本。

Github 互动量

项目一周多,有接近 400 Star 。

NPM 安装量

从前一个周期的周安装量 100 + 暴涨到 1600+,可以看得出来,拉量的效果非常不错。

Bilibili 视频互动量

借着 ChatGPT 的热点,这个视频一跃成为我所有视频当中播放量第二的视频。如果从互动数据(点赞收藏投币)来看,应该是第一的视频。

Youtube 视频互动量

Twitter 互动数据

展示量 13 万,参与量和链接转化都很不错。

走正道,可能有点慢,但更安全

走正道,可能有点慢,但更安全

我在开发 ChatGPT-Feishu 这个项目的时候,并没有选择使用网页版的 chat.openai.com 的服务来进行 Hack。我在社区里看到大量通过 Hack 的方式,来提供了 ChatGPT 的 API 能力。

不可否认,网页版的能力是要比其通过 API 的方式提供的产品能力更强(毕竟模型更新),但对于一个成型的产品而言,稳定是远比能力更强更重要的。能力更强,我们可以通过一些技术手段来实现 — 比如通过数据库来实现多轮对话,可能功能不够强,但确是一个明确可以演进的方向。

Hack 官方未开放的 API ,虽然可以使用,但也带来了极高的维护成本。你可能需要不停的去更新和维护未开放的 API 的实现方式,与官方斗智斗勇。

作为一个 Side Project,没必要做的那么累。

如何处理 Github Action 报出的 remote: Permission to xx x denied to github-actions[bot]  问题

如何处理 Github Action 报出的 remote: Permission to xx x denied to github-actions[bot] 问题

在帮 @MikeyWei 搭建 Beyond-the-World 的网站时,他希望我能够实现 Hexo 自动的部署能力,这样作为一个写作者,他可以只关注于写作(只需要复制粘贴 Markdown)本身,不需要去处理 Hexo 本身的配置问题。所以我便借助 GitHub Action 来实现自动部署,帮助他实现想要的目标。

不过,在执行过程中遇到了一个问题,Github 提示 remote: Permission to xx x denied to github-actions[bot]

GitHub 提示

但我使用的是 Github 默认的 Secret Token ,并没有手动配置,所以并没有发现有配置权限的地方。而过去同样方式又是可以的,所以可能的问题便是 Github 提供了新的配置,导致这个 Token 默认没有权限了。

我的配置文件

仔细研究后发现, Github 的确是新增了一个配置,在项目的 Settings – Actions – General 当中,新增了一个选项 workflow permissions。你可以通过直接修改这个选项,来为你的 Flow 提供默认的读写权限。

不过,由于我不是组织的管理员,所以没办法设置,所以我选择了另外一个方式,在 Action 的 yaml 中添加了 permission 的描述,为这个 Job 新增了写权限,默认的 Token 便拥有了写权限。

延展阅读

https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token

ChatGPT 与聊天软件的结合

ChatGPT 与聊天软件的结合

ChatGPT 与聊天软件的结合会是一个不错的爆点。因为机器人的出现,可以让你在不丢失上下文的同时,完成你的工作,这样的形态会帮助 ChatGPT 快速的完成拓展。

网页版的 ChatGPT 虽然更强,但终归还是可以通过 API 来体验到的,但集成在各种工作的上下文当中,可以帮助机器人达成更强的能力。

对于 ChatGPT 来说,飞书、Slack、Telegram、Discord、Teams 来说,都有一定的空间可以用来做一些事情。

值得你去进行一定的投入。

ChatGPT,为独立开发者提供了更多可能

ChatGPT,为独立开发者提供了更多可能

独立开发者很大的一个问题是能力范围有限,但有了 ChatGPT,你可以成为一个更强大的独立开发者。

自立的这条 Tweet 给了我灵感。

作为一个独立开发者,我们其实会面临很多不同场景下的需求,比如我们需要写软件的更新日志、写用户教程、做活动推广,这些对于独立开发者来说,都是需要耗费精力才能完成,有了 ChatGPT,我们(可能)可以快速获得一个80分的对应角色的人,我们可以问他们各种需要的能力,从而来提升我们做事的效率。

AI 不会让专业的人失业,但的确可能会让半吊子失去了工作。但对于 AI 的用户来说,真的是科技普惠众生了。

如何解决 Gem 安装 Rails 无法执行的问题

如何解决 Gem 安装 Rails 无法执行的问题

如何解决 Gem 安装 Rails 无法执行的问题?

由于我并不在大型生产环境使用 Ruby on Rails,都是在一些自己的 Side Project 上使用 Ruby On Rails,所以一直以来,我都是使用 Homebrew 来安装最新版本的 Ruby & Gem。

最近升级了 M1 以后,重新在配置 Ruby ,突然发现之前的配置失效了。在配置 Rails 时,发现报了个错: Rails is not currently installed on this system. To get the latest version, simply type:

截图
截图

但我可以肯定的是,我已经执行过了 gem install rails,所以出问题的不可能是我没安装,唯一的可能便是我安装的 Rails 没有安装到 PATH 当中

所以想要解决这个问题,只需要将我安装 gem 的路径添加到 path 中即可。

解决方案

1. 获取具体的 Path

执行 gem info rails 来获取到我的 rails 安装的路径,这里可以看到,被安装在了 /opt/homebrew/lib/ruby/gems/3.2.0 路径。

2. 找到 Bin 目录

使用 cd /opt/homebrew/lib/ruby/gems/3.2.0 进入到 gem 目录。你可以看到这里有个 bin 目录,bin 目录就是我们具体要用的可执行文件。

你可以执行 ./rails -v 来确认版本正确。

3. 修改 PATH 环境变量

接下来就是修改你的 PATH 环境变量了。在你用的 Shell 的配置文件当中,加入相应的 path 配置,并重启终端,即可完成配置。

4. 验证配置

重启终端后,随便找个目录,执行 rails -v,查看其结果,来验证我们的配置已经生效。如果你可以看到类似下面的结果,则说明你的配置已经生效了~