7 分•作者: bbx•28 天前
返回首页
最新
7 分•作者: lombarovic•28 天前
Hi HN,
我在 2016 年底构建了 Drawize 的第一个版本,专门用于三星 Tizen 操作系统应用竞赛。我加班加点,在不到 4 周的时间里完成了整个项目(包括实时多人游戏引擎)。
它在比赛中一无所获。
由于它本来就是用 Web 技术构建的,我在 2017 年初将其发布到开放的 Web 上,只是为了看看会发生什么。它开始有了自己的生命,直到今天——8 年后——数据库处理了第 1 亿张绘画。
在最繁忙的日子里,它有超过 3 万活跃用户,目前存储 1 亿张绘画大约需要 3.16 TB。
里程碑时刻:我今天正在观看实时日志,害怕第 1 亿张绘画会是 NSFW 内容。幸运的是,RNG 之神露出了微笑,结果它是一只红气球
(你可以在这里看到第 1 亿张绘画:<a href="https://www.drawize.com/blog/100-million-drawings-milestone" rel="nofollow">https://www.drawize.com/blog/100-million-drawings-milestone</a>)
技术栈(无聊但快速):
后端:.NET + WebSockets(实时同步)
前端:手写 HTML/JS + jQuery(没有 React,没有打包器)
数据:PostgreSQL & MongoDB
存储:Wasabi Cloud(为了节省 S3 成本而迁移到那里)
作为一名独立开发者进行扩展:实时大厅 + 重新连接边缘情况 + 审核/内容过滤。我使用 2021 年训练的内容分类模型来过滤不良内容,并且实时多人游戏端主要是高度优化的 .NET 代码。
很乐意回答关于“失败”的 Tizen 起源、Web 上的实时多人游戏、审核或 .NET 如何处理负载的问题。
7 分•作者: williamhaw•28 天前
大家好,我是 Artie 的一名工程师,我们做实时数据复制。<p>我们当时在添加 MotherDuck 作为目标,第一个版本直接使用了 DuckDB 的 Go 驱动。它在我的机器上运行得很好……直到我们把它接入到我们的 Transfer 服务中(<a href="https://github.com/artie-labs/transfer" rel="nofollow">https://github.com/artie-labs/transfer</a>)。<p>由于该驱动需要 CGO,我们的 amd64 和 arm64 交叉编译开始失败,我们失去了易于使用的静态二进制文件,而且我们的 Docker 镜像不得不引入 C 工具链和系统库,仅仅是为了支持一个依赖项。我们尝试将 CGO 部分隔离到一个单独的模块中,但这仍然导致了 CI 失败,并迫使我们重写了构建流程的很大一部分。在那时,很明显我们不希望 CGO 出现在我们的主要服务中。<p>所以我构建了 ducktape:一个微小的独立微服务,它通过 HTTP/2 流封装了 DuckDB 的 Appender API。客户端通过 HTTP/2 流式传输 NDJSON,而 ducktape 则直接在另一端追加到 DuckDB 中。主代码库中没有 CGO,我们保持了跨平台、纯 Go 的构建方式。<p>在基准测试中,开销出人意料地低:通过 HTTP/2 约为 757 MiB/秒,而进程内约为 848 MiB/秒——大约是原生性能的 90%,但这是通过网络实现的。<p>ducktape 是开源的,并获得了 MIT 许可:<a href="https://github.com/artie-labs/ducktape" rel="nofollow">https://github.com/artie-labs/ducktape</a><p>我很乐意收到反馈,特别是如果您以不同的方式解决了 CGO 隔离问题,或者有想法可以榨取更多性能!
1 分•作者: neehao•28 天前
1 分•作者: kilroy123•28 天前
1 分•作者: ZOdex•28 天前
我正在构建一个封装器,它会查询 GPT-4、Claude 和 Gemini,然后在沙盒中执行它们的代码以捕捉幻觉。<p>30 秒的延迟换取确定性,这值得吗?还是你更喜欢速度?<p>我今天正在为人们进行手动测试,如果有人想尝试,请联系我。
1 分•作者: CalRobert•28 天前
1 分•作者: dctoedt•28 天前
2 分•作者: lab700xdev•28 天前
1 分•作者: neehao•28 天前
2 分•作者: m-hodges•28 天前
1 分•作者: vinhnx•28 天前
1 分•作者: ksec•28 天前
8 分•作者: gjtorikian•28 天前
29 分•作者: tempodox•28 天前
42 分•作者: eatonphil•28 天前
5 分•作者: tsazan•28 天前
大家好,我是CommerceTXT的作者。<p>我构建CommerceTXT是因为我厌倦了从HTML中提取价格和库存数据的脆弱性。目前的AI代理仅仅为了解析一个产品页面,就要浪费大约8000个token,结果却会虚构价格或者遗漏“缺货”的信息。<p>CommerceTXT是一个严格的、只读的文本协议(CC0公共领域),旨在为代理提供确定的事实依据。可以把它想象成`robots.txt` + `llms.txt`,但专门为交易而设计。<p>v1.0的关键技术决策:<p>1. *分形架构:* 根目录 -> 类别 -> 产品文件。代理只获取它们需要的内容(节省带宽/token)。<p>2. *严格只读:* v1.0 故意排除了交易/操作,以避免安全问题。它纯粹是上下文信息。<p>3. *Token效率:* 一个典型的产品定义大约需要380个token,而HTML等价物则需要大约8500个token。<p>4. *反幻觉:* 包含诸如带有时间戳的@INVENTORY和带有验证来源的@REVIEWS等指令。<p>该规范已经上线并开放。我非常欢迎您对指令结构,尤其是我们正在探索的“信任与验证”概念提出反馈意见。<p>规范:<a href="https://github.com/commercetxt/commercetxt" rel="nofollow">https://github.com/commercetxt/commercetxt</a>
网站:<a href="https://commercetxt.org" rel="nofollow">https://commercetxt.org</a>
1 分•作者: kmad•28 天前
1 分•作者: kholterhoff•28 天前
1 分•作者: bhu8•28 天前