註冊並分享邀請連結,可獲得影片播放與邀請獎勵。

WangErxi
@WangErxi
Worked @AstroVelaAI; Apache Paimon Committer & GreptimeDB Committer
483 正在關注    107 粉絲
Vane 0.1.0 正式发布 🎉 今年 7 月中旬,我们决定将 Vane 开源,希望它能在真实的使用、讨论和协作中持续成长。这段时间,最让我感到惊喜的是在 库中有来自外部的贡献者,说明是真的有用户在尝试 Vane。 感谢每一个 Star、Issue、PR 和建议,也感谢所有参与开发、关注和支持 Vane 的朋友。 0.1.0 是一个新的起点。欢迎使用,也欢迎一起参与建设。
顯示更多
🎉 Vane 0.1.0 Is Officially Released Vane Data is a high-performance multimodal data engine built for AI workloads. Forked from DuckDB, it provides native multimodal processing and a unified execution model for both local and distributed environments. 🔧 Core Features Distributed DuckDB execution engine Extends DuckDB with distributed physical plans, distributed Plan Fragments, FTE (Fault-Tolerant Execution) scheduling, and distributed operator execution, with Arrow Flight providing cross-worker Exchange/Shuffle data transport. Python UDFs Relation UDFs support row-wise map, Arrow Table-based map_batches, and one-to-many flat_map. Expression UDFs provide @vane.func, @vane.cls, and their corresponding .batch forms. Scalar, batch, and class UDFs can all be registered as SQL functions through vane.attach_function(). AI Functions Provides typed Prompt and Embed APIs across the Python Expression API, Relation API, and SQL. Prompt integrates with OpenAI, Anthropic, Google, and the native vLLM backend, while Embed supports OpenAI, Google, and SentenceTransformers. Structured outputs and image Prompt inputs are available where supported by the provider. Native vLLM batch execution Implements a native Physical VLLM operator and Actor Pool, with bounded task submission enforced through in-flight limits. Prompts are bucketed by shared prefixes and routed to actors using prefix-aware routing to improve opportunities for reusing the vLLM Prefix Cache. The native vLLM Prompt path currently supports text input only. Adaptive multimodal batching and backpressure The UDF and vLLM execution paths dynamically split or combine batches according to row count, data size, and in-flight limits. Resource admission control and object-stream backpressure limit the number of queued tasks and their memory consumption. Fault-Tolerant Execution Supports task retries, Worker failure detection and replacement, Split reassignment, Attempt Fencing, cancellation, and resource cleanup. Ray Runner and Local Runner The same SQL and Relation plan model can run through either the distributed Ray Runner or the local In-Process FTE Runner. Ray Runner is the default execution path and supports both single-machine and distributed execution. Local Runner targets lightweight, lower-overhead local execution without Ray. Local Runner is currently experimental. Multimodal benchmarks Provides comparable Vane, Ray Data, and Daft pipelines covering audio transcription, document embedding, image classification, and video object detection. The current benchmarks use local files on a single-GPU machine. They represent a single-node environment and are not a direct reproduction of the original distributed Ray Data benchmark. 👏 Thank You to Our Contributors @kaka11chen @WangErxi @caomaocao @hubgeter @liwuhen @pollychen-lab @figurant @zy-kkk @suxiaogang223 @jingdaws @freemandealer @liujiwen-up @StanleyXu512 🗺️ Roadmap 1. Distributed Extension for Ray Runner — Implement a distributed extension compatible with the Ray runner, building upon the existing DuckDB extension architecture. 2. Native Multimodal Type Support — Add first-class native type support for multimodal data. 3. C++ Embedded Functions for Multimodal Types — Implement C++ built-in/embedded functions operating on multimodal types. 4. Distributed Lance Read/Write — Enable distributed read and write capabilities for the Lance format. 5. Distributed Iceberg Read/Write — Enable distributed read and write capabilities for the Iceberg table format. 6. Turbopuffer Sink Implementation — Implement a data sink for Turbopuffer. 7. Distributed CSV/JSON Read/Write — Enable distributed read and write capabilities for CSV and JSON formats. 8. Dynamic Batch Size — Implement dynamic batch size adjustment. 9. Merge DuckDB 1.5.0 → 1.5.5 PRs — Cherry-pick and merge relevant PRs from DuckDB versions 1.5.0 through 1.5.5. 10. UDF Parameter Type Support — Add support for NumPy dict, cuDF, Pandas, and Tensor parameter types in UDFs. 📎 Learn more: Vane 0.1.0 Release · AstroVela/vane 🔗 Explore Vane 🌐 Website: ⭐ GitHub:
顯示更多
2024 年买的游戏,终于全成就了 😭
关于 vane 梳理了一部分“good first issue”,结果来了个印度老哥用 AI 直接全部刷完了。。。没想到一个新项目都会有这种刷 PR 的行为存在。 现在这个时代使用 AI 编程已经属于默认的行为了,之前也和朋友聊过这个话题,作为一个开源项目本身就有社区的属性,参与到项目开发本质来说也是相互信任的过程。 比较好奇,在当前 Vibe Coding 的背景下,对于这种 First-time contributor 一次性提交多个 PR,或者一个特别大的功能,该如何处理比较合适 🤔
顯示更多
遇见七彩祥云🌈☁️
前几天在 yihong 大哥的 TG 群里看见有聊到千张卷油条,这次回老家也是吃上了 😋
俺也拿到 Greptime 的周边叻 🥳🥳 @Greptime
前几天刚写完四月份的博客,有提到 last day,今天上班之前做 PoC 的客户提出要加我微信。一问原因,说是看了我的博客,说很有共鸣,交一个好朋友,还是很开心的 哈哈哈😊😊
顯示更多
好喜欢书中有这种手绘风格的插画!狭小不是束缚,反而让孤独有了边界,也让世界显得刚刚好 🤔
最近参与了 @Greptime greptimedb 的 good first issue,能够感觉到作为一家商业化的数据库公司,对于开源社群运营还是比较积极的,从认领 issue 到 pr 被 merge,团队成员都能及时响应,这个体验就很棒 👍。 AI 时代的可观测性,应该会有很多好玩的场景出现,有时间的话折腾起来看看🤔 #greptimedb#
顯示更多