返回首页
最新
ssh tuitype.app<p>一个通过 SSH 在终端中提供的最小化每日打字挑战(使用 Go、Wish 和 BubbleTea)
嗨,Hacker News的朋友们,
我是Helios的创始人,我很高兴(也有点紧张)与大家分享这个项目。
“为什么”:和许多人一样,我对现代AI模型的强大能力感到着迷,但也对GPU资源的高成本和集中化感到沮丧。我开始思考是否可以将传统的分布式计算模型(如SETI@home或Folding@home)应用于现代AI技术栈。我们的目标是建立一个网络,任何人都可以贡献他们闲置的计算能力,并因此获得访问强大多模态AI的机会。
“是什么”:Helios是一个开源平台,用于构建这个网络。它主要由两个部分组成:一个管理作业队列和工作者的调度服务器,以及一个任何人都可以在Windows或Linux上安装的客户端工作者。用户运行工作者,贡献资源,从而形成一个全球去中心化的超级计算机,能够处理文本、图像和音频任务。
“如何做”(技术细节):
架构:这是一个经典的调度器-工作者模型,完全用Python编写。调度器(orchestrator.py)是大脑,负责作业分配、工作者注册和简单的网页用户界面。工作者(worker.py)是用户在其机器上运行的部分。
贡献证明(无加密货币!):这是核心的访问机制。为了防止垃圾信息和搭便车,只有作为活跃贡献者并拥有良好声誉的工作者才能向网络提交作业。这个系统不基于代币或区块链,而是一个基于参与的简单公平系统。
动态专家:工作者并不是预装所有模型。调度器根据当前的作业队列动态地将AI模型(例如,特定的翻译模型、图像描述模型)分配给工作者。这些模型直接从Hugging Face Hub中获取,保持工作者客户端的轻量级。
多模态:该系统旨在将不同类型的作业(文本、音频、图像)路由到具备相应模型和资源的工作者。
这确实是一个实验性的v1.0项目。我知道面临着巨大的挑战,尤其是在安全性方面(沙箱任务是一个重要的下一步),但我希望能推出一个可工作的原型,以看看这个想法是否能引起社区的共鸣。
我非常希望能得到你们对架构、贡献证明概念以及你们可能有的任何建议的反馈。
GitHub仓库(代码在这里):[https://github.com/fnoracr/helios-distributed-ai](https://github.com/fnoracr/helios-distributed-ai)
项目页面(演示和文档):[https://huggingface.co/spaces/fnoracr/Helios_Distributed_AI-Helios_una_IA_distribuida](https://huggingface.co/spaces/fnoracr/Helios_Distributed_AI-Helios_una_IA_distribuida)
安装程序(.exe/.tar.gz):[https://github.com/fnoracr/helios-distributed-ai/releases/tag/Version1.0](https://github.com/fnoracr/helios-distributed-ai/releases/tag/Version1.0)
感谢大家的关注!
似乎Rust的迭代器性能与C++的范围/视图之间存在相当大的差距,除非我遗漏了什么。
Rust代码:
```rust
use std::time::Instant;
fn expand_iota_views(input: &[i32]) -> impl Iterator<Item = i32> + '_ {
input
.iter()
.flat_map(|&n| 1..=n)
.flat_map(|n| 1..=n)
.flat_map(|n| 1..=n)
}
fn main() {
let input: Vec<i32> = (0..=50).collect();
let sample_result: Vec<i32> = expand_iota_views(&input).collect();
println!("Rust Result count: {}", sample_result.len());
let start = Instant::now();
let mut total_count = 0;
for _ in 0..1000 {
let result = expand_iota_views(&input);
total_count += result.count();
}
let duration = start.elapsed();
println!("Rust Total count (1000 iterations): {}", total_count);
println!("Rust Total time: {} microseconds", duration.as_micros());
println!(
"Rust Average per iteration: {:.2} microseconds",
duration.as_micros() as f64 / 1000.0
);
}
```
输出:
```
Rust Result count: 292825
Rust Total count (1000 iterations): 292825000
Rust Total time: 1025 microseconds
Rust Average per iteration: 1.02 microseconds
```
C++代码:
```cpp
#include <chrono>
#include <iostream>
#include <numeric>
#include <ranges>
#include <vector>
inline auto expandIotaViews(const std::vector<int>& input) {
auto iota_transform = [](const int number) {
return std::views::iota(1, number + 1);
};
return input
| std::views::transform(iota_transform)
| std::views::join
| std::views::transform(iota_transform)
| std::views::join
| std::views::transform(iota_transform)
| std::views::join;
}
int main() {
std::vector<int> input(51);
std::iota(input.begin(), input.end(), 0);
auto sample_result = expandIotaViews(input);
std::vector<int> result_vec;
for (auto val : sample_result) {
result_vec.push_back(val);
}
std::cout << "C++ Result count: " << result_vec.size() << std::endl;
auto start = std::chrono::high_resolution_clock::now();
size_t total_count = 0;
for (int i = 0; i < 1000; ++i) {
auto result = expandIotaViews(input);
total_count += std::ranges::distance(result);
}
auto end = std::chrono::high_resolution_clock::now();
auto duration =
std::chrono::duration_cast<std::chrono::microseconds>(end - start);
std::cout << "C++ Total count (1000 iterations): " << total_count << std::endl;
std::cout << "C++ Total time: " << duration.count() << " microseconds" << std::endl;
std::cout << "C++ Average per iteration: " << duration.count() / 1000.0 << " microseconds" << std::endl;
return 0;
}
```
输出:
```
C++ Result count: 292825
C++ Total count (1000 iterations): 292825000
C++ Total time: 174455 microseconds
C++ Average per iteration: 174.455 microseconds
```
- 在1570个域名区域中注册的域名总数为3.07亿个(包括.com、.net、.io、.ai、.sh等)<p>- 在312个国家代码顶级域名(ccTLD)区域中注册的域名总数为7800万个(包括.uk、.de、.io、.ai、.sh等)<p>- 每日更新的新注册域名列表<p>- 每日更新的过期域名列表<p>- 将所有域名列表下载为一个大的.zip文件(大小为1.2 Gb)
嘿,HN,
我是一名渗透测试员,最近发现了一个新的基于Mirai的僵尸网络,名为Gayfemboy(是的,这个名字听起来像个梗,但威胁是真实存在的)。它目前每天感染超过15,000台设备,主要针对思科、TP-Link、DrayTek和Raisecom的路由器和网络设备。
它的功能包括:
- 发起DDoS攻击(UDP、TCP、ICMP)
- 使用XMRig挖掘门罗币
- 作为恶意流量的代理
- 安装后门并规避分析(例如,UPX头部篡改、纳秒级延迟)
目前利用的漏洞包括:
- CVE-2025-20281(思科ISE)
- CVE-2023-1389(TP-Link AX21)
- CVE-2020-8515(DrayTek)
- CVE-2024-7120(Raisecom MSG)
我正在测试的缓解措施包括:
- 扫描客户端网络以寻找易受攻击的固件
- 在防火墙层面阻止已知的恶意域名和IP
- 编写脚本检测向这些IOC的外发流量
- 建议在路由器上禁用远程管理访问
我很想听听其他人是如何检测或遏制这个僵尸网络的。有没有人在企业环境中见过它?你们有什么创意或有效的缓解策略推荐吗?
许多代码库正在遭受攻击,攻击者创建名为 Shai-Hulud 的分支,以触发 GitHub Actions 并将所有机密信息发送到一个 webhook 网站。这是一个新出现的问题,以下是一个示例:<p>https://github.com/amadan21/walkerdigitaltablesystems-automation-testing-utility-migration/commit/6fc05c646b3ee27a962133d8889dfaab0c6901ae<p>只需在 GitHub 上搜索,您会看到很多这样的代码库。