Prompt 自動最佳化的思路,就是用 AI 迭代產生上百上千個提示詞,透過自動化評估,從中挑一個表現最好的 prompt。
延續 評估驅動開發 的演講內容,我用 Textgrad 和 DSPy 這兩個史丹佛大學出品的最佳化框架,分別做了通用範例。只需要給任務描述,就可以快速完成 Prompt 自動最佳化的過程,拿到厲害的 prompt 結果。
閱讀全文〈提示詞 Prompt 自動最佳化: Textgrad 和 DSPy 通用範例〉😆 👨🏻💻 ✨ 🚀 💰
Prompt 自動最佳化的思路,就是用 AI 迭代產生上百上千個提示詞,透過自動化評估,從中挑一個表現最好的 prompt。
延續 評估驅動開發 的演講內容,我用 Textgrad 和 DSPy 這兩個史丹佛大學出品的最佳化框架,分別做了通用範例。只需要給任務描述,就可以快速完成 Prompt 自動最佳化的過程,拿到厲害的 prompt 結果。
閱讀全文〈提示詞 Prompt 自動最佳化: Textgrad 和 DSPy 通用範例〉2024/9/11 在 Hello World Dev Conference 分享的演講投影片 ➡️ 這裡下載 PDF (18.3mb)
後續有補充 Textgrad 和 DSPy 的最佳化 colab 通用範例在這裡。
如果你還沒有訂閱我的電子報,歡迎訂閱 📬 愛好 AI Engineer 電子報。
議程介紹:
Eval-Driven Development (EDD) 是一種通過特定任務評估,來引導開發 LLM-based 的應用軟體。我們會合成和製作資料集,設計評估指標,然後在評估的輔助下,實現 LLM 應用功能。簡單來說,就是先寫評估再開發。
在評估機制的支持下,我們可以自動最佳化超參數,包括自動提示詞生成 ,來提高應用性能。我們也可以透過這個機制,確保提示詞變更或升級更換模型時,AI 性能不會退化。
最後,評估流程還可以搭配 LLMOps 收集線上數據,進行數據飛輪不斷迭代改進,持續提升 AI 性能。
聽眾收穫:
聽眾將掌握先寫評估再開發的方法論,確保開發出的 AI 軟體能夠達到預期的性能指標。在開發初期就確立明確的目標,從而提高開發效率和結果的可靠性。並且透過自動最佳化超參數技術,可以顯著減少人工調參的工作量,並提升和保障軟體的整體 AI 性能。
Hello! 你好 👋
我是 ihower,這期累積了不少精彩內容分享給大家。
這包括作者們的 Blog 長文、在 AI Engineer World’s Fair 大會的演講影片,以及我的截圖版本。
這是由六位大神一起寫的 What We Learned From A Year of Building With LLMs (我們從一年使用大型語言模型的開發中學到了什麼) 資訊量很高,乾貨滿滿。把開發 LLM-based AI 產品的經驗,分成 戰術、營運和戰略層面,以下摘要節錄:
閱讀全文〈愛好 AI Engineer 電子報 🚀 建構 LLMs 應用的戰略、運營和戰術經驗分享 #16〉想系統性學習如何打造 LLM、RAG 和 Agents 應用嗎? 歡迎報名我的課程 大語言模型 LLM 應用開發工作坊
延續之前做 Embedding 和 Reranker 評測,這次來研究 RAG 系統中的 Chunking 切塊環節。由於 embedding 和 LLM 模型的長度限制,我們必須將所有文本資料,拆成小塊後再轉成向量放進向量資料庫。
七月份 Chroma 做的這篇非常棒 Evaluating Chunking Strategies for Retrieval,評測了幾個 Chunking 策略,並且提出兩種新的切塊策略,想當然他是用英文文本做的。
因為他有公開 Github Repo 程式碼可以重現他的實驗(非常棒,是真的可以順利執行的),因此我就改成用繁體中文文本試試,排列組合出評測 38 種不同 chunking 的方式。
閱讀全文〈使用繁體中文評測 RAG 的 Chunking 切塊策略〉Hello! 你好 👋
我是 ihower,這集是 RAG 進階特輯。如果不知道什麼是基本的 naive RAG(或叫做 top-k RAG) ,可以先看我的入門投影片有關 RAG 的介紹。簡單講,RAG 就是根據用戶問題,檢索出最相關的內容,然後放到 Prompt 裡面讓模型做參考回答。
閱讀全文〈愛好 AI Engineer 電子報 🚀 檢索增強生成 RAG 特輯 #15〉想系統性學習如何打造 LLM、RAG 和 Agents 應用嗎? 歡迎報名我的課程 大語言模型 LLM 應用開發工作坊
接續上一篇 Embedding 模型評測,這次我們來看看搭配 Reranker (重排)模型,做成二階段檢索會是什麼情況。
圖片出處: Boosting Your Search and RAG with Voyage’s Rerankers
Reranker 模型是另一種不一樣的模型(學名叫做 Cross-Encoder),不同於 embedding 模型(學名叫做 Bi-Encoder) 輸入是文字,輸出是高維度向量。Reranker 模型的輸入是兩段文字,輸出一個相關性分數 0 到 1 之間,也就是我們會將用戶 query 跟每一份文件都去算相關性分數,然後根據分數排序。
Reranker 的執行速度較慢,成本較高,但在判斷相關性上面,比 embedding 模型更準確
因此當資料非常多、想要快又要準時,跟 embeddings 模型搭配,做成兩階段檢索,是前人做推薦引擎時就發明的招式。