## GPU转码变得简单:ffmpeg-over-ip ffmpeg-over-ip 提供GPU加速的ffmpeg转码,无需GPU直通、共享文件系统或驱动对齐的复杂性。它允许应用程序通过将`ffmpeg`命令替换为`ffmpeg-over-ip-client`,即可利用远程GPU进行媒体服务器转码等任务。 该系统通过在具有GPU访问权限的服务器上运行,并在包含文件的机器上运行客户端来工作。客户端通过单个TCP端口将命令和文件I/O转发到服务器,服务器执行一个补丁后的ffmpeg。重要的是,文件*从不*驻留在服务器上,从而无需NFS、SMB或复杂的挂载。 包含支持NVENC、QSV和其他硬件加速方法的预构建二进制文件,简化了设置。多个客户端可以同时连接到单个服务器,每个客户端都有自己的ffmpeg进程,并受到HMAC身份验证的保护。它是一种简化解决方案,可在Docker、VM和远程机器等各种环境中利用GPU性能。
## 开源机器学习的简单幻觉
一位大学教授的建议——“如果出现错误,那是你的错”——对于大多数软件来说是适用的,但在开源机器学习基础设施方面却不成立。作者在尝试廉价地对Kimi-K2-Thinking(一个拥有1万亿参数的模型)进行后训练时,亲身体验了这一点。尽管Hugging Face上有现成的模型,但一个可用的训练流程却出乎意料地难以实现。
最初使用LLaMA-Factory和Hugging Face的Transformers库的尝试充满了错误,从由于冗余量化导致的无法解释的压缩延迟,到需要一个特定的、未记录的PyTorch设置才能解决GPU内存管理问题。进一步的障碍包括GPU上的权重分布不均匀、LoRA与量化权重的不兼容,以及由于不可微分的MoE门而阻止训练的关键断言错误。
最终,作者实现了训练——尽管速度明显较慢且成本高于使用专用API——方法是绕过抽象层并直接解决底层问题。这次经历凸显了开源ML堆栈中隐藏的“债务”,错误可能潜藏在深层的依赖关系中。虽然开源旨在 democratize AI,但作者认为,构建可靠的基础设施通常需要放弃修补,转而拥抱定制开发。