114 分•作者: coleca•2 个月前
返回首页
最新
4 分•作者: AndrewLiu96•2 个月前
各位 HN 用户:
鉴于 OpenRouter 可能被收购以及托管式 LLM 路由器的兴起(例如 Ramp Router、Vercel 的 AI Gateway),我看到了对一个专注于成本节约、透明度和性能的自托管解决方案的需求。因此,我构建了一个开源的路由器,它具有简单的命令行界面,可以轻松地置于代码代理和 GenAI 工作负载之间。
对于好奇和图省事的各位,目前 Millwright 提供了以下功能:
- **提供商**:兼容 OpenAI 的 API、Anthropic、Amazon Bedrock
- **路由**:策略控制的模型角色(经济型、中端、前沿型),选择最便宜的健康路由
- **协议**:OpenAI Chat Completions、Anthropic Messages、文本和工具翻译
- **缓存亲和性**:无序列化并发代理流量的、按角色范围划分的会话通道
- **支出跟踪**:按团队的成本、缓存使用情况、模型/提供商组合、请求跟踪
- **成本分析**:已测量的使用量和模型化的候选经济效益(HTML、Markdown、JSON)
- **可靠性**:有界故障转移、断路器、超时、并发限制
- **设置**:无需存储提供商密钥即可进行交互式的提供商、模型和定价配置
- **部署**:单个 Rust 二进制文件、Docker、SQLite 或 PostgreSQL
坦白说:代码库的一部分是使用 AI 代码代理构建的。欢迎所有反馈,我尤其重视关于路由策略、提供商覆盖范围以及任何可能阻碍您进行自托管的方面的反馈。也欢迎您随时提交功能/请求或进行贡献。
1 分•作者: microbial•2 个月前
1 分•作者: Versipelle•2 个月前
1 分•作者: ruslan5t•2 个月前
1 分•作者: aard•2 个月前
1 分•作者: dboon•2 个月前
1 分•作者: mikelgan•2 个月前
1 分•作者: paulhebert•2 个月前
1 分•作者: chrischengzh•2 个月前
1 分•作者: tosh•2 个月前
1 分•作者: djoldman•2 个月前
22 分•作者: porphyra•2 个月前
29 分•作者: g0xA52A2A•2 个月前
2 分•作者: alxxjohn•2 个月前
10 分•作者: beefburger•2 个月前
1 分•作者: wslh•2 个月前
1 分•作者: Gshaheen•2 个月前
16 分•作者: HenryNdubuaku•2 个月前
大家好,我是 Cactus 的 Henry 和 Roman。
小型本地模型速度快且隐私性好,但有时会出错,而前沿模型则变得越来越昂贵。因此,我们对 Gemma 4 E2B 进行了后训练,使其能够识别自身错误。每个响应都附带一个 0 到 1 之间的置信度分数。开发者可以在置信度高时使用本地模型,在置信度低时将其交由更大的云端模型处理。通过仅将 15-35% 的查询路由到 Gemini 3.1 Flash-Lite,Gemma-4-E2B 在大多数基准测试中都能媲美 Gemini 3.1 Flash-Lite。
* ChartQA:15-20%
* LibriSpeech:25-30%
* MMBench, GigaSpeech, MMAU:30-35%
* MMLU-Pro:45-55%
我们一直对混合应用依赖的路由信号感到沮丧:让模型在文本中自我评估(不可靠,且需要解析散文),或者使用 token 熵启发式方法(在我们测试中,效果几乎和抛硬币一样差)。因此,我们对小型模型(特别是 Gemma 4)进行了机理研究,发现不同层的隐藏状态携带了针对各种情况的有意义的自我意识信号。
因此,我们为模型增加了一个 68k 参数的探针层(LayerNorm、低秩投影、注意力池化、小型 MLP 头),该探针层在解码过程中读取一个中间层,并预测 p(错误);置信度 = 1 - p(错误),以结构化数据形式返回,从不从答案文本中解析。
在跨越文本、视觉和音频的 12 个独立基准测试中,探针的平均 AUROC 为 0.814,而 token 熵为 0.549。令我们确信这项技术真实有效的结果是:该探针在零音频数据上进行了训练,但在四个音频基准测试上的 AUROC 却达到了 0.79-0.88,而熵则接近随机或更差(0.32-0.52)。它从隐藏状态中读取的是一种与模态无关的正确性信号,而不是从其训练数据中记忆模式。
我们在 HuggingFace 上发布了所有权重,并提供了复制粘贴代码,可在 Transformers、MLX、Llama.cpp 或 Cactus 上运行。Ollama、vLLM、SGLang 等也在开发中。对于 llama.cpp,我们提供了一系列补丁,只需编译一次即可(计划合并到主线)。代码采用 MIT 许可;Gemma 模型的使用仍受 Gemma 条款的约束。
GitHub:<a href="https://github.com/cactus-compute/cactus-hybrid" rel="nofollow">https://github.com/cactus-compute/cactus-hybrid</a>
权重:<a href="https://huggingface.co/collections/Cactus-Compute/cactus-hybrid-6a60da4551074db058e8bb64" rel="nofollow">https://huggingface.co/collections/Cactus-Compute/cactus-hybrid-6a60da4551074db058e8bb64</a>
一些注意事项:
* 该探针仅对单序列解码评分,最多评分前 1024 个生成的 token。
* 在多步过程中,按任务进行路由比按步骤进行路由效果更好。
* 分层路由仍在开发中:先尝试本地模型,然后是 DeepSeek v4 Flash,最后是 Fable/GPT5.5/Gemini/Muse/Grok。
* 该技术对每个模型都是定制的,我们将随着推出而分享每个模型的权重。
这些问题目前正在 Cactus 解决,更新的权重将直接发布到 HuggingFace 集合和 GitHub 存储库中。请告诉我们您的想法,这将帮助我们逐步改进设计。
非常感谢!
1 分•作者: salsta1•2 个月前