[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-fine-tuning-llms-locally-sft-lora-dpo-zh":3,"article-related-fine-tuning-llms-locally-sft-lora-dpo-zh":31,"series-tools-79548e00-424f-482a-81c2-4a64d29e011c":76},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":23,"views":27,"created_at":28,"published_at":29,"topic_cluster_id":30},"79548e00-424f-482a-81c2-4a64d29e011c","fine-tuning-llms-locally-sft-lora-dpo-zh","本地微調 LLM：SFT、LoRA、DPO","\u003Cp data-speakable=\"summary\">\u003Ca href=\"\u002Ftag\u002Fllm\">LLM\u003C\u002Fa> Configurator 第 13 篇\u003Ca href=\"\u002Fnews\u002Ffast-solana-token-development-defi-nfts-web3-zh\">指南\u003C\u002Fa>整理了本地微調 LLM 的做法，重點放在 SFT、LoRA 與 DPO。\u003C\u002Fp>\u003Cp>這份指南在 2026 年 6 月 15 日更新，主題很直接：什麼情況下值得訓練，什麼情況下先別急著動 \u003Ca href=\"\u002Ftag\u002Fgpu\">GPU\u003C\u002Fa>。它也把 \u003Ca href=\"https:\u002F\u002Fllmconfigurator.com\" target=\"_blank\" rel=\"noopener\">LLM Configurator\u003C\u002Fa> 的本地工作流拆成可操作步驟，並把 \u003Ca href=\"https:\u002F\u002Fhuggingface.co\u002Fdocs\u002Ftrl\u002Findex\" target=\"_blank\" rel=\"noopener\">TRL\u003C\u002Fa> 的 DPO、SFT 與 LoRA 放到同一張決策圖裡。\u003C\u002Fp>\u003Ctable>\u003Cthead>\u003Ctr>\u003Cth>項目\u003C\u002Fth>\u003Cth>數值\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Ctd>Guide\u003C\u002Ftd>\u003Ctd>13\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Last updated\u003C\u002Ftd>\u003Ctd>2026-06-15\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Suggested holdout\u003C\u002Ftd>\u003Ctd>10%\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Very small dataset threshold\u003C\u002Ftd>\u003Ctd>&lt; 50 examples\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Ctd>Typical epochs\u003C\u002Ftd>\u003Ctd>1–3\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2>發生了什麼\u003C\u002Fh2>\u003Cp>這篇指南先把微調定位成「最後一哩」工具，而不是預設解法。它的順序很清楚：先試提示詞，再看 \u003Ca href=\"\u002Ftag\u002Frag\">RAG\u003C\u002Fa> 是否足夠，最後才考慮微調，因為很多問題其實不是模型不會，而是資料不在上下文裡。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781839069344-gzrv.png\" alt=\"本地微調 LLM：SFT、LoRA、DPO\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>接著它把本地可做的三條路拆開講。SFT 適合拿指令與答案配對來做監督式學習，LoRA 則是用較輕的 adapter 方式減少訓練成本，DPO 則偏向用偏好資料去調整輸出傾向。\u003C\u002Fp>\u003Cp>指南也補了一個實作面常被忽略的部分：資料檢查。它建議先驗證 JSONL 格式、保留 10% 作為驗證集，並盡量選擇已接近任務的 base model，因為小資料、錯格式與過度訓練，往往比模型本身更容易把專案做壞。\u003C\u002Fp>\u003Cul>\u003Cli>\u003Cstrong>SFT\u003C\u002Fstrong>：適合 instruction-response 配對，最直覺。\u003C\u002Fli>\u003Cli>\u003Cstrong>LoRA\u003C\u002Fstrong>：適合想省算力、保留原模型權重的團隊。\u003C\u002Fli>\u003Cli>\u003Cstrong>DPO\u003C\u002Fstrong>：適合有偏好標註、想修正輸出風格的情境。\u003C\u002Fli>\u003Cli>\u003Cstrong>LLaMA-Factory\u003C\u002Fstrong>：給不想全程手寫 notebook 的團隊一條 GUI 路線。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>為什麼重要\u003C\u002Fh2>\u003Cp>對\u003Ca href=\"\u002Fnews\u002Fsolana-developer-slowdown-healthy-reset-zh\">開發者\u003C\u002Fa>來說，這類指南最實際的價值是少走彎路。先把提示詞、RAG、微調的成本與效果分清楚，可以直接省掉不必要的 GPU 時間，也能避免把本來能用檢索解決的問題，硬拉去做訓練。\u003C\u002Fp>\u003Cp>對產品\u003Ca href=\"\u002Fnews\u002Frust-rolling-release-model-right-tradeoff-zh\">團隊\u003C\u002Fa>來說，本地微調的吸引力在於可控性。像客服回覆、資訊抽取、法務摘要或企業內部助理這些場景，常常需要固定語氣、固定格式，這時候 LoRA 或 SFT 比單純改 prompt 更穩。\u003C\u002Fp>\u003Cp>這份指南也反映出一個現實：本地化訓練正在從研究題目變成工程選項。當資料量不大、場景明確、又不想把敏感資料送到雲端 \u003Ca href=\"\u002Ftag\u002Fapi\">API\u003C\u002Fa> 時，團隊會更在意訓練門檻、資料品質與迭代速度，而不是只看模型分數。\u003C\u002Fp>\u003Cp>真正的問題不是「要不要微調」，而是「這個任務到底缺行為，還是缺上下文」。如果答案是後者，先做提示詞和 RAG，通常比直接開訓練更快也更便宜。\u003C\u002Fp>\u003Cp>對多數團隊來說，這篇指南的訊號很明確：微調不是主角，判斷順序才是主角。\u003C\u002Fp>\u003Ch2>補充背景\u003C\u002Fh2>\u003Cp>近年本地 LLM 工具鏈越來越成熟，SFT、LoRA、DPO 也因此從專業名詞變成工程團隊會碰到的日常選項。以前這些方法多半要靠研究背景才能上手，現在則有更多框架把資料格式、訓練流程與評估步驟包起來。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781839068895-gzma.png\" alt=\"本地微調 LLM：SFT、LoRA、DPO\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>但工具變多，不代表每個任務都該訓練。很多團隊一開始就想調模型，實際上只是需要更好的提示模板、更多檢索內容，或更乾淨的輸入資料。\u003C\u002Fp>\u003Cp>這也是這份指南的價值所在：它不是鼓勵大家一律微調，而是把「何時不該微調」講得很清楚。對小團隊來說，這種判斷往往比跑出一次漂亮的 loss 更重要。\u003C\u002Fp>","LLM Configurator 第 13 篇指南更新本地微調流程，整理 SFT、LoRA、DPO 的用途、資料準備與何時該先用提示或 RAG。","llmconfigurator.com","https:\u002F\u002Fllmconfigurator.com\u002Fen\u002Fguides\u002Ffine-tuning-with-datasets\u002F",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781839069344-gzrv.png","tools","zh","cb08c71e-096a-4508-b172-4698b9a607cc",[17,18,19,20,21,22],"LLM","本地微調","SFT","LoRA","DPO","RAG",[24,25,26],"先試提示詞與 RAG，再決定要不要微調。","SFT、LoRA、DPO 分別對應不同訓練成本與資料型態。","資料格式、驗證集與 base model 選擇，常比模型本身更影響結果。",0,"2026-06-19T03:17:21.792772+00:00","2026-06-19T03:17:21.783+00:00","c3c88dd2-a940-438a-b359-0e5a24562273",{"tags":32,"relatedLang":35,"relatedPosts":39},[33],{"name":17,"slug":34},"llm",{"id":15,"slug":36,"title":37,"language":38},"fine-tuning-llms-locally-sft-lora-dpo-en","Fine-Tuning LLMs Locally: SFT, LoRA, DPO","en",[40,46,52,58,64,70],{"id":41,"slug":42,"title":43,"cover_image":44,"image_url":44,"created_at":45,"category":13},"d2a143b9-efa1-4ffd-adcb-7a315ae6344e","renesas-acquires-altium-pcb-design-tool-update-zh","瑞萨全资收购 Altium，PCB 教程更新","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781859766720-ow6s.png","2026-06-19T09:02:23.113145+00:00",{"id":47,"slug":48,"title":49,"cover_image":50,"image_url":50,"created_at":51,"category":13},"1e47b8fc-1eab-4342-83bd-a270d59a41f9","rust-forum-week-25-turns-ideas-into-shipping-work-zh","Rust 論壇週報把想法變交付","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781857111111-md5g.png","2026-06-19T08:18:04.893117+00:00",{"id":53,"slug":54,"title":55,"cover_image":56,"image_url":56,"created_at":57,"category":13},"300d082a-4df5-4a26-8b5b-7dff73dd0da3","claude-code-rust-native-terminal-interface-zh","Claude Code Rust 把終端機變輕了","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781854439295-lkeg.png","2026-06-19T07:33:29.722095+00:00",{"id":59,"slug":60,"title":61,"cover_image":62,"image_url":62,"created_at":63,"category":13},"819930d2-f83c-42e1-be18-fc65eb212184","open-source-tools-vibe-coding-cybersecurity-zh","開源工具把 vibe coding 變安全","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781852614083-gnj4.png","2026-06-19T07:03:08.602553+00:00",{"id":65,"slug":66,"title":67,"cover_image":68,"image_url":68,"created_at":69,"category":13},"60a23c5e-d9df-4186-a30e-5d2c123a0ed6","model-triage-coding-tests-cost-win-zh","模型分流把測試成本壓下來","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781840895287-vp1r.png","2026-06-19T03:47:51.801299+00:00",{"id":71,"slug":72,"title":73,"cover_image":74,"image_url":74,"created_at":75,"category":13},"fa5c39c9-8213-4432-a19d-fd67f085fdca","vercel-eve-agents-as-directories-zh","把 agents 變成目錄","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1781828288993-qss6.png","2026-06-19T00:17:45.298522+00:00",[77,82,87,92,97,102,107,112,117,122],{"id":78,"slug":79,"title":80,"created_at":81},"855cd52f-6fab-46cc-a7c1-42195e8a0de4","surepath-real-time-mcp-policy-controls-zh","SurePath 推出即時 MCP 政策控管","2026-03-26T07:57:40.77233+00:00",{"id":83,"slug":84,"title":85,"created_at":86},"9b19ab54-edef-4dbd-9ce4-a51e4bae4ebb","mcp-in-2026-the-ai-tool-layer-teams-use-zh","2026 年 MCP：團隊真的在用的 AI 工具層","2026-03-26T08:01:46.589694+00:00",{"id":88,"slug":89,"title":90,"created_at":91},"af9c46c3-7a28-410b-9f04-32b3de30a68c","prompting-in-2026-what-actually-works-zh","2026 提示工程，真正有用的是什麼","2026-03-26T08:08:12.453028+00:00",{"id":93,"slug":94,"title":95,"created_at":96},"05553086-6ed0-4758-81fd-6cab24b575e0","garry-tan-open-sources-claude-code-toolkit-zh","Garry Tan 開源 Claude Code 工具包","2026-03-26T08:26:20.068737+00:00",{"id":98,"slug":99,"title":100,"created_at":101},"042a73a2-18a2-433d-9e8f-9802b9559aac","github-ai-projects-to-watch-in-2026-zh","2026 必看 20 個 GitHub AI 專案","2026-03-26T08:28:09.619964+00:00",{"id":103,"slug":104,"title":105,"created_at":106},"a5f94120-ac0d-4483-9a8b-63590071ac6a","claude-code-vs-cursor-2026-zh","Claude Code 與 Cursor 深度對比：202…","2026-03-26T13:27:14.279193+00:00",{"id":108,"slug":109,"title":110,"created_at":111},"0975afa1-e0c7-4130-a20d-d890eaed995e","practical-github-guide-learning-ml-2026-zh","2026 機器學習入門 GitHub 實用指南","2026-03-27T01:16:49.712576+00:00",{"id":113,"slug":114,"title":115,"created_at":116},"bfdb467a-290f-4a80-b3a9-6f081afb6dff","aiml-2026-student-ai-ml-lab-repo-review-zh","AIML-2026：像課綱的學生實驗 Repo","2026-03-27T01:21:51.467798+00:00",{"id":118,"slug":119,"title":120,"created_at":121},"80cabc3e-09fc-4ff5-8f07-b8d68f5ae545","ai-trending-github-repos-and-research-feeds-zh","AI Trending：把 AI 資源收成一張表","2026-03-27T01:31:35.262183+00:00",{"id":123,"slug":124,"title":125,"created_at":126},"3ce6e6e2-bac5-463e-9f8d-45caabcc61f7","awesome-ai-for-science-research-tools-map-zh","AI 科研工具清單，開始像地圖了","2026-03-27T01:46:50.521945+00:00"]