
作者:HelloGitHub-小鱼干
火了一周的 ChatGPT,HG 不允许还有小伙伴不知道这个东西是什么?简单来说就是,你可以让它扮演任何事物,据说已经有人用它开始了颜色文学创作。因为它太火了,所以,本周特推在几十个带有“chatgpt”的项目中选取了两个有代表性的项目,希望你能玩好这个新玩具。
除了很火的 ChatGPT,本周还有搞 Python 编译速度贼快的 codon,搞监控很潮的 uptime-kuma,井井有条管理微服务的 conductor,简化你操作、低资源消耗生成文本图片的 InvokeAI,以及专注中间人攻击的 bettercap。
以下内容摘录自微博@HelloGitHub 的 GitHub Trending 及 Hacker News 热帖(简称 HN 热帖),选项标准:新发布 | 实用 | 有趣,根据项目 release 时间分类,发布时间不超过 14 day 的项目会标注 New,无该标志则说明项目 release 超过半月。由于本文篇幅有限,还有部分项目未能在本文展示,望周知 🌝

上上周五发布的 ChatGPT 果然在本周火了一把,各种文章层出不穷,HG 也发了一篇它是否会开源的文章 《ChatGPT 会开源吗?》。一周过去了,它的热度不减,几乎屠版了 GitHub 各大编程榜。这不,本周特推就分享两个它相关的项目。
New 如何让 ChatGTP 乖乖地按照你的指示来行事,大概你需要知道“前辈”们是如何训练它的。awesome-chatgpt-prompts 收录大量 ChatGPT 指示,比如:扮演 Linux 终端、英文翻译、面试官。掌握了这些角色扮演触发方式,相信你和 ChatGPT 有更多的有趣故事发生。
GitHub 地址→https://github.com/f/awesome-chatgpt-prompts
主语言:TypeScript
New 在应用中掌握某种技术,是常见的学习方法。现在轮到 ChatGPT 了,在微信上迅速接入 ChatGPT,让它成为你最好的助手试试。这个项目实现的如下功能:
通过 wechaty,将 ChatGPT 接入微信
创建 OpenAI 的账户池
支持通过代理登陆 OpenAI
加入了持续对话的功能(每一个微信用户都保持自己的对话上下文)
加入 Dockerfile
发布到 Docker.hub
通过 Railway 进行部署
实现 OpenAI 账户池的热加载
当 OpenAI 返回码为 429/503 时自动重试
GitHub 地址→https://github.com/fuergaosi233/wechat-chatgpt
本周 star 增长数:1,800+,主语言:C++、Python
New 一个用 LLVM 实现的高性能、零开销、可扩展的 Python 编译器,无需任何 runtime 开销它就能将 Python 代码编译为原生机器码。此外,单线程的话 Python 的速率将能提升 10-100 倍,或者更多;而它的编译性能可以和 C/C++ 近似。与 Python 不同的是,Codon 支持原生多线程,这可以使编译速度更快。
Codon 是与 Python 兼容的,任何 Python 代码几乎可以不做修改便可以在 Codon 运行,像是下面这样:
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
fib(1000)
GitHub 地址→https://github.com/exaloop/codon
本周 star 增长数:950+,主语言:JavaScript
一个神奇的监控工具,有着好看的 UI 界面。不只是颜值,它还有:
监视 HTTP(s)、Ping、DNS Record、Docker 容器等服务的正常运行时;
响应式、灵敏的 UI/UX;
集成多种通知方式,比如:Telegram、Discord、Slack、Email 等等 90+ 通知服务;
支持多语言、多种状态界面;
2FA 可用;
GitHub 地址→https://github.com/louislam/uptime-kuma
本周 star 增长数:1,350+,主语言:Java
Netflix 开源的微服务编排工具,用来协调微服务的工作流,项目采用了 Java 编写,需要 JDK 11 以上版本,UI 部分需要 Node.js 14 以上。
GitHub 地址→https://github.com/Netflix/conductor
本周 star 增长数:1,300+,主语言:Jupyter Notebook
读过上周卤蛋写的 ChatGPT 会开源吗?,大名鼎鼎的 DALL-E 和 ChatGPT 是师出同门。DALL-E 是文本生成图片领域的知名项目,InvokeAI 也是。不过,相较于其他项目,InvokeAI 更加轻量,它简化了图片生成的过程,通过各类选项帮助生成对应图片。此外,它能运行在 Windows、macOS、Linux 等主流操作系统,只要你有个 GPU 以及 4GB 的内存,就能用。比如,下图便是一个“草莓寿司”文本生成的图片。
GitHub 地址→https://github.com/invoke-ai/InvokeAI
本周 star 增长数:700+,主语言:Golang
网络安全从业人员的瑞士军刀,一个适用 802.11、BLE、IPv4 和 IPv6 的中间人攻击框架,可主动/被动探测 IP 网络情况。部分特性:
Wi-Fi 扫描,绕开验证攻击、无客户端 PMKID 关联攻击、自动的 WPA / WPA2 客户端握手捕获;
数据包、TCP、HTTP / HTTPS 级别的代理脚本,可方便集成 JS 插件;
强大的网络嗅探器,可获取凭证,也可以作为网络协议 fuzzer;
端口快扫;
有个强大的 REST API 支持 WebSocket 上的异步事件通知,从而轻松协调攻击;
便捷的 Web UI;
GitHub 地址→https://github.com/bettercap/bettercap
往期回顾:
以上为 2022 年第 49 个工作周的 GitHub Trending 🎉如果你 Pick 其他好玩、实用的 GitHub 项目,记得来 HelloGitHub issue 区和我们分享下哟 🌝
最后,记得你在本文留言区留下你想看的主题 Repo(限公众号),例如:AI 换头。👀 和之前的送书活动类似,留言点赞 Top3 的小伙伴(棒),小鱼干会努力去找 Repo 的^^
- END -HelloGitHub 交流群现已全面开放,添加微信号:HelloGitHub001 为好友入群,可同前端、Java、Go 等各界大佬谈笑风生、切磋技术~
👆 关注「HelloGitHub」第一时间收到更新👆
我正在查看instance_variable_set的文档并看到给出的示例代码是这样做的:obj.instance_variable_set(:@instnc_var,"valuefortheinstancevariable")然后允许您在类的任何实例方法中以@instnc_var的形式访问该变量。我想知道为什么在@instnc_var之前需要一个冒号:。冒号有什么作用? 最佳答案 我的第一直觉是告诉你不要使用instance_variable_set除非你真的知道你用它做什么。它本质上是一种元编程工具或绕过实例变量可见性的黑客攻击
question的一些答案关于redirect_to让我想到了其他一些问题。基本上,我正在使用Rails2.1编写博客应用程序。我一直在尝试自己完成大部分工作(因为我对Rails有所了解),但在需要时会引用Internet上的教程和引用资料。我设法让一个简单的博客正常运行,然后我尝试添加评论。靠我自己,我设法让它进入了可以从script/console添加评论的阶段,但我无法让表单正常工作。我遵循的其中一个教程建议在帖子Controller中创建一个“评论”操作,以添加评论。我的问题是:这是“标准”方式吗?我的另一个问题的答案之一似乎暗示应该有一个CommentsController参
我喜欢使用Textile或Markdown为我的项目编写自述文件,但是当我生成RDoc时,自述文件被解释为RDoc并且看起来非常糟糕。有没有办法让RDoc通过RedCloth或BlueCloth而不是它自己的格式化程序运行文件?它可以配置为自动检测文件后缀的格式吗?(例如README.textile通过RedCloth运行,但README.mdown通过BlueCloth运行) 最佳答案 使用YARD直接代替RDoc将允许您包含Textile或Markdown文件,只要它们的文件后缀是合理的。我经常使用类似于以下Rake任务的东西:
我一直致力于让我们的Rails2.3.8应用程序在JRuby下正确运行。一切正常,直到我启用config.threadsafe!以实现JRuby提供的并发性。这导致lib/中的模块和类不再自动加载。使用config.threadsafe!启用:$rubyscript/runner-eproduction'pSim::Sim200Provisioner'/Users/amchale/.rvm/gems/jruby-1.5.1@web-services/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:105:in`co
我需要一些关于TDD概念的帮助。假设我有以下代码defexecute(command)casecommandwhen"c"create_new_characterwhen"i"display_inventoryendenddefcreate_new_character#dostufftocreatenewcharacterenddefdisplay_inventory#dostufftodisplayinventoryend现在我不确定要为什么编写单元测试。如果我为execute方法编写单元测试,那不是几乎涵盖了我对create_new_character和display_invent
英文版英文链接关注公众号在“亚特兰蒂斯的回声”中踏上一段难忘的冒险之旅,深入未知的海洋深处。足智多谋的考古学家AriaSeaborne偶然发现了一件古代神器,揭示了一张通往失落之城亚特兰蒂斯的隐藏地图。在她神秘的导师内森·兰登教授的指导和勇敢的冒险家亚历克斯·默瑟的帮助下,阿丽亚开始了一段危险的旅程,以揭开这座传说中城市的真相。他们的冒险之旅带领他们穿越险恶的大海、神秘的岛屿和充满陷阱和谜语的致命迷宫。随着Aria潜在的魔法能力的觉醒,她被睿智勇敢的QueenNeria的幻象所指引,她让她为即将到来的挑战做好准备。三人组揭开亚特兰蒂斯令人惊叹的隐藏文明,并了解到邪恶的巫师马拉卡勋爵试图利用其古
我在OSX上(如果重要的话)。如果我使用RVM安装Ruby,它会默认将Bundler安装到@globalgemset假设我想要一个不同版本的bundler。我假设我需要做的就是执行geminstallbundler--version但是,这会将bundler安装到默认gemset并且RVM不会为其设置路径。因此,如果我键入bundler,它仍会启动一个与Ruby一起安装到@global中的bundler两个问题:如何将bundler安装到@globalgemset。将bundler安装到@globalgemset中的模式是否正确,或者我遗漏了什么 最佳答案
什么Ruby或RailsDSL会将字符串"mccdougal"格式化为"McDougal",同时留下字符串"McDougal"原样?将titleize传递给"McDougal"结果如下:"McDougal".titleize#=>"McDougal" 最佳答案 据我所知,没有可以处理这种情况的Rails助手。这是一个非标准的边缘案例,需要特殊处理。但是,您可以创建自定义字符串变形。您可以将这段代码放入初始化程序中:ActiveSupport::Inflector.inflections(:en)do|inflect|inflect.
我使用Jekyll运行博客,并认为我会解决RedcarpetMarkdown解释器,因为它是developedandusedbyGitHub.好吧,我只是碰巧遇到了一个错误,去检查问题,然后foundthis.Maintainersays,"Asyouprobablyhavenoticed(harharharhar)Idon'thavetimetomaintainRedcarpetanymore.It'snotapriorityforme(IfindMarkdownthoroughlyboring)andit'snotapriorityforGitHub,becausewenolong
我的一个模型中有一个名为sui的字段。它代表“标准用户标识符”。当该字段出现验证错误时,Rails会打印“Suiisrequired”或“Suiisalreadytaken”。如何告诉Rails'sui'.titleize是“SUI”?我查看了Inflector.human,但这并不完全正确。 最佳答案 在这种情况下,我使用custom_err_msg插入。安装后,您可以提供如下自定义错误消息:validates_presence_of:sui,:message=>'^SUIisrequired'当您将^放在开头时,Rails不会输