基于 ML 的模型选择
本文说明 Semantic Router 中基于 ML 的模型选择配置与实验数据。
概述
基于 ML 的路由模型通过算法分析查询特征和历史性能数据,匹配最佳 LLM。基准测试显示,其质量分数比随机选择高出 13%-45%。
支持的算法
| 算法 | 描述 | 适用场景 |
|---|---|---|
| KNN(K-Nearest Neighbors,K 近邻) | 基于相似查询的质量加权投票 | 高精度,多样化查询类型 |
| KMeans | 基于聚类的路由,优化效率 | 快速推理,均衡负载 |
| SVM(Support Vector Machine,支持向量机) | RBF 核决策边界 | 领域边界清晰的场景 |
| MLP(Multi-Layer Perceptron,多层感知机) | GPU 加速神经网络 | 高吞吐量、GPU 可用环境 |
参考论文
- FusionFactory (arXiv:2507.10540) — 基于 LLM 路由器的查询级融合
- Avengers-Pro (arXiv:2508.12631) — 性能-效率优化路由
Dashboard GUI 设置
Semantic Router Dashboard 提供图形化的三步配置向导。这是推荐的入门方式,完全免除 CLI 操作。
打开向导
访问 http://localhost:8700/ml-setup(或您的 Dashboard 地址)。
第一步:基准测试
上传您的 models YAML(列出 LLM 端点)和 queries JSONL 文件(含 ground truth 的测试查询)。配置并发数和最大 token 数,点击 Run Benchmark。进度实时流式显示,精确到每条查询。
第二步:训练
选择一个或多个算法:
| 算法 | 是否需要 GPU | 说明 |
|---|---|---|
| KNN | 否 | 仅 CPU(scikit-learn) |
| K-Means | 否 | 仅 CPU(scikit-learn) |
| SVM | 否 | 仅 CPU(scikit-learn) |
| MLP | 可选 | PyTorch — 选中后出现 Device 选择器(CPU/CUDA) |
通过 高级设置 面板调整超参数,点击 Train Models。训练好的模型文件(knn_model.json、kmeans_model.json 等)保存到固定目录 ml-train/。