(英)How RAG helps Transformers to build customizable Large Language Models: A Comprehensive Guide 自然語言處理 (NLP) 在過去幾年中取得了革命性的進步,這主要是由 Transformer 等複雜語言模型的開發所推動的。在這些進步中,檢索增強生成(RAG)作為一項尖端技術脫穎而出,它顯著增強了語言模型的能力。 RAG 將檢索機制與生成模型結合,創建可自訂、高效且準確的語言模型。讓我們研究一下 RAG 如何幫助 Transformer 建立可自訂的 LLM 及其底層機制、優勢和應用程式。了解 Transformer 及其限制…

(英)在配備 M1 晶片的 MacBook 上安裝 Hugging Face Transformer 的方法。 Along with Tensorflow and Tokenizers Package
Gemini Pro API 嘅一個功能,Add Stop sequence,用嚟控制模型生成文字嘅結果。意思係喺生成文字嗰陣,如果遇到指定嘅意語,就會作出反應。 Add Stop sequence 嘅用法好簡單,應用場景亦非常廣泛,可以有效控制模型嘅生成行為。 以下係一啲例子: [read more] 1. 避免生成重複內 假設我們正在生成一段文本,希望避免生成重複嘅內容。可以將以下序列設定為 Add Stop sequence: 例如,可以將以下內容設定為 Add Stop sequence: JSON { “generateContent”: { “prompt”: “請生成一段不重複嘅文本”, “addStopSequences”: [“已經生成嘅詞語或句子”, “特定的關鍵詞或短語”] }} 運行模型之後,模型會生成以下文本: 因為模型遇到咗 “請生成一段不重複嘅文本” 嘅序列,所以停止咗生成。 2. 控制生成長度 假設我們正在生成一段文本,希望控制生成嘅長度。可以將以下序列設定為 Add Stop sequence: 例如,可以將以下內容設定為 Add Stop sequence: JSON { “generateContent”: { “prompt”: […]
Gemini Pro API 嘅一個功能,Add Stop sequence,用嚟控制模型生成文字嘅結果。意思係喺生成文字嗰陣,如果遇到指定嘅意語,就會作出反應。
Add Stop sequence 嘅用法好簡單,應用場景亦非常廣泛,可以有效控制模型嘅生成行為。
以下係一啲例子:
[read more]1. 避免生成重複內
假設我們正在生成一段文本,希望避免生成重複嘅內容。可以將以下序列設定為 Add Stop sequence:
- 已經生成嘅詞語或句子
- 特定的關鍵詞或短語
例如,可以將以下內容設定為 Add Stop sequence:
JSON
{
“generateContent”: {
“prompt”: “請生成一段不重複嘅文本”,
“addStopSequences”: [“已經生成嘅詞語或句子”, “特定的關鍵詞或短語”]
}
}
運行模型之後,模型會生成以下文本:
請生成一段不重複嘅文本
因為模型遇到咗 “請生成一段不重複嘅文本” 嘅序列,所以停止咗生成。
2. 控制生成長度
假設我們正在生成一段文本,希望控制生成嘅長度。可以將以下序列設定為 Add Stop sequence:
- 特定的字符數量
- 特定的標點符號
例如,可以將以下內容設定為 Add Stop sequence:
JSON
{
“generateContent”: {
“prompt”: “請生成一段長度為 100 個字符嘅文本”,
“addStopSequences”: [“100 個字符”, “.”]
}
}
請生成一段長度為 100 個字符嘅文本
執行呢個 Prompt 之後,模型會生成以下文本:
因為模型遇到咗 “.” 嘅序列,所以停止咗生成。
3. 定制生成格式
假設我們正在生成一段文本,希望控制生成嘅格式。可以將以下序列設定為 Add Stop sequence:
- 特定的 HTML 標籤
- 特定的 XML 節點
例如,可以將以下內容設定為 Add Stop sequence:
JSON
{
“generateContent”: {
“prompt”: “請生成一段 HTML 格式嘅文本”,
“addStopSequences”: [“</body>”, “</html>”]
}
}
運行模型之後,模型會生成以下文本:
HTML
<!DOCTYPE html>
<html>
<head>
<title>示例</title>
</head>
<body>
請生成一段 HTML 格式嘅文本
</body>
</html>
因為模型遇到咗 “</body>” 嘅序列,所以停止咗生成。
4. 實現特定功能
假設我們正在生成一段文本,希望實現特定嘅功能。可以將以下序列設定為 Add Stop sequence:
- 特定的指令或命令
- 特定的標記或符號
例如,可以將以下內容設定為 Add Stop sequence:
JSON
{
“generateContent”: {
“prompt”: “請生成一段可以回答問題嘅文本”,
“addStopSequences”: [“?”, “## 答案”]
}
}
運行模型之後,用戶可以向模型提出問題。模型會生成以下文本:
問題:臺灣中國有哪些適合旅遊的景點?
## 答案
臺灣有許多適合旅遊的景點,以下是一些例子:
* 台北:臺灣的首都,擁有許多歷史古蹟和現代建築。
* 高雄:臺灣的第二大城市,擁有美麗的海灘和繁華的夜市。
* 台中:臺灣的中部城市,擁有豐富的自然景觀和人文風情。
* 台南:臺灣的古都,擁有許多傳統文化遺產。
* 花蓮:臺灣東部的城市,擁有壯麗的峽谷和海岸線。
* 臺東:臺灣南部的城市,擁有豐富的原住民文化。
臺灣的四季分明,適合不同季節的旅遊。春、秋兩季氣候宜人,是旅遊的最佳季節。夏、冬兩季氣候較為極端,但也有其獨特的魅力。
臺灣的交通十分便利,有飛機、高鐵、巴士等多種交通方式可供選擇。臺灣的住宿設施也十分齊全,有酒店、民宿、青年旅社等多種選擇。
臺灣的人民熱情好客,樂於助人。臺灣的治安良好,是旅遊的理想目的地。
[/read]
Golden RAGtriever 是一款開源應用程序,旨在為開箱即用的檢索增強生成 (RAG) 提供端到端、簡化且用戶友好的介面。只需幾個簡單的步驟,即可在本地透過 HuggingFace 和 Ollama 或透過 OpenAI、Cohere 和 Google 等 LLM 供應商探索您的資料集並輕鬆提取見解。
Golden RAGtriever 是一款開源應用程序,旨在為開箱即用的檢索增強生成 (RAG) 提供端到端、簡化且用戶友好的介面。只需幾個簡單的步驟,即可在本地透過 HuggingFace 和 Ollama 或透過 OpenAI、Cohere 和 Google 等 LLM 供應商探索您的資料集並輕鬆提取見解。
影片示範如何使用 Langchain RAG fusion 和 GPT-40 為您的 PDF 創建人工智能的代理聊天機器人,供您個人或商業使用。影片包含用於設置檢索增強生成系統的 Python 代碼演練。 Rag Fusion 是一種通過多查詢方法克服傳統搜索系統限制的方法,從而改善性能。GPT-40 是 2024 年 5 月 14 日宣佈的 GPT-4 Turbo 的更高端模型。它可以處理文本、圖像和語音輸入。影片重點介紹檢索增強生成 (RAG) 的運作方式以及 GPT-40 的功能。核心概念是從原始查詢生成多個查詢,然後重新排序每個查詢的搜索結果,並提取具有高度相關性的結果。
影片示範如何使用 Langchain RAG fusion 和 GPT-40 為您的 PDF 創建人工智能的代理聊天機器人,供您個人或商業使用。影片包含用於設置檢索增強生成系統的 Python 代碼演練。
Rag Fusion 是一種通過多查詢方法克服傳統搜索系統限制的方法,從而改善性能。
GPT-40 是 2024 年 5 月 14 日宣佈的 GPT-4 Turbo 的更高端模型。它可以處理文本、圖像和語音輸入。
影片重點介紹檢索增強生成 (RAG) 的運作方式以及 GPT-40 的功能。
核心概念是從原始查詢生成多個查詢,然後重新排序每個查詢的搜索結果,並提取具有高度相關性的結果。
A.I. 不斷普及,可能越嚟越多技術名稱令人莫明費解。這兩條影片可能會令你更徹底了解 A.I. 是如何運作。
A.I. 不斷普及,可能越嚟越多技術名稱令人莫明費解。這兩條影片可能會令你更徹底了解 A.I. 是如何運作。
Ollama Web UI 是一個革命性的工具 無論是為了個人專案、研究工作還是僅僅為了樂趣,都可以大大提高您的生產力和創造力。
影片主要內容: 影片最後總結 Agent RAG 和更簡單的 RAG 實現之間的權衡。Agent RAG 提供了卓越的質量和控制,但代價是響應速度較慢。
影片主要內容:
- RAG 在知識管理中的應用: 大型語言模型 (LLM) 可以成為強大的 KM 工具,但它們難以處理和理解非結構化數據格式,例如 PDF 和演示文稿。RAG 通過結合檢索和生成技術來解決這一挑戰。該模型會根據用戶的查詢從數據庫中檢索相關文檔,然後使用這些文檔來生成其響應。
- RAG 實現的挑戰:
- 數據混亂: 現實世界中的數據通常很混亂,需要在 RAG 使用之前進行清理和轉換。
- 選擇合適的檢索方法: 不同的檢索方法適用於不同的數據類型。例如,向量搜索可能不適合需要從各種數據源(結構化和非結構化)獲取知識的複雜問題。
- 答案質量: 確保檢索到的文檔與用戶的查詢相關並完整地回答用戶的問題可能很困難。
- 高級 RAG 技術: 介紹了一些高級 RAG 技術來提高 RAG 應用程序的質量和可靠性:
- 更好的數據預處理: 使用 Llama Part 等專門為 LLM 設計的 PDF 解析器等工具可以顯著提高數據質量。
- 重新排名檢索到的文檔: 而不是將所有檢索到的文檔都提供給 LLM,可以使用排名模型來識別最相關的文檔,從而提高答案的準確性和效率。
- 混合搜索: 將向量搜索與關鍵字搜索相結合對於需要精確匹配的任務(例如電子商務產品搜索)很有用。
- Agent RAG: 此技術利用代理來動態推理檢索過程。代理可以修改用戶的查詢,為複雜問題執行逐步檢索,並決定是從檢索到的文檔中生成答案還是進行額外的網絡搜索。
- 構建本地 Agent RAG 應用程序: 影片講者演示了如何使用大型語言模型 Llama3 和向量數據庫工具 Goose3 構建本地 Agent RAG 應用程序。該應用程序從網站中檢索博客文章並使用它們來回答用戶的查詢。工作流程包括創建檢索模型、定義檢索條件、將條件邏輯納入以確定答案生成方法以及檢查答案的準確性。
影片最後總結 Agent RAG 和更簡單的 RAG 實現之間的權衡。Agent RAG 提供了卓越的質量和控制,但代價是響應速度較慢。
