{
  "schema": "videonote.subtitle_normalize.v1",
  "input_cue_count": 176,
  "kept_cue_count": 176,
  "dropped_cue_count": 0,
  "duplicate_merged_count": 0,
  "overlap_repaired_count": 0,
  "rolling_prefix_removed_count": 0,
  "timing_uncertain_count": 0,
  "coverage_ratio": 0.942166,
  "gaps": [
    {
      "start": 25.924,
      "end": 26.064,
      "seconds": 0.14
    },
    {
      "start": 55.164,
      "end": 55.324,
      "seconds": 0.16
    },
    {
      "start": 83.224,
      "end": 83.244,
      "seconds": 0.02
    },
    {
      "start": 111.384,
      "end": 111.403,
      "seconds": 0.019
    },
    {
      "start": 135.364,
      "end": 135.964,
      "seconds": 0.6
    },
    {
      "start": 140.403,
      "end": 140.424,
      "seconds": 0.021
    },
    {
      "start": 169.823,
      "end": 169.944,
      "seconds": 0.121
    },
    {
      "start": 173.784,
      "end": 174.243,
      "seconds": 0.459
    },
    {
      "start": 198.903,
      "end": 198.924,
      "seconds": 0.021
    },
    {
      "start": 226.644,
      "end": 226.664,
      "seconds": 0.02
    },
    {
      "start": 255.123,
      "end": 255.144,
      "seconds": 0.021
    },
    {
      "start": 284.963,
      "end": 285.044,
      "seconds": 0.081
    },
    {
      "start": 313.284,
      "end": 313.363,
      "seconds": 0.079
    },
    {
      "start": 341.604,
      "end": 341.683,
      "seconds": 0.079
    }
  ],
  "issues": [],
  "cues": [
    {
      "id": 0,
      "start": 10.044,
      "end": 13.244,
      "text": "今天我們要深度解析 GitHub 上的一個熱門專案：",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 1,
      "start": 13.244,
      "end": 15.924,
      "text": "ragflow，一個頂尖的開源 RAG 引擎。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 2,
      "start": 15.924,
      "end": 18.484,
      "text": "它旨在解決 RAG 應用最棘手的",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 3,
      "start": 18.484,
      "end": 20.484,
      "text": "「垃圾進、垃圾出」問題，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 4,
      "start": 20.484,
      "end": 22.164,
      "text": "透過深度文件理解，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 5,
      "start": 22.164,
      "end": 25.924,
      "text": "為大型語言模型打造真正高品質的上下文。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 6,
      "start": 26.064,
      "end": 29.644,
      "text": "大型語言模型為什麼有時候會一本正經地胡說八道？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 7,
      "start": 29.644,
      "end": 33.244,
      "text": "很多人第一個反應，就是怪模型本身不夠聰明。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 8,
      "start": 33.244,
      "end": 37.544,
      "text": "但如果問題的根源，其實是我們餵給它的資料品質呢？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 9,
      "start": 37.544,
      "end": 39.784,
      "text": "一個叫做 RAGFlow 的開源專案，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 10,
      "start": 39.784,
      "end": 41.784,
      "text": "正試圖從源頭解決這個問題。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 11,
      "start": 41.784,
      "end": 43.783,
      "text": "它不是又一個開發框架，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 12,
      "start": 43.783,
      "end": 45.783,
      "text": "而是一套完整的 RAG 引擎，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 13,
      "start": 45.783,
      "end": 50.924,
      "text": "它獨特的設計，可能會改變大家打造企業級 AI 應用的方法。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 14,
      "start": 50.924,
      "end": 53.664,
      "text": "這個專案在 GitHub 上累積了超過八萬顆星，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 15,
      "start": 53.664,
      "end": 55.164,
      "text": "它到底厲害在哪裡？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 16,
      "start": 55.324,
      "end": 58.964,
      "text": "RAGFlow 是由 infiniflow 團隊開發的一個開源專案，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 17,
      "start": 58.964,
      "end": 61.363,
      "text": "全名是檢索增強生成引擎，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 18,
      "start": 61.363,
      "end": 62.863,
      "text": "也就是 RAG engine。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 19,
      "start": 62.863,
      "end": 64.503,
      "text": "它的核心目標很明確：",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 20,
      "start": 64.503,
      "end": 66.944,
      "text": "要為大型語言模型 LLM",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 21,
      "start": 66.944,
      "end": 68.944,
      "text": "提供一個非常可靠的上下文，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 22,
      "start": 68.944,
      "end": 71.104,
      "text": "來解決模型回答時沒有根據、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 23,
      "start": 71.104,
      "end": 73.104,
      "text": "甚至產生幻覺的老問題。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 24,
      "start": 73.104,
      "end": 75.644,
      "text": "這個專案在 GitHub 上有多受歡迎呢？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 25,
      "start": 75.644,
      "end": 78.683,
      "text": "它已經累積了八萬八千三百七十七顆星，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 26,
      "start": 78.683,
      "end": 81.483,
      "text": "光是今天一天就增加了四百七十三顆，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 27,
      "start": 81.483,
      "end": 83.224,
      "text": "Fork 數量也突破了一萬。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 28,
      "start": 83.244,
      "end": 85.983,
      "text": "這代表開發者社群對它有非常高的期待。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 29,
      "start": 85.983,
      "end": 87.683,
      "text": "RAGFlow 的特別之處，在於",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 30,
      "start": 87.683,
      "end": 91.364,
      "text": "它把先進的 RAG 技術跟 Agent 的能力結合在一起，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 31,
      "start": 91.364,
      "end": 93.663,
      "text": "目標是為各種規模的企業，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 32,
      "start": 93.663,
      "end": 96.004,
      "text": "打造一套順暢的 AI 工作流程。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 33,
      "start": 96.004,
      "end": 98.364,
      "text": "現在要開發大型語言模型應用，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 34,
      "start": 98.364,
      "end": 100.564,
      "text": "最主流的做法就是 RAG，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 35,
      "start": 100.564,
      "end": 103.144,
      "text": "也就是檢索、增強、生成。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 36,
      "start": 103.144,
      "end": 104.703,
      "text": "這個流程聽起來很簡單：",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 37,
      "start": 104.703,
      "end": 107.203,
      "text": "先從自己的資料庫裡找出相關文件，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 38,
      "start": 107.203,
      "end": 109.044,
      "text": "再把這些文件跟用戶的問題，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 39,
      "start": 109.044,
      "end": 111.384,
      "text": "一起丟給語言模型去產生答案。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 40,
      "start": 111.403,
      "end": 113.144,
      "text": "聽起來很美好，對吧？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 41,
      "start": 113.144,
      "end": 114.403,
      "text": "但真正的痛點，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 42,
      "start": 114.403,
      "end": 116.983,
      "text": "其實在最一開始的「知識提取」。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 43,
      "start": 116.983,
      "end": 119.943,
      "text": "企業的真實文件可不是乾淨的純文字。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 44,
      "start": 119.943,
      "end": 122.023,
      "text": "裡面充滿了掃描的 PDF、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 45,
      "start": 122.023,
      "end": 123.123,
      "text": "複雜的表格、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 46,
      "start": 123.123,
      "end": 124.523,
      "text": "還有多欄位的報告。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 47,
      "start": 124.523,
      "end": 126.064,
      "text": "傳統的 RAG 流程，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 48,
      "start": 126.064,
      "end": 129.263,
      "text": "常常很粗暴地把這些文件切成一段段的文字，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 49,
      "start": 129.263,
      "end": 132.724,
      "text": "結果就是，文件裡重要的版面結構和語意關聯，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 50,
      "start": 132.724,
      "end": 133.964,
      "text": "全部都遺失了。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 51,
      "start": 133.964,
      "end": 135.364,
      "text": "這就造成了所謂的",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 52,
      "start": 135.964,
      "end": 138.064,
      "text": "「垃圾進，垃圾出」。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 53,
      "start": 138.064,
      "end": 140.403,
      "text": "這也是為什麼語言模型常常回答得不好、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 54,
      "start": 140.424,
      "end": 142.564,
      "text": "引用錯誤，甚至胡說八道。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 55,
      "start": 142.564,
      "end": 144.064,
      "text": "而 RAGFlow 要解決的，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 56,
      "start": 144.064,
      "end": 145.364,
      "text": "就是這個最前端，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 57,
      "start": 145.364,
      "end": 147.504,
      "text": "但也最關鍵的資料品質問題。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 58,
      "start": 147.504,
      "end": 148.903,
      "text": "RAGFlow 的技術核心，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 59,
      "start": 148.903,
      "end": 150.303,
      "text": "可以濃縮成一句話：",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 60,
      "start": 150.303,
      "end": 152.343,
      "text": "「Quality in, quality out」，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 61,
      "start": 152.343,
      "end": 154.243,
      "text": "也就是高品質的輸入，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 62,
      "start": 154.243,
      "end": 155.843,
      "text": "才會有高品質的輸出。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 63,
      "start": 155.843,
      "end": 157.343,
      "text": "它的第一個技術亮點，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 64,
      "start": 157.343,
      "end": 160.743,
      "text": "是一個叫做 `DeepDoc` 的深度文件理解模組。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 65,
      "start": 160.743,
      "end": 163.424,
      "text": "你可以把它想像成一位數位文件鑑識專家。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 66,
      "start": 163.424,
      "end": 164.724,
      "text": "它不只是讀文字，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 67,
      "start": 164.724,
      "end": 167.724,
      "text": "它還會去分析 PDF 或 Word 文件的版面，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 68,
      "start": 167.724,
      "end": 169.823,
      "text": "可以很精準地把表格抽出來、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 69,
      "start": 169.944,
      "end": 171.084,
      "text": "辨識圖片內容、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 70,
      "start": 171.084,
      "end": 173.784,
      "text": "還能看懂標題和段落之間的層級關係。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 71,
      "start": 174.243,
      "end": 176.743,
      "text": "這種智慧化的切塊 chunking 方式，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 72,
      "start": 176.743,
      "end": 179.664,
      "text": "確保了餵給模型的上下文，是高品質",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 73,
      "start": 179.664,
      "end": 181.064,
      "text": "而且結構完整的。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 74,
      "start": 181.064,
      "end": 184.123,
      "text": "這就從根本上提升了檢索的準確度。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 75,
      "start": 184.123,
      "end": 185.424,
      "text": "再來，RAGFlow",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 76,
      "start": 185.424,
      "end": 187.924,
      "text": "把 RAG 跟 Agent 的工作流程結合在一起。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 77,
      "start": 187.924,
      "end": 189.823,
      "text": "這代表它不只會回答問題，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 78,
      "start": 189.823,
      "end": 192.263,
      "text": "還能自動執行多個步驟的複雜任務。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 79,
      "start": 192.263,
      "end": 193.203,
      "text": "更厲害的是，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 80,
      "start": 193.203,
      "end": 198.103,
      "text": "它為此設計了一個基於 `gVisor` 技術的程式碼執行沙箱 sandbox。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 81,
      "start": 198.103,
      "end": 198.903,
      "text": "sandbox",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 82,
      "start": 198.924,
      "end": 200.024,
      "text": "這代表什麼意思？",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 83,
      "start": 200.024,
      "end": 205.064,
      "text": "這代表 Agent 可以安全地執行由 LLM 生成的 Python 程式碼，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 84,
      "start": 205.064,
      "end": 206.564,
      "text": "來完成複雜的分析任務。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 85,
      "start": 206.564,
      "end": 209.064,
      "text": "同時，又有一道堅固的防火牆保護，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 86,
      "start": 209.064,
      "end": 211.403,
      "text": "不怕惡意程式碼攻擊主機系統。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 87,
      "start": 211.403,
      "end": 215.343,
      "text": "這個設計，對於企業級的 AI 自動化應用來說，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 88,
      "start": 215.343,
      "end": 217.343,
      "text": "提供了非常關鍵的安全保障。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 89,
      "start": 217.343,
      "end": 219.743,
      "text": "最後，來看看它的整體架構。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 90,
      "start": 219.743,
      "end": 222.743,
      "text": "RAGFlow 採用了基於 Docker 的容器化部署，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 91,
      "start": 222.743,
      "end": 226.644,
      "text": "把後端服務、資料庫和文件引擎都模組化了。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 92,
      "start": 226.664,
      "end": 228.763,
      "text": "它還讓開發者可以在 Elasticsearch，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 93,
      "start": 228.763,
      "end": 232.203,
      "text": "或是他們自己研發的 Infinity 向量資料庫之間自由選擇。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 94,
      "start": 232.203,
      "end": 235.403,
      "text": "這代表它同時兼顧了部署的方便性和架構的彈性。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 95,
      "start": 235.403,
      "end": 237.403,
      "text": "RAGFlow 的應用場景非常明確，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 96,
      "start": 237.403,
      "end": 238.804,
      "text": "主要就是針對那些",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 97,
      "start": 238.804,
      "end": 242.084,
      "text": "需要處理大量非結構化文件的企業和開發者。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 98,
      "start": 242.084,
      "end": 242.843,
      "text": "舉個例子，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 99,
      "start": 242.843,
      "end": 247.144,
      "text": "一間金融機構可以用它來處理幾千份掃描的年度報告 PDF。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 100,
      "start": 247.144,
      "end": 249.584,
      "text": "然後建立一個內部的知識問答系統，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 101,
      "start": 249.584,
      "end": 251.683,
      "text": "不只可以精準回答財務數據，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 102,
      "start": 251.683,
      "end": 253.924,
      "text": "還能追溯到報告的原文頁數。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 103,
      "start": 253.924,
      "end": 255.123,
      "text": "對於開發者來說，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 104,
      "start": 255.144,
      "end": 257.444,
      "text": "可以把 RAGFlow 當作後端引擎，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 105,
      "start": 257.444,
      "end": 258.843,
      "text": "很快地為自己的 App，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 106,
      "start": 258.843,
      "end": 261.983,
      "text": "加上讀取私有資料的進階問答功能，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 107,
      "start": 261.983,
      "end": 265.043,
      "text": "不用再自己從頭蓋一個複雜的資料處理流程。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 108,
      "start": 265.043,
      "end": 266.483,
      "text": "而對數據分析師來說，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 109,
      "start": 266.483,
      "end": 269.524,
      "text": "它的 Agent 功能可以建立自動化工作流程，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 110,
      "start": 269.524,
      "end": 273.924,
      "text": "從海量文件中自動提取、分析並總結特定資訊。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 111,
      "start": 273.924,
      "end": 275.924,
      "text": "不過，這麼強大的功能，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 112,
      "start": 275.924,
      "end": 277.763,
      "text": "也代表它有一定的入門門檻。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 113,
      "start": 277.763,
      "end": 280.963,
      "text": "使用者需要對 Docker 和 Docker Compose 有基本的認識，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 114,
      "start": 280.963,
      "end": 284.963,
      "text": "才能順利在自己的環境完成 Self-Hosting 的部署。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 115,
      "start": 285.044,
      "end": 288.643,
      "text": "社群對 RAGFlow 的評價，可以說是非常兩極。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 116,
      "start": 288.643,
      "end": 291.044,
      "text": "一方面，正面的評價非常多，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 117,
      "start": 291.044,
      "end": 293.604,
      "text": "大家最稱讚的就是它的 DeepDoc 模組，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 118,
      "start": 293.604,
      "end": 296.004,
      "text": "處理複雜文件的能力真的太強了。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 119,
      "start": 296.004,
      "end": 297.444,
      "text": "很多技術評測都認為，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 120,
      "start": 297.444,
      "end": 299.843,
      "text": "它在處理真實世界的商業文件，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 121,
      "start": 299.843,
      "end": 301.843,
      "text": "像是掃描 PDF 或財報時，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 122,
      "start": 301.843,
      "end": 304.403,
      "text": "效果遠遠勝過其他的開源方案。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 123,
      "start": 304.403,
      "end": 307.764,
      "text": "加上它提供了一套包含前端介面的完整產品，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 124,
      "start": 307.764,
      "end": 310.004,
      "text": "讓企業導入的門檻大幅降低，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 125,
      "start": 310.004,
      "end": 313.284,
      "text": "甚至被譽為是「最佳自架設 RAG 產品」。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 126,
      "start": 313.363,
      "end": 315.923,
      "text": "然而，負面的聲音也同樣存在。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 127,
      "start": 315.923,
      "end": 319.923,
      "text": "疑慮主要集中在它比較高的部署成本和資源消耗。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 128,
      "start": 319.923,
      "end": 322.243,
      "text": "跟那些輕量的函式庫比起來，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 129,
      "start": 322.243,
      "end": 324.004,
      "text": "RAGFlow 的多容器架構，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 130,
      "start": 324.004,
      "end": 326.484,
      "text": "對個人開發者來說，確實有點重。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 131,
      "start": 326.484,
      "end": 327.764,
      "text": "也有些開發者認為，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 132,
      "start": 327.764,
      "end": 330.004,
      "text": "它的流程設計，在彈性上，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 133,
      "start": 330.004,
      "end": 332.803,
      "text": "還是比不上 LangChain 或 拉馬Index 這些框架。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 134,
      "start": 332.803,
      "end": 335.044,
      "text": "如果我們從一個更宏觀的角度來看，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 135,
      "start": 335.044,
      "end": 336.884,
      "text": "RAGFlow 的出現，其實代表了，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 136,
      "start": 336.884,
      "end": 339.444,
      "text": "RAG 領域一個很重要的思維轉變，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 137,
      "start": 339.444,
      "end": 341.604,
      "text": "那就是，大家優化的重心，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 138,
      "start": 341.683,
      "end": 343.843,
      "text": "開始從後端的提示工程，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 139,
      "start": 343.843,
      "end": 345.123,
      "text": "prompt engineering，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 140,
      "start": 345.123,
      "end": 346.963,
      "text": "轉移到前端的資料擷取",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 141,
      "start": 346.963,
      "end": 347.843,
      "text": "ingestion。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 142,
      "start": 347.843,
      "end": 349.923,
      "text": "它揭示了一個很樸素的真理：",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 143,
      "start": 349.923,
      "end": 351.604,
      "text": "高品質的 AI 輸出，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 144,
      "start": 351.604,
      "end": 354.083,
      "text": "源頭就是高品質的資料輸入。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 145,
      "start": 354.083,
      "end": 356.403,
      "text": "不過，這種對品質的極致追求，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 146,
      "start": 356.403,
      "end": 358.243,
      "text": "也帶來了潛在的風險。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 147,
      "start": 358.243,
      "end": 360.004,
      "text": "它複雜的微服務架構，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 148,
      "start": 360.004,
      "end": 361.444,
      "text": "提高了維運的門檻，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 149,
      "start": 361.444,
      "end": 363.444,
      "text": "對硬體資源的要求也比較高。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 150,
      "start": 363.444,
      "end": 366.164,
      "text": "而且，雖然它用了 gVisor 這種先進技術，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 151,
      "start": 366.164,
      "end": 369.204,
      "text": "但任何允許遠端執行程式碼的功能，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 152,
      "start": 369.204,
      "end": 372.803,
      "text": "本質上都是一個需要持續留意的安全攻擊面。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 153,
      "start": 372.803,
      "end": 374.803,
      "text": "所以，RAGFlow 的真正價值，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 154,
      "start": 374.803,
      "end": 377.683,
      "text": "並不是要取代像 LangChain 這類靈活的函式庫。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 155,
      "start": 377.683,
      "end": 381.284,
      "text": "它的定位，是為那些需要處理真實世界",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 156,
      "start": 381.284,
      "end": 382.884,
      "text": "messy data 的企業，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 157,
      "start": 382.884,
      "end": 384.724,
      "text": "提供一個功能強大、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 158,
      "start": 384.724,
      "end": 385.764,
      "text": "安全可靠，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 159,
      "start": 385.764,
      "end": 387.444,
      "text": "而且開箱即用的，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 160,
      "start": 387.444,
      "end": 388.963,
      "text": "全端 RAG 平台。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 161,
      "start": 388.963,
      "end": 389.843,
      "text": "總結來說，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 162,
      "start": 389.843,
      "end": 391.523,
      "text": "RAGFlow 是一個專為解決",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 163,
      "start": 391.523,
      "end": 393.683,
      "text": "真實世界文件混亂問題而生的「生產級」RAG 引擎。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 164,
      "start": 393.683,
      "end": 395.284,
      "text": "生產級 RAG 引擎。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 165,
      "start": 395.284,
      "end": 396.484,
      "text": "它最大的價值，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 166,
      "start": 396.484,
      "end": 398.884,
      "text": "就是透過深度的文件理解技術，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 167,
      "start": 398.884,
      "end": 401.444,
      "text": "從源頭就提升了輸入資料的品質，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 168,
      "start": 401.444,
      "end": 404.083,
      "text": "進而確保大型語言模型輸出的結果，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 169,
      "start": 404.083,
      "end": 406.243,
      "text": "既可靠又能追溯來源。",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 170,
      "start": 406.243,
      "end": 409.363,
      "text": "所以，如果你正在開發的 AI 應用，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 171,
      "start": 409.363,
      "end": 411.923,
      "text": "需要處理大量複雜的 PDF、",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 172,
      "start": 411.923,
      "end": 413.683,
      "text": "掃描文件或報告，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 173,
      "start": 413.683,
      "end": 416.803,
      "text": "而且你非常重視答案的準確度和可信度，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 174,
      "start": 416.803,
      "end": 417.843,
      "text": "那麼 RAGFlow，",
      "source": "source_caption",
      "timing_uncertain": false
    },
    {
      "id": 175,
      "start": 417.843,
      "end": 419.843,
      "text": "絕對是一個值得你密切關注的專案。",
      "source": "source_caption",
      "timing_uncertain": false
    }
  ]
}
