【开源软件】最好的开源软件-2022-第28名 EleutherAI
GPT-NeoX-20B是一个新的200亿参数的自然语言处理模型,由早期GPT-J的发行商EleutherAI创建,这是一个60亿参数的模型。与OpenAI的GPT-3相比,这些模型可能看起来很小,GPT-3有1750亿个参数,但它们使用LAMBADA、Winogrande、Hellaswag和其他数据集取得了强大的基准测试结果。你可以测试GPT-J的句子完成,并执行更高级的NLP任务,如翻译和分类。
EleutherAI推动开源如此强大的模型的背后是什么?该项目的创始人之一Conor Leahy解释道,“我们必须把人工智能视为思维与我们不同的奇怪外星人。”目标是让尽可能多的研究人员能够使用这项技术,这样我们就可以学会如何控制它。
——Isaac Sacolik
【开源软件】最好的开源软件-2022-第27名 Stable Diffusion
Stable Diffusion是一个文本到图像的人工智能模型,可以生成质量惊人的图像。该项目成立仅两个月,就如野火般蔓延,世界各地的爱好者已经在对原作进行改进,以加快生成速度,在内存较低的GPU上运行,并增加内画和外画支持。他们甚至在M1驱动的MacBooks上运行了Stable Diffusion。
Stability.ai花了60万美元训练这个模型,并立即将其作为开源(与OpenAI的DALL-E形成对比)。虽然这样的模型肯定会引发人们对数据集管理和创建NSFW图像的能力的担忧,但几乎可以肯定的是,这项技术最好掌握在每个人手中,而不仅仅是少数几家大公司手中,无论是为了推进研究,还是为了在未来几年创作艺术作品。——Ian Pointer
【开源软件】最好的开源软件-2022-第26名 Accelerate
如果只需添加四行代码,就可以将大规模的分布式训练和推理添加到任何PyTorch代码中,会怎么样?Huggingface的Accelerate开箱即用,允许您通过简单的配置开关使用TPU设备或微软的DeepSpeed优化等功能。是的,您可以使用分布式训练、分片并行和梯度积累等技术,在十亿参数规模上训练深度学习模型,所有这些都由Accelerate库在幕后处理。确保大模特的培训不仅限于行业中的重量级人物,这对多样性和实验性很重要,因此看到Accelerate成为PyTorch生态系统的一部分令人振奋。
——Ian Pointer
【开源软件】最好的开源软件-2022-第25名 nbdev
使用Jupyter或Google Colab等环境进行笔记本编程的一个肮脏秘密是,它产生了一些你见过的最糟糕的意大利面条代码,数据科学家从一个Cell跳到另一个Cell,造成了无法维护的混乱。有些人甚至说,笔记本编程可能和GOTO当年一样有害。nbdev拥抱笔记本编程的好处,并试图减轻坏处。
nbdev是fast.ai的一个支持Git的Jupyter笔记本驱动的开发平台,它为数据科学家提供了所需的探索自由,但也能够在同一个笔记本内轻松创建带有文档的模块,是的,甚至可以进行适当的测试。你会发现它在Netflix和Lyft等公司使用,当然还有fast.ai,它们使用nbdev创建了fast.ai库的新版本。
——Ian Pointer
【开源软件】最好的开源软件-2022-第24名 JAX
谷歌广受欢迎的开源TensorFlow机器学习平台的创新包括自动微分(Autograd)和用于深度学习的XLA(加速线性代数)优化编译器。JAX同样来自谷歌,是另一个将这两种技术结合在一起的项目,它在速度和性能方面提供了相当大的好处。当在GPU或TPU上运行时,JAX可以替换其他调用NumPy的程序,但它的程序运行得更快。(Autograd引擎可以自动区分原生Python和NumPy代码。)此外,将JAX用于神经网络可以使添加新功能比扩展TensorFlow等更大的框架更容易。
——马丁·海勒
【开源软件】最好的开源软件-2022-第23名 Apache Druid
Apache Druid是一个实时分析数据库,通过Kafka、Kinesis和其他平台的流摄取,提供亚秒查询、高并发性以及实时和历史见解。该技术建立在10年的发布、400多名贡献者和分布式数据存储架构的基础上,该架构结合了数据仓库、时间序列数据库和搜索系统的思想。包括Netflix、Salesforce和沃尔玛在内的数千家公司使用Druid为分析应用程序提供支持。用例包括点击流分析、风险和欺诈分析以及供应链分析。开发人员可以查看Apache Druid的介绍和成功故事的电子书,开始学习。
——Isaac Sacolik
【开源软件】最好的开源软件-2022-第22名 Apache Iceberg
Apache Iceberg是一种用于大型分析表的高性能格式,它将SQL表的可靠性和简单性带到了大数据中,同时使Trino、Spark、Sonar、Presto、Hive、Flink和Impala等引擎能够同时安全地使用相同的表。Iceberg支持灵活的SQL命令来合并新数据、更新现有行和执行有针对性的删除。它可以急切地重写数据文件以获得读取性能,也可以使用删除增量以获得更快的更新。Iceberg支持模式进化、自动分区、时间旅行查询、版本回滚和开箱即用的数据压缩。
——马丁·海勒
【开源软件】最好的开源软件-2022-第21名 Redpanda
Redpanda是主要用C++编写的Kafka的插件替代品,它使用Seastar异步框架和Raft共识算法作为分布式日志。它可以将平均延迟降低10倍,Kafka事务速度提高6倍,同时运行的资源更少。Redpanda不需要使用ZooKeeper或JVM,其源代码可在GitHub上获得商业源代码许可证(BSL)。
即使在C++中重新实现之外,Redpanda也使用异步、无共享、每个核心线程的模型,无锁定、最小上下文切换和线程本地内存访问。Redpanda通过内联WebAssembly转换和地理复制的分层存储/阴影索引,超越了Kafka协议,进入了流媒体的未来。
——马丁·海勒
【开源软件】最好的开源软件-2022-第20名 Dapr
对于分布式应用程序,每次构建新服务时,都会面临同样的无数问题:保护连接、设置可观察性、处理状态、处理消息等。所有这些都需要一次又一次地完成,通常是使用不同的第三方服务,所有这些都为您的代码添加了一层cruft,并将其与您可能不想继续使用的外部服务联系起来。
进入CNCF的孵化项目Dapr,它致力于消除一些困难和重复。Dapr作为应用程序的助手运行,可以抽象出微服务连接的复杂性。你的应用程序与Dapr对话,其余的由Dapr完成,所以你可以在AWS上运行并使用Kinesis,或者在谷歌云上运行并用PubSub,你的服务不需要知道区别。您可以在应用程序逻辑上花费更多的时间,而在所有粘合代码上花费更少的时间。
——Ian Pointer
【开源软件】最好的开源软件-2022-第19名 Grafana
Grafana的创建者努力制作一个开源仪表板来统治所有人,但很难找到另一个接近的产品——无论是完全专有的还是像Grafana一样具有付费选项的开源产品。Grafana 8.0将普罗米修斯警报可视化与Grafana本地警报相结合,并通过普罗米修斯警报器管理器处理来补充这一点。Grafana 9.0为Prometheus PromQL和Loki LogQL查询语言添加了查询构建工具;允许您使用缩略图预览面板,而不仅仅是描述;并在产品的企业版中将基于角色的访问控制从测试版提升为通用版。