Github系统工具、大模型等有趣项目

2024年8月上旬有趣的项目、工具和图书馆

SQLpage
仅使用 SQL 的网络应用程序生成器,可帮助数据分析师快速构建网站和应用程序。

SeekTune
Shazam 歌曲匹配算法的实现。

ngtop
从 nginx 访问日志中获取请求分析。

Rhombus
Rhombus 是一种具有常规表达式语法的实验性通用编程语言,它建立在 Racket 的基础上,与 Racket 具有相同的宏扩展性。

whenfs
用于 Google 日历的 FUSE 文件系统。

logu
从(流式)非结构化日志信息中提取模式。

ell
一个用 Bash 编写的 LLM 命令行界面。

Limbo
Limbo 是一个正在开发中的 OLTP 数据库管理系统,与 SQLite 兼容。

nativelink
NativeLink 是一款开源高性能构建缓存和远程执行服务器,与 Bazel、Buck2、Reclient 和其他兼容 RBE 的构建系统兼容。它提供更快的构建速度、更少的测试不稳定性以及专用硬件。

NativeLink 在生产环境中受到信赖,可以降低成本和开发人员迭代时间 -每月为其客户(包括三星等大型公司)处理超过10 亿个请求。

velocity
Velocity 是一个低延迟、速度极快、多市场和多订单的集中式加密货币交易平台。

性能基准

  • 订单下达: <1ms
  • 处理订单和发布事件: ~4ms(1-10ms)
  • 接收订单响应~6ms-10ms
  • 并行持久订单簿变更: ~10ms(5-40ms)
  • 数据库更新:每笔交易约 25-40 毫秒(更新订单、更新余额和插入交易)

数据库

  • Scylla DB: Velocity 使用 Scylla DB 进行低延迟数据库交互、恢复订单簿、维护记录和查询历史记录,确保一切顺利。
内存存储
  • 订单簿和用户余额:已注册市场的订单簿和用户余额直接存储在引擎的内存中。这样可以快速访问和更新。
  • 恢复机制:
    • 验证订单并锁定内存中用户余额后,订单被推送到MPSC通道,并继续处理订单并准备响应。
    • 另一个线程从通道中选择插入订单并在数据库中锁定用户的余额。
    • 如果引擎出现故障,ScyllaDB 会通过重播过去 24 小时的订单来帮助恢复订单簿。用户数据也会从数据库中重新加载。
订单处理
  • 订单下达:订单在 1 毫秒内排队等待匹配引擎。每个市场都有自己的专用线程,可以并行处理不同市场的订单。
  • 订单验证和并行存储:
    • 限价订单和市价订单是分开验证的,一旦验证失败,系统将向用户返回响应。
    • 成功后,用户余额将被锁定,订单将通过 MPSC 通道传输到另一个线程。
    • 该线程处理数据库条目并锁定 Scylla DB 内的用户余额。
    • 它还会做一些其他的事情来持久保留取消订单,并在恢复订单时按顺序执行。
  • 订单执行买卖订单的结构和执行方式如下:
    • 它们都是价格和限制结构的哈希图,限制结构包含该特定价格限制的所有订单。
    • 通过从最佳限制哈希图到最差限制哈希图迭代所有订单来尝试填写订单。
    • 当迭代限价哈希表时,该特定哈希表的限价被分割为限价订单。订单处理完成。
    • 如果还有剩余数量,则会将其存储在订单簿中,以便新订单来填充。
    • 对于发生的每笔交易,其数据都会通过另一个 MPSC 通道传输到市场的事件发射线程,该通道会并行发出相关的发布订阅事件和队列。
    • 订单完全处理后,我们最终通过 redis 列表将响应发送回用户。


emval
emval 是一个用 rust 编写的、速度极快的 python 电子邮件验证器。与传统验证器相比,性能提高了 100-1000 倍。

MindSearch
基于 LLM 的网络搜索引擎多代理框架(类似 Perplexity.ai Pro 和 SearchGPT)

sqlite-vec
矢量搜索 SQLite 扩展,可在任何地方运行!

dir-assistant
使用本地或 API LLM 与当前目录下的文件聊天。

PyAwaitable
用于异步函数的 CPython API。

nano-llama31
Llama 3.1 的 nanoGPT 风格版本

DCPerf
用于超大规模云应用的 DCPerf 基准套件、

AudioSample
AudioSample 是一个优化的类 numpy 音频操作库,专为研究人员创建,供开发人员使用。

Formy
使用 OpenAI 的结构化输出 API 从文本生成动态用户界面表单。

OpenAdapt
利用大型多模态模型(LMMs)实现人工智能优先流程自动化。