一、背景
? ? 時間飛逝,我首次撰寫的“開源大語言模型-實際應用落地”專欄已經完成了一半以上的內容。由衷感謝各位朋友的支持,希望這些內容能給正在學習的朋友們帶來一些幫助。
? ? 在這里,我想分享一下創作這個專欄的初心以及如何有效的,循序漸進的學習。
? ? 從事IT行業15年來,從來沒有寫博客的習慣,但從今年年初開始,突然發現,如今在社會生存的壓力是越來越大。每天都要面對各種信息焦慮、工作競爭壓力、高昂的學習成本,以及身體健康的透支。為此,我突發奇想,希望把自己工作實踐中的一些經驗分享出來,通過這個專欄,向朋友們介紹一些前沿技術的實際應用,比如開源大語言模型的應用場景。希望能讓大家更好地了解這些技術在實際工作中的應用價值,幫助大家在學習和工作中增加一些實用的能力。
一)信息焦慮
二)工作競爭壓力
三)高昂的學習成本
四)身體健康的透支
? ? 為什么要設置成付費專欄?主要是在信息無限,精力有限的時代,當大家為內容付費之后,就會更加重視這個內容,并希望從中獲得相應的收獲和回報。畢竟,既然花費了金錢,那么必然就希望能夠從中得到一些有價值的東西。
二、學習路線
2.1.探索模型之旅
(一)開源大語言模型探索
? QWen模型試煉
? ? ? ? 開源模型應用落地-qwen模型小試-入門篇(一)
? ? ? ? ? ? 重點:在windows環境下,使用transformer調用Qwen-1_8B-Chat模型
? ? ? ? 開源模型應用落地-qwen模型小試-入門篇(二)
? ? ? ? ? ?重點:在windows環境下,使用transformer設置模型參數/System Prompt/歷史對話
? ? ? ? 開源模型應用落地-qwen模型小試-入門篇(三)
? ? ? ? ? ? 重點:在linux環境下,使用transformer調用Qwen-1_8B-Chat模型
? ? ? ? 開源模型應用落地-qwen模型小試-入門篇(四)
? ? ? ? ? ? 重點:使用gradio,構建Qwen-1_8B-Chat模型的測試界面
? ? ? ? 開源模型應用落地-qwen模型小試-入門篇(五)
? ? ? ? ? ? 重點:使用modelscope api調用Qwen-1_8B-Chat模型,實現非流式/流式輸出
? ? ? ? 開源模型應用落地-qwen模型小試-調用qwen1.5新模型-進階篇(六)
? ? ? ? ? ? 重點:Qwen1.5系列模型的新特性及使用方式
? ? ? ? 開源模型應用落地-qwen模型小試-Zero/One/Few Shot-進階篇(九)
? ? ? ? ? ? 重點:深入理解Zero/One/Few-Shot,讓模型可以更好地處理新任務
? ? ? ? 開源模型應用落地-qwen模型小試-function call(十)
? ? ? ? ? ? 重點:如何使用qwen1.5-7b-chat,正確調用function call
? ? ? ? 開源模型應用落地-qwen模型小試-Qwen-Agent(十一)
? ? ? ? ? ? 重點:在qwen1.5-7b-chat模型下,利用Qwen-Agent構建智能代理,理解和響應用戶查詢
? ? ? ?開源模型應用落地-模型量化-Qwen1.5-7B-Chat-GPTQ-Int8(一)
? ? ? ? ? ? 重點:理解GPTQ模型量化技術,以低成本體驗大語言模型的魅力
? ? ? ?開源模型應用落地-模型量化-Qwen1.5-7B-Chat-AWQ(二)
? ? ? ? ? ? 重點:理解AWQ模型量化技術,以低成本體驗大語言模型的魅力
? ? ? ? 開源模型應用落地-模型量化-AWQ vs GPTQ(三)
? ? ? ? ? ? 重點:分析GPTQ和AWQ模型量化技術之間的差異
? ? ? ? 開源模型應用落地-Qwen1.5-MoE-1/3的激活參數量達到7B模型的性能
? ? ? ? ? ? 重點:使用Qwen1.5-MoE-A2.7B,體驗更快的推理速度
? BaiChuan模型試煉
? ? ? ? 開源模型應用落地-baichuan模型小試-入門篇(一)
? ? ? ? ? ? 重點:在windows環境下,使用transformer調用Baichuan2-7B-Chat模型
? ? ? ? 開源模型應用落地-baichuan2模型小試-入門篇(二)
? ? ? ? ? ? 重點:在windows環境下,使用transformer設置模型參數/System Prompt/歷史對話
? ? ? ? 開源模型應用落地-baichuan2模型小試-入門篇(三)
? ? ? ? ? ? 重點:在linux環境下,使用transformer調用Baichuan2-7B-Chat模型
? ChatGLM模型試煉
? ? ? ? 開源模型應用落地-chatglm3-6b模型小試-入門篇(一)
? ? ? ? ? ? 重點:在windows環境下,使用transformer調用chatglm3-6b模型
? ? ? ? 開源模型應用落地-chatglm3-6b模型小試-入門篇(二)
? ? ? ? ? ? 重點:在windows環境下,使用transformer設置模型參數/System Prompt/歷史對話
? ? ? ? 開源模型應用落地-chatglm3-6b模型小試-入門篇(三)
? ? ? ? ? ? 重點:在linux環境下,使用transformer調用chatglm3-6b模型
? ? ? ? 開源模型應用落地-chatglm3-6b-批量推理-入門篇(四)
? ? ? ? ? ? 重點:在低成本下,連續批處理提升LLM推理吞吐量,減少延遲
? ? ? ? 開源模型應用落地-chatglm3-6b-zero/one/few-shot-入門篇(五)
? ? ? ? ? ? 重點:在Zero-Shot/One-Shot/Few-Shot場景下,ChatGLM3-6B的推理表現
? ? ? ? 開源模型應用落地-chatglm3-6b-function call-入門篇(六)
? ? ? ? ? ? 重點:在ChatGLM3-6B模型下,實現Function Call
? ? ? ? 開源模型應用落地-chatglm3-6b-gradio-入門篇(七)
? ? ? ? ? ? 重點:使用gradio搭建AI交互界面
? ? ? ? 開源模型應用落地-chatglm3-6b-streamlit-入門篇(八)
? ? ? ? ? ? 重點:使用streamlit搭建AI交互界面
? ? ? ? 開源模型應用落地-chatglm3-6b-模型輸出違禁詞檢測(九)
? ? ? ? ? ? 重點:識別模型輸出是否命中違禁詞
? ? ? ? 開源模型應用落地-chatglm3-6b-集成langchain(十)
? ? ? ? ? ? 重點:LangChain與ChatGLM3結合,提高對話系統的性能和用戶體驗
? KnowLM模型試煉
? ? ? ? 開源模型應用落地-KnowLM模型小試-入門篇(一)
? ? ? ? ? ? 重點:調用KnowLM模型,實現知識抽取
? ? ? ? 開源模型應用落地-KnowLM模型小試-入門篇(二)
? ? ? ? ? ? 重點:優化模型參數,提高知識提取效率和質量
CodeQwen模型試煉
? ? ? ??開源模型應用落地-CodeQwen模型小試-小試牛刀(一)
? ? ? ? ? ? 重點:CodeWen模型初體驗,測試生成/修改代碼的能力
? ? ? ??開源模型應用落地-CodeQwen模型小試-SQL專家測試(二)
? ? ? ? ? ? 重點:探索CodeWen模型的SQL能力
? ? ? ? 開源模型應用落地-CodeQwen模型小試-探索更多使用場景(三)
? ? ? ? ? ? 重點:探索CodeWen模型更多的使用場景
? ? ? ? 開源模型應用落地-CodeQwen模型小試-集成langchain(四)
? ? ? ? ? ? 重點:CodeWen模型集成LangChain,提供更便捷的推理方式
(二)開源大語言輔助工具
? ? ? ? 開源模型應用落地-Gradio正確集成Fastapi-助力模型交互-入門篇(一)
? ? ? ? ? ? 重點:正確集成Gradio和Fastapi兩大技術框架
? ? ? ? 開源模型應用落地-Gradio正確集成Fastapi-助力模型交互-實踐篇(二)
? ? ? ? ? ? 重點:實踐qwen1.5-7b-chat模型,同時提供界面交互和接口服務兩種能力
? ? ? ? 開源模型應用落地-工具使用篇-JMeter(一)
? ? ? ? ? ? 重點:使用JMeter工具壓測AI服務鏈路,及時發現潛在的性能瓶頸
? ? ? ? 開源模型應用落地-工具使用篇-SLB(二)
? ? ? ? ? ? 重點:引入負載均衡,以提高AI服務的性能和故障轉移能力
? ? ? ??開源模型應用落地-工具使用篇-Ollama(六)
? ? ? ? ? ? 重點:使用Ollama快速集成QWen1.5系列模型
? ? ? ??開源模型應用落地-工具使用篇-Spring AI(七)
? ? ? ? ? ? 重點:通過Spring AI調用OpenAI及Ollama系列模型
? ? ? ??開源模型應用落地-工具使用篇-Spring AI-Function Call(八)
? ? ? ? ? ? 重點:通過Spring AI調用OpenAI,并實現function call的高級用法
? ? ? ??開源模型應用落地-工具使用篇-Spring AI-高階用法(九)
? ? ? ? ? ? 重點:通過Spring AI調用OpenAI,并實現歷史上下文傳遞及模型參數優化
2.2.實戰技能一網打盡
(一)開源大語言模型微調
? ? ? ? 開源模型應用落地-qwen-7b-chat-LoRA微調(一)
? ? ? ? ? ? 重點:使用官方正確方式微調qwen-7b-chat模型
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat-LoRA微調(二)
? ? ? ? ? ? 重點:使用官方正確方式微調qwen1.5-7b-chat模型
? ? ? ? 開源模型應用落地-qwen-7b-chat-LoRA微調-Firefly(三)
? ? ? ? ? ? 重點:使用第三方開源Firefly框架微調qwen-7b-chat模型
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat-LoRA微調-Firefly(四)
? ? ? ? ? ? 重點:使用第三方開源Firefly框架微調qwen1.5-7b-chat模型
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat-LoRA微調代碼拆解
? ? ? ? ? ? 重點:深度剖析官方qwen1.5-7b-chat模型微調代碼
? ? ? ? 開源模型應用落地-qwen模型小試-調用Lora模型-進階篇(七)
? ? ? ? ? ? 重點:調用微調后的qwen-7b-chat模型
? ? ? ? 開源模型應用落地-qwen模型小試-合并Lora模型-進階篇(八)
? ? ? ? ? ? 重點:將qwen-7b-chat基座模型與Lora模型進行合并
(二)開源大語言模型應用框架
? ? ? ? 開源模型應用落地-LangChain試煉-Zero/One/Few Shot
? ? ? ? ? ? 重點:基于LangChain框架,體驗Zero/One/Few-Shot的使用
? ? ? ? 開源模型應用落地-LangChain高階-QWen1.5-外部實時數據
? ? ? ? ? ? ?重點:通過LangChain調用外部“心知天氣”服務,并將結果返回給QWen1.5模型處理
? ? ? ? 開源模型應用落地-LangChain高階-知識圖譜助力記憶增強
? ? ? ? ? ? 重點:通過知識圖譜為模型提供豐富的語義信息和外部記憶支持?
? ? ? ? 開源模型應用落地-LangChain高階-事件回調-合規校驗
? ? ? ? ? ? 重點:通過事件回調機制,實現用戶輸入和模型輸出的合規檢測
? ? ? ? 開源模型應用落地-LangChain試煉-CPU調用QWen1.5(一)
? ? ? ? ? ? 重點:基于LangChain框架,通過CPU調用本地qwen1.5-7b-chat模型
? ? ? ? 開源模型應用落地-LangChain高階-GPU調用QWen1.5(二)
? ? ? ? ? ? 重點:基于LangChain框架,通過GPU調用本地qwen1.5-7b-chat模型
? ? ? ?開源模型應用落地-LangChain高階-集成vllm-QWen1.5(一)
? ? ? ? ? ? 重點:LangChain與vllm、QWen1.5模型結合,提高對話系統的性能和用戶體驗
? ? ? ? 開源模型應用落地-LangChain高階-集成vllm-QWen1.5(二)
? ? ? ? ? ? 重點:LangChain與vllm、QWen1.5模型結合,提高對話系統的性能和用戶體驗
? ? ? ? 開源模型應用落地-LangChain高階-集成vllm-QWen1.5-OpenAI-Compatible Server(三)
? ? ? ? ? ? 重點:LangChain集成vllm,構建與OpenAI-API兼容的API服務
? ? ? ? 開源模型應用落地-LangChain高階-Tools工具-ShellTool(一)
? ? ? ? ? ? 重點:通過使用LangChain提供的ShellTool工具,讓LLM與本地文件系統進行交互
? ? ? ? 開源模型應用落地-LangChain高階-Tools工具-WolframAlpha(二)
? ? ? ? ? ? 重點:通過使用LangChain提供的WolframAlpha工具,實現在線計算知識引擎和智能搜索。
? ? ? ? 開源模型應用落地-LangChain高階-Tools工具-GoogleSerperAPIWrapper(三)
? ? ? ? ? ? 重點:通過使用LangChain提供的GoogleSerperAPIWrapper工具,實現在線實時搜索
? ? ? ? 開源模型應用落地-LangChain高階-Tools工具-集成agents(四)
? ? ? ? ? ? 重點:將代理串聯工具,將大語言模型的能力和本地、云服務能力結合
? ? ? ? 開源模型應用落地-LangChain高階-Tools工具-Multi-Agent(五)
? ? ? ? ? ? 重點:串聯多個agents協同合作,高效完成復雜任務
? ? ? ? 開源模型應用落地-LangSmith試煉-入門初體驗(一)
? ? ? ? ? ? 重點:使用LangSmith的Trace進行模型的開發和調試
? ? ? ?開源模型應用落地-LangSmith試煉-入門初體驗-數據集管理(二)
? ? ? ? ? ? 重點:使用LangSmith更好地管理數據,提高了數據的組織性和可訪問性。
2.3.業務整合落地
(一)開源大語言模型業務實踐
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(一)
? ? ? ? ? ? 重點:qwen-7b-chat集成vllm
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(二)
? ? ? ? ? ? 重點:gunicorn+flask構建AI服務
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(三)
? ? ? ? ? ? 重點:supervisor提升服務的穩定性
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(四)
? ? ? ? ? ? 重點:鑒權和限流提升AI服務的安全性和穩定性
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(五)
? ? ? ? ? ? 重點:定時任務處理隱藏盲點
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(六)
? ? ? ? ? ? 重點:改變模型自我認知
? ? ? ? 開源模型應用落地-qwen-7b-chat與vllm實現推理加速的正確姿勢(七)
? ? ? ? ? ? 重點:AI服務性能優化
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat與vllm實現推理加速的正確姿勢(八)
? ? ? ? ? ? 重點:qwen1.5-7b-chat集成vllm
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat與vllm實現推理加速的正確姿勢(九)
? ? ? ? ? ? 重點:qwen1.5-7b-chat集成vllm,構建與OpenAI-API兼容的API服務
? ? ? ? 開源模型應用落地-業務整合篇-多種方式調用AI服務(一)
? ? ? ? ? ? 重點:使用HttpURLConnection/OkHttp/HttpClient多種方式調用AI服務
? ? ? ? 開源模型應用落地-業務整合篇-構建WebSocket服務(二)
? ? ? ? ? ? 重點:使用Netty庫快速構建WebSocket服務,實現客戶端與AI服務交互
? ? ? ? 開源模型應用落地-業務整合篇-Springboot集成Netty(三)
? ? ? ? ? ? 重點:spring boot集成netty服務,實現用戶界面交互
? ? ? ? 開源模型應用落地-業務整合篇-構建websocket校驗機制(四)
? ? ? ? ? ? 重點:構建websocket身份校驗機制,避免無效連接
? ? ? ? 開源模型應用落地-業務整合篇-構建websocket心跳機制(五)
? ? ? ? ? ? 重點:構建websocket心跳機制,及時釋放一些無效的連接
? ? ? ? 開源模型應用落地-業務優化篇(一)
? ? ? ? ? ? 重點:使用線程池提升處理效率
? ? ? ? 開源模型應用落地-業務優化篇(二)
? ? ? ? ? ? 重點:使用Redis隊列和分布式鎖實現請求排隊
? ? ? ? 開源模型應用落地-業務優化篇(三)
? ? ? ? ? ? 重點:使用SLB實現AI服務水平擴容
? ? ? ?開源模型應用落地-業務優化篇(四)
? ? ? ? ? ? 重點:多級數據緩存概述
? ? ? ? 開源模型應用落地-業務優化篇(五)
? ? ? ? ? ? 重點:使用HanLP進行詞性標注,并使用Redis作為一級緩存
? ? ? ? 開源模型應用落地-業務優化篇(六)
? ? ? ? ? ? 重點:使用向量數據庫作為二級緩存,來為AI服務減負,提升處理效率
? ? ? ? 開源模型應用落地-業務優化篇(七)
? ? ? ? ? ? 重點:使用RocketMQ提升處理效率
? ? ? ? 開源模型應用落地-業務優化篇(八)
? ? ? ? ? ? 重點:統計問題的請求頻次,實現熱門問題的實時緩存
(二)開源大語言模型應用合規
? ? ? ? 開源模型應用落地-安全合規篇-用戶輸入合規性檢測(一)
? ? ? ? ? ? 重點:使用DFA算法檢測用戶輸入內容的合法性
? ? ? ? 開源模型應用落地-安全合規篇-用戶輸入合規性檢測(二)
? ? ? ? ? ? 重點:使用騰訊云文本內容安全服務檢測用戶輸入內容的合法性
? ? ? ? 開源模型應用落地-安全合規篇-模型輸出合規性檢測(三)
? ? ? ? ? ? 重點:使用騰訊云文本內容安全服務檢測模型輸出內容的合法性
(三)開源大語言模型記憶增強
? ? ? ? 開源模型應用落地-工具使用篇-向量數據庫(三)
? ? ? ? ? ? 重點:Milvus Lite向量數據庫的基本使用
? ? ? ? 開源模型應用落地-工具使用篇-向量數據庫進階(四)
? ? ? ? ? ? 重點:Milvus Lite向量數據庫的進階使用
? ? ? ? 開源模型應用落地-工具使用篇-獲取文本向量(五)
? ? ? ? ? ? 重點:通過GPT和開源模型等方式獲取文本向量
? ? ? ? 開源模型應用落地-模型記憶增強-概念篇(一)
? ? ? ? ? ? 重點:理解增強大語言模型的記憶能力的方法
? ? ? ? 開源模型應用落地-模型記憶增強-向量數據庫準備-實踐篇(二)
? ? ? ? ? ? 重點:實踐使用長期記憶模塊增強大語言模型的記憶能力
? ? ? ? 開源模型應用落地-模型記憶增強-提升向量檢索準確率-實踐篇(三)
? ? ? ? ? ? 重點:使用長期記憶模塊增強大語言模型的記憶能力,優化向量檢索準確率
? ? ? ? 開源模型應用落地-模型記憶增強-整合AI服務-QWen1.5-7B-Chat(四)
? ? ? ? ? ? 重點:業務流程(AI服務)集成長期記憶模塊,提升用戶對話體驗
2.4.知識拓展
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat與sglang實現推理加速的正確姿勢(一)
? ? ? ? ? ? 重點:qwen1.5-7b-chat集成sglang,實現5倍加速
? ? ? ? 開源模型應用落地-qwen1.5-7b-chat與sglang實現推理加速的正確姿勢(二)
? ? ? ? ? ? 重點:sglang性能優化,讓其跑的更快
三、學習收獲
- 掌握如何使用Transformer庫調用業界流行的大語言模型
- 掌握大語言模型推理加速的正確方式
- 掌握LangChain/LangSmith等應用框架的高階使用
- 掌握如何把大語言模型能力落地于實際業務
- 掌握如何做好互聯網信息服務深度合成管理規定
- 掌握如何提高大語言模型的記憶能力
- 掌握如何通過大語言模型構建知識圖譜
- 掌握如何在昂貴算力面前尋求降本增效方法
- 掌握開源大語言模型下Function Call、Agent等使用方式
- 掌握Spring AI、Ollama、Netty、HanLP、Redis等綜合運用
四、后續
? ? 紙上得來終覺淺,絕知此事要躬行,老鐵們不要被當下困境所困擾,用堅韌不拔的精神和勇氣開啟自己新的輝煌。我會持續更新,把工作中的所思、所想、所得,毫無保留地分享出來,希望能給大家帶來一絲幫助。