大模型应用
要为具体任务推荐或比较 AI 模型时:查…
当用户问某任务的最佳/推荐模型、该用什么 LLM、哪些模型能跑在自己设备上,或想按基准分数比较模型时,用 HuggingFace 官方排行榜筛出可落地的候选并输出对比表。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
要为具体任务推荐或比较 AI 模型时:查特定
解决思路
- 从用户消息提取 Task:模型要做什么(coding、math/reasoning、chat、OCR、RAG/retrieval、speech recognition、image classification、multimodal、agents 等)。
- 从用户消息提取 Device:硬件约束(MacBook M-series 8/16/32/64GB unified memory、RTX GPU 的 VRAM 容量、CPU-only、cloud/no constraint 等)。
- 如果没有提到设备,完全跳过尺寸过滤,返回性能最高的模型,不考虑大小。
- 如果任务确实含糊,问一个澄清问题。
- 指定设备时,提取可用内存(Apple Silicon 用 unified RAM,独立 GPU 用 VRAM)。
- 应用 fp16 最大参数量公式:fp16 max params (B) ≈ memory (GB) ÷ 2。
- 应用 Q4 最大参数量公式:Q4 max params (B) ≈ memory (GB) × 2。
- 参考示例:16GB → 8B fp16 / 32B Q4;24GB VRAM → 12B fp16 / 48B Q4;8GB → 4B fp16 / 16B Q4。
- 获取官方 HF 基准数据集完整列表:curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" "https://huggingface.co/api/datasets?filter=benchmark:official&limit=500" | jq '[.[] | {id, tags, description}]'。
- 阅读返回列表,按 dataset id、tags、description 选择与用户任务最相关的数据集。
- 用判断力选择;不要限制在 2-3 个;若 5 个基准明显覆盖任务,就用全部 5 个,追求全面覆盖。
- 对每个选中的基准数据集,获取 leaderboard 顶部模型:curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" "https://huggingface.co/api/datasets/<namespace>/<repo>/leaderboard" | jq '[.[:15] | .[] | {rank, modelId, value, verified}]'。
- 跨所有基准收集 model IDs 和 scores。
- 如果某个 leaderboard 返回错误(404、401 等),跳过它,并在输出中注明。
- 对前 10-15 个候选 model IDs 获取模型信息(REST API):curl -s -H "Authorization: Bearer $(cat ~/.cache/huggingface/token)" "https://huggingface.co/api/models/org/model1" | jq '{safetensors, tags, cardData}'。
- 对前 10-15 个候选 model IDs 获取模型信息(CLI hf-cli):hf models info org/model1 --json | jq '{safetensors, tags, cardData}'。
- 从每个响应提取 Parameters:safetensors.total → 转成 B(如 7_241_748_480 → “7.2B”)。
- 提取 License:从 model card tags 中找 license:apache-2.0、license:mit 等。
- 如果 safetensors 缺失,从模型名解析大小(查找 “7b”、“8b”、“13b”、“70b”、“72b” 等)。
- 如果指定了设备:移除超过该设备 fp16 参数预算的模型。
- 标记只能在 Q4 量化下 fit 的模型(用预算 × ~4 作为 Q4 容量)。
- 如果高排名模型略微超出预算,保留它并加 “needs Q4” 说明;不要静默丢弃。
- 如果未提到设备:跳过所有尺寸过滤,只按 benchmark score 排名。
- 按 benchmark score 降序排名,保留 top 5-8 个模型。
- 如果 proprietary 模型(GPT-4、Claude、Gemini)出现在榜单上,可以包含,但标记为 “API only / not self-hostable”;如果用户明确只要 local/open 模型,则排除它们。
- 输出 markdown 对比表,列为:| # | Model | Params | [Benchmark 1] | [Benchmark 2] | License | On device |;示例行:| ⭐1 | [org/name](https://huggingface.co/org/name) | 7B | 85.2% | — | Apache 2.0 | Yes (fp16) |、| 2 | [org/name](https://huggingface.co/org/name) | 13B | 83.1% | 71.5% | MIT | Q4 only |、| 3 | [org/name](https://huggingface.co/org/name) | 70B | 90.0% | 81.0% | Llama | Too large |。
- 将模型名链接到 https://huggingface.co/<model_id>。
- 对未评测的 benchmark 使用 —。
- 用 ⭐ 标出 top recommended pick。
- “On device” 取值:Yes (fp16)、Q4 only、Too large、API only。
- 展示表格后,询问用户:“Would you like to run **[top recommended model]**?”
- 如果用户同意,询问偏好:Run locally — 如未知则问设备,然后给出相应 setup instructions;Run on HF Jobs — 指向 https://huggingface.co/docs/huggingface_hub/en/guides/jobs。
- 错误处理:Leaderboard not found — 跳过,输出中注明 “leaderboard unavailable”。
- 错误处理:Model missing from hub_repo_details — 回退到从模型名解析大小。
- 错误处理:No benchmarks found for task — 使用上面的 curated fallback table,或尝试 hub_repo_search,filters=["<task>"],按 trendingScore 排序。
- 错误处理:All leaderboards fail — 回退到 hub_repo_search 找标记该任务的流行模型,并注明结果基于 popularity 而非 benchmark score。
适用边界 · 注意事项
- 用户的问题与选择/比较 AI 模型无关时。
- 无法访问 HuggingFace API、没有 ~/.cache/huggingface/token,且不愿使用 hub_repo_search 等回退方案时。
- 用户明确要求不得使用公开基准/排行榜分数,只能按私有评测或内部标准选择模型时。