精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

企業級 RAG 系統實戰:10 個項目踩過的坑(附代碼工程示例)

人工智能
從這篇開始,我會把日常閑暇時觀摩的一些海外優質內容整理和加工后,附上自己的不同觀察和思考也通過文章或者視頻的形式發布出來,給各位做個參考。主要聚焦在 Reddit、Medium、X、Youtube 等平臺。這篇就以 Reddit 上 r/AI_Agents 中一個月前發布的一篇有 905 upvotes 的帖子做個翻譯整理。

25 年以來寫了 55 篇技術 Blog,字數也累計超過 50 萬字。每篇內容背后都是幾十甚至上百個小時的項目工程實踐的經驗提煉,雖然原創性沒話說,但還是產出效率太低,以及也難免受限于個人的經驗和水平。

So,從這篇開始,我會把日常閑暇時觀摩的一些海外優質內容整理和加工后,附上自己的不同觀察和思考也通過文章或者視頻的形式發布出來,給各位做個參考。主要聚焦在 Reddit、Medium、X、Youtube 等平臺。這篇就以 Reddit 上 r/AI_Agents 中一個月前發布的一篇有 905 upvotes 的帖子做個翻譯整理。

圖片

Blog 原地址:https://www.reddit.com/r/AI_Agents/comments/1nbrm95/building_rag_systems_at_enterprise_scale_20k_docs/ 

這篇試圖說清楚:

原帖的中文翻譯(人話版)、原帖中四個工程要點的代碼示例及實際應用建議、以及帖子評論區精華部分的內容節選。

以下,enjoy:

1、原帖子翻譯

企業級 RAG 系統實戰(2萬+文檔):10 個項目踩過的坑

原文來自 Reddit,作者在受監管行業(制藥、金融、法律)為中型企業(100-1000 人)構建了 10+ 個 RAG 系統

過去一年我一直在做企業級 RAG 系統,服務的客戶包括制藥公司、銀行、律所、咨詢公司。說實話,這玩意兒比任何教程說的都難太多了。我想分享一些真正重要的東西,而不是網上那些基礎教程。

先說背景:這些公司手里都有 1 萬到 5 萬份文檔,堆在 SharePoint 或者 2005 年的文檔管理系統里。不是什么精心整理的數據集,也不是知識庫——就是幾十年積累下來的業務文檔,現在需要能被搜索到。

1.1文檔質量檢測:沒人說的關鍵環節

這是我最大的發現。大多數教程都假設你的 PDF 是完美的。現實是:企業文檔就是一坨垃圾。

我有個制藥客戶,他們有 1995 年的研究論文,是打字機打出來再掃描的。OCR 基本不行。還混著現代的臨床試驗報告,500 多頁,里面嵌了各種表格和圖表。你試試對這兩種文檔用同一套分塊策略,保證給你返回一堆亂七八糟的結果。

我花了幾周調試,搞不懂為什么有些文檔效果很差,有些又很好。最后意識到:必須先給文檔質量打分,再決定怎么處理

  • 干凈的 PDF(文本提取完美)→ 完整的層級化處理
  • 一般的文檔(有點 OCR 問題)→ 基礎分塊 + 清理
  • 垃圾文檔(掃描的手寫筆記)→ 簡單固定分塊 + 標記人工復查

我做了個簡單的評分系統,看文本提取質量、OCR 瑕疵、格式一致性,然后根據分數把文檔送到不同的處理流程。

"This single change fixed more retrieval issues than any embedding model upgrade."

這一個改動解決的檢索問題,比升級 embedding 模型管用得多。

1.2固定大小分塊基本是錯的

所有教程都說:"把所有東西切成 512 token,加點重疊就行!"

現實是:文檔是有結構的。研究論文的方法論部分和結論部分不一樣。財報有執行摘要,也有詳細表格。如果無視結構,你會得到切到一半的句子,或者把不相關的概念混在一起。

我必須構建層級化分塊(Hierarchical Chunking),保留文檔結構:

  • 文檔級(標題、作者、日期、類型)
  • 章節級(摘要、方法、結果)
  • 段落級(200-400 tokens)
  • 句子級(用于精確查詢)

核心思路:查詢的復雜度決定檢索的層級。寬泛的問題在段落級檢索。精確的問題比如"表 3 里的劑量是多少?"需要句子級精度。

我用簡單的關鍵詞檢測——像"exact"(精確)、"specific"(具體)、"table"(表格)這些詞會觸發精準模式。如果置信度低,系統會自動下鉆到更精確的分塊。

1.3元數據架構比你的 Embedding 模型更重要

這部分我花了 40% 的開發時間,但 ROI 是最高的。

大多數人把元數據當成事后想起來的東西。但企業查詢的上下文非常復雜。一個制藥研究員問"兒科研究",需要的文檔和問"成人群體"的完全不同。

我為不同領域構建了專門的元數據模式:

制藥文檔:

  • 文檔類型(研究論文、監管文件、臨床試驗)
  • 藥物分類
  • 患者人口統計(兒科、成人、老年)
  • 監管類別(FDA、EMA)
  • 治療領域(心血管、腫瘤)

金融文檔:

  • 時間周期(2023 Q1、2022 財年)
  • 財務指標(收入、EBITDA)
  • 業務部門
  • 地理區域

別用 LLM 提取元數據——它們不靠譜。簡單的關鍵詞匹配效果好得多。查詢里有"FDA"?就過濾 regulatory_category: "FDA"。提到"兒科"?應用患者群體過濾器。

從每個領域 100-200 個核心術語開始,根據匹配不好的查詢逐步擴展。領域專家通常很樂意幫忙建這些列表。

1.4語義搜索失效的時候(劇透:很多)

純語義搜索失效的頻率比大家承認的高得多。在制藥和法律這種專業領域,我看到的失敗率是 15-20%,不是大家以為的 5%。

讓我抓狂的主要失敗模式:

縮寫混淆: "CAR" 在腫瘤學里是"嵌合抗原受體",但在影像論文里是"計算機輔助放射學"。相同的 embedding,完全不同的意思。這讓我頭疼死了。

精確技術查詢: 有人問"表 3 里的確切劑量是多少?"語義搜索會找到概念上相似的內容,但會錯過具體的表格引用。

交叉引用鏈: 文檔之間不斷互相引用。藥物 A 的研究引用了藥物 B 的交互數據。語義搜索完全丟失這些關系網絡。

解決方案: 構建混合方法。用圖層(Graph Layer)在處理時跟蹤文檔關系。語義搜索之后,系統會檢查檢索到的文檔是否有相關文檔有更好的答案。

對于縮寫,我做了上下文感知的擴展,用領域專用的縮寫數據庫。對于精確查詢,關鍵詞觸發會切換到基于規則的檢索來獲取特定數據點。

1.5為什么我選開源模型(具體是 Qwen)

大多數人以為 GPT-4o 或 o3-mini 總是更好。但企業客戶有些奇怪的約束:

  • 成本: 5 萬份文檔 + 每天幾千次查詢,API 費用會爆炸
  • 數據主權: 制藥和金融不能把敏感數據發到外部 API
  • 領域術語: 通用模型會在沒訓練過的專業術語上產生幻覺

Qwen QWQ-32B 在領域微調后效果出奇的好:

  • 比 GPT-4o 便宜 85%(大批量處理)
  • 一切都在客戶基礎設施上
  • 可以在醫療/金融術語上微調
  • 響應時間穩定,沒有 API 限流

微調方法很直接——用領域問答對做監督訓練。創建像"藥物 X 的禁忌癥是什么?"這樣的數據集,配上實際的 FDA 指南答案。基礎的監督微調比 RAFT 這種復雜方法效果更好。關鍵是要有干凈的訓練數據。

1.6表格處理:隱藏的噩夢

企業文檔里到處都是復雜表格——財務模型、臨床試驗數據、合規矩陣。標準 RAG 要么忽略表格,要么把它們提取成非結構化文本,丟失所有關系。

"Tables contain some of the most critical information... If you can't handle tabular data, you're missing half the value."

表格包含了最關鍵的信息。如果處理不好表格數據,你就丟了一半的價值。

財務分析師需要特定季度的精確數字。研究人員需要臨床表格里的劑量信息。

我的方法:

  • 把表格當成獨立實體,有自己的處理流程
  • 用啟發式方法檢測表格(間距模式、網格結構)
  • 簡單表格:轉成 CSV。復雜表格:在元數據中保留層級關系
  • 雙重 embedding 策略:既 embed 結構化數據,也 embed 語義描述

在銀行項目里,到處都是財務表格。還得跟蹤匯總表和詳細分解表之間的關系。

1.7生產基礎設施的現實檢驗

教程假設資源無限、運行時間完美。生產環境意味著并發用戶、GPU 內存管理、穩定的響應時間、運行時間保證。

大多數企業客戶已經有閑置的 GPU 基礎設施——未使用的算力或其他數據科學工作負載。這讓本地部署比預期的容易。

通常部署 2-3 個模型:

  • 主生成模型(Qwen 32B)用于復雜查詢
  • 輕量級模型用于元數據提取
  • 專門的 embedding 模型

盡可能用量化版本。Qwen QWQ-32B 量化到 4-bit 只需要 24GB VRAM,但保持了質量。可以在單張 RTX 4090 上運行,不過 A100 對并發用戶更好。

最大的挑戰不是模型質量——而是防止多個用戶同時訪問系統時的資源競爭。用信號量限制并發模型調用,加上合適的隊列管理。

1.8真正重要的經驗教訓

  1. 文檔質量檢測優先: 不能用同一種方式處理所有企業文檔。先構建質量評估,再做其他事。
  2. 元數據 > embeddings: 元數據不好,檢索就不好,不管你的向量有多棒。花時間做領域專用的模式。
  3. 混合檢索是必須的: 純語義搜索在專業領域失敗太頻繁。需要基于規則的后備方案和文檔關系映射。
  4. 表格很關鍵: 如果處理不好表格數據,就丟失了企業價值的一大塊。
  5. 基礎設施決定成敗: 客戶更在乎可靠性,而不是花哨功能。資源管理和運行時間比模型復雜度更重要。

1.9說點真話

"Enterprise RAG is way more engineering than ML."

企業 RAG 更多是工程,而不是機器學習。

大多數失敗不是因為模型不好——而是低估了文檔處理的挑戰、元數據的復雜性、生產基礎設施的需求。

現在需求真的很瘋狂。每個有大量文檔庫的公司都需要這些系統,但大多數人根本不知道處理真實世界的文檔有多復雜。

反正這玩意兒比教程說的難太多了。企業文檔的各種邊緣情況會讓你想把筆記本扔出窗外。但如果搞定了,ROI 還是很可觀的——我見過團隊把文檔搜索從幾小時縮短到幾分鐘。

2、四個工程要點代碼示例

上面譯文看完可能還不夠直觀,我挑了四個覺得比較重要的工程要點,并結合對應的業界常用的開源組件進行核心代碼邏輯的展示,供各位參考。

2.1文檔質量評分系統

原帖最大的創新點是在處理文檔前先給它打分,根據質量路由到不同 pipeline。作者說這一個改動解決的檢索問題比升級 embedding 模型還多。

核心是識別三種文檔:Clean(80+分)的文檔文本提取完美,可以完整層級化處理;Decent(50-80 分)的文檔有 OCR 瑕疵,需要基礎分塊加清理;Garbage(<50 分)的掃描手寫筆記只能固定分塊并人工復查。

評分維度包括文本提取質量(權重 50%)、格式一致性(30%)和表格完整性(20%),通過采樣前 3 頁來快速評估整個文檔。下面以 PaddleOCR 為例,做個代碼邏輯演示:

from paddleocr import PaddleOCR
import numpy as np

class DocumentQualityScorer:
    def __init__(self):
        self.ocr = PaddleOCR(use_angle_cls=True, lang='ch')
    def score_document(self, pdf_images):
    """對文檔打分并選擇pipeline"""
    scores = []
    for img in pdf_images[:3]:  # 采樣前3頁
        result = self.ocr.ocr(img, cls=True)
        if not result or not result[0]:
            scores.append(0)
            continue

        # 提取置信度
        confidences = [line[1][1] for line in result[0]]
        avg_conf = np.mean(confidences)
        scores.append(avg_conf * 100)

    overall = np.mean(scores)

    # 分類并路由
    if overall >= 80:
        return "clean", CleanPipeline()
    elif overall >= 50:
        return "decent", DecentPipeline()
    else:
        return "garbage", GarbagePipeline()

這段代碼的核心邏輯是采樣前 3 頁圖像進行 OCR,提取每個文本塊的置信度分數(PaddleOCR 會為每個識別的文字塊返回 0-1 的 confidence 值),然后通過平均值轉換為 0-100 的分數。閾值 80 和 50 來自作者在多個項目中總結的經驗值:置信度高于 80%的文檔基本可以認為文本提取完美,50-80%之間有一些瑕疵但可用,低于 50%說明 OCR 質量很差。

只采樣 3 頁而不是全文是因為前幾頁通常能代表整體風格,處理全文太慢(100 頁文檔需要 10+分鐘),實測 3 頁的準確率已經 95%以上。這里用置信度 * 100 是為了將 0-1 的浮點數轉為 0-100 的分數,便于理解和設置閾值。

在實際使用時,建議先在數據集上標注 100 個文檔(人工判斷 Clean/Decent/Garbage),然后跑評分畫散點圖看三類文檔的分數分布,調整閾值讓分類準確率超過 90%。常見的坑是彩色掃描件 OCR 置信度可能很高但實際是垃圾,需要加入"是否為圖片 PDF"的判斷;表格很多的文檔(如財報)會被低估,可以提高表格評分的權重到 30%。性能優化方面,可以改為均勻采樣(第 1 頁、中間頁、最后頁各 1 頁)來提高代表性,多頁圖像可以并行 OCR 加速處理,同一文檔的評分結果應該緩存避免重復計算。

2.2層級化分塊策略

原帖批判了"固定 512 token 分塊"的做法,提出 4 層結構:Document(2048 tokens)→ Section(1024 tokens)→ Paragraph(512 tokens)→ Sentence(128 tokens)。關鍵洞察是查詢復雜度應該決定檢索層級:寬泛問題如"這篇講什么"適合段落級或章節級檢索,精確問題如"表 3 第 2 行是多少"需要句子級定位。每一層都生成獨立的 embedding 存儲在向量數據庫,檢索時根據查詢特征自動選擇合適的層級,從而避免大海撈針的問題。下面以 LlamaIndex 為例進行演示:

from llama_index.core.node_parser import HierarchicalNodeParser
from llama_index.core import Document

class AdaptiveRetriever:
    def __init__(self):
        self.parser = HierarchicalNodeParser.from_defaults(
            chunk_sizes=[2048, 1024, 512, 128]
        )
        self.precision_keywords = ['exact', 'table', 'figure', '表', '圖', '第']

    
    def retrieve(self, query, doc_text, vector_store):
    """層級化分塊并自適應檢索"""
    # 生成4層節點
    doc = Document(text=doc_text)
    nodes = self.parser.get_nodes_from_documents([doc])

    # 判斷查詢類型選擇層級
    has_precision = any(kw in query.lower() for kw in self.precision_keywords)
    word_count = len(query.split())

    if has_precision:
        level = 'sentence'
    elif word_count > 15:
        level = 'section'
    else:
        level = 'paragraph'

    return vector_store.search(query, filter={'layer': level}, top_k=5)

HierarchicalNodeParser 會根據 chunk_sizes 參數自動將文檔切分成 4 層,每層的大小是近似值而不是嚴格限制,因為切分時會保持語義邊界完整。參數[2048, 1024, 512, 128]適合英文,中文建議調整為[3000, 1500, 600, 150]因為中文信息密度更高。

查詢路由的邏輯是:如果包含精確關鍵詞(table、figure、第 X 章等)就用句子級,如果查詢很長(超過 15 個詞)說明是復雜概念問題就用章節級,否則默認段落級。這個啟發式規則來自原帖討論區的經驗,實測準確率在 85%左右。層級存儲在 vector_store 時通過 metadata 的 layer 字段區分,檢索時用 filter 過濾只在對應層級搜索。

實際使用時不是每次查詢都需要 4 層,大部分情況 paragraph 層足夠用,可以先在 paragraph 層檢索,如果置信度低再下鉆到 sentence 層做二次檢索。document 層主要用于"文檔級"問題如"這篇講什么"或生成摘要。

特殊文檔類型需要特別處理:表格和代碼塊應該提前提取單獨 chunk 避免被切碎,標題要合并到后續內容而不是單獨成 chunk,列表要保持完整性不在中間切斷。性能優化方面,chunk_sizes 的 overlap 建議設置為 size 的 5-10%來防止切斷完整語義,太大浪費存儲太小丟失上下文。對于技術文檔(代碼多)可以用更大的 chunk 如[4096, 2048, 1024, 256]。

2.3混合檢索問題

原帖指出純語義搜索在專業領域失敗率 15-20%,需要三路并行:語義檢索(向量相似度)理解語義但可能漏掉精確匹配,關鍵詞檢索(BM25)精確匹配但不理解同義詞,元數據過濾(結構化字段)過濾無關文檔。然后用 RRF(Reciprocal Rank Fusion)算法融合結果,公式是對于文檔 d 在結果列表中的排名 rank_d,融合分數等于各路結果的權重除以(60 + rank_d)之和。常數 60 是 RRF 標準參數,用于平衡頭部和尾部結果,權重一般設置為語義 0.7、關鍵詞 0.3,具體場景可調整。以 Qdrant 為例做個代碼示例:

from qdrant_client import QdrantClient

class HybridRetriever:
    def __init__(self):
        self.client = QdrantClient("localhost", port=6333)
    def search(self, query, top_k=10):
    """三路檢索 + RRF融合"""
    # 語義檢索(dense vector)
    semantic = self.client.search(
        collection_name="docs",
        query_vector=("dense", embed(query)),
        limit=top_k * 2
    )

    # 關鍵詞檢索(sparse vector)
    keyword = self.client.search(
        collection_name="docs",
        query_vector=("sparse", extract_keywords(query)),
        limit=top_k * 2
    )

    # RRF 融合
    scores = {}
    for rank, r in enumerate(semantic, 1):
        scores[r.id] = scores.get(r.id, 0) + 0.7 / (60 + rank)
    for rank, r in enumerate(keyword, 1):
        scores[r.id] = scores.get(r.id, 0) + 0.3 / (60 + rank)

    # 排序返回
    return sorted(scores.items(), key=lambda x: x[1], reverse=True)[:top_k]

Qdrant 支持在同一文檔上同時存儲 dense 和 sparse 兩種向量,dense 是傳統的語義 embedding(如 OpenAI、BGE),sparse 是關鍵詞的稀疏表示類似 BM25 的詞頻向量。RRF 融合算法的核心是用排名的倒數而不是原始分數來融合,這樣可以處理不同檢索器分數尺度不統一的問題。權重 0.7 和 0.3 是通用場景的經驗值(語義為主),精確查詢多的場景可以設為 0.5/0.5 均衡,概念查詢多可以設為 0.8/0.2 更偏語義。limit 設為 top_k * 2 是因為融合后會有重復,多取一些保證最終有足夠結果。元數據過濾(如 doc_type='clinical_trial')應該在數據庫層面用 Filter 實現而不是在應用層過濾,性能更好。

混合檢索在專業術語多的領域(醫療、法律、金融)是必須的,純語義搜索會漏掉縮寫、代號、產品型號等精確匹配。用戶查詢包含需要精確匹配的內容(如法規編號、技術規格)時也必須啟用。但通用聊天場景可選,純語義已經夠用,開啟混合檢索會增加 20-30%延遲。性能優化方面,三路檢索可以并行執行減少延遲,高頻查詢的結果應該緩存。

在實踐中建議通過 A/B 測試來調整權重:記錄用戶點擊率,看哪個權重組合的 top3 點擊率最高。如果你的文檔有豐富的元數據(如時間、類別、作者),元數據過濾能顯著提升準確率,例如"2024 年兒科臨床試驗"這種查詢,先用元數據過濾掉無關文檔再做語義檢索。

2.4置信度驅動的智能路由

來自原帖討論區的具體參數:0.7 相似度閾值加上 20-30 個觸發詞。邏輯是初始用段落級檢索獲得最高分數,如果高置信度(大于 0.85)說明段落級足夠,如果中置信度(0.7-0.85)且包含精確關鍵詞就切換到句子級,如果低置信度(0.5-0.7)就下鉆到句子級細粒度檢索,如果極低置信度(小于 0.5)就降級到關鍵詞搜索兜底。這是一個簡單但有效的"智能路由",避免所有查詢都用同樣粒度檢索,既節省計算又提高準確率。以下是純 python 的實現示例:

class ConfidenceRouter:
    def __init__(self):
        self.precision_kw = ['exact', 'table', 'figure', '表', '圖', '第']
        self.high_conf = 0.85
        self.med_conf = 0.70
        self.low_conf = 0.50
    def route(self, query, search_engine):
    """置信度驅動的檢索路由"""
    # 初始檢索(段落級)
    initial = search_engine.search(query, level='paragraph', top_k=10)
    if not initial:
        return []

    max_score = max(r.score for r in initial)
    has_precision = any(kw in query.lower() for kw in self.precision_kw)

    # 決策
    if max_score >= self.high_conf:
        return initial  # 高置信度,段落級足夠
    elif max_score >= self.med_conf:
        if has_precision:
            return search_engine.search(query, level='sentence', top_k=10)
        return initial
    elif max_score >= self.low_conf:
        return search_engine.search(query, level='sentence', top_k=10)
    else:
        return search_engine.keyword_search(query, top_k=10)  # 兜底

閾值 0.85/0.7/0.5 來自原帖討論區作者在多個項目中驗證的經驗值,這些數字在實際項目中肯定不是拍腦袋定的,而是要通過標注數據找出的準確率突變點。精確關鍵詞列表有 20-30 個詞,包括 exact、table、figure 以及中文的"表、圖、第"等,還可以用正則匹配"表 3"、"第 5 章"這種模式。決策邏輯是先用段落級試探,根據最高分數和是否有精確詞來決定是否需要更細粒度,這樣大部分查詢(約 70%)在段落級就能解決,只有 30%需要下鉆到句子級或降級到關鍵詞。降級到關鍵詞搜索是兜底策略,雖然粗糙但總比返回空結果好,在語義搜索完全失敗時至少能匹配到一些相關詞。

實際使用的時候,建議在數據上標注 100 個左右查詢,畫出相似度分數的分布圖,找到準確率突變點來設置閾值,不要直接照搬 0.7/0.85 這些數字。精確關鍵詞列表需要持續維護,從 bad case 中收集(用戶重新搜索說明上次結果不滿意),定期 review 刪除誤判率高的詞,也可以用 TF-IDF 找領域特有的精確詞。

建議記錄詳細日志包括 query、max_score、選擇的 strategy(paragraph/sentence/keyword)、has_precision_kw 以及用戶點擊率,通過日志分析持續優化閾值和觸發詞。A/B 測試時可以對比不同閾值組合的 top3 點擊率,選擇表現最好的。常見問題是閾值設置過高導致過多下鉆到句子級增加延遲,或設置過低導致很多查詢在段落級就返回但準確率不夠,需要根據業務場景平衡準確率和性能。

3、技術問答討論

原帖已經信息密度很高,但評論區里藏著更多實戰細節。我從 108 條討論中精選了 17 條核心問答,涵蓋以下四大主題:

技術實現細節:為什么 VLM 處理 PDF 比 HTML 轉換更靠譜、小模型 7B-13B 能干什么不能干什么、遞歸搜索怎么實現和觸發、10-20 頁文檔全文讀 vs 分塊檢索的選擇標準;

成本和性能數據:GPT-4o vs Qwen 的詳細成本計算、H100 上跑 Qwen 32B 的真實性能數據、A100 部署成本和選型理由;

商業模式和團隊運作:60-70%代碼復用率怎么做到;2 人團隊如何服務 10+企業客戶、如何找客戶和合作伙伴模式、授權許可 vs 定制開發的商業模式)

以及重要的澄清和補充:元數據提取 LLM vs 規則的使用邊界、混合檢索的自動選擇挑戰、法律和工程領域從業者的跨行業驗證)。

這些帖子評論區內容我做了完整翻譯、提煉要點、補充國內場景對照,并標注實用性,放在知識星球中作為會員專屬資料,感興趣的也可以自行去看原帖。

為了直觀期間,看個例子,討論區第 6 條關于成本對比的節選:

圖片圖片

評論:

你說 Qwen 比 GPT-4o 便宜 85%。我也在做類似項目想評估成本。GPT-4o 大概每月多少錢?

作者回答:

GPT-4o 價格是輸入$2.50/百萬 tokens、輸出$10.00/百萬 tokens。典型企業 RAG 場景,假設首次處理 5 萬文檔(一次性 embedding),每月 1 萬次查詢,平均每次 1K 輸入、500 輸出。GPT-4o 成本: 初始 embedding 約$125,月度查詢約$100($75 輸入+$25 輸出),總計中等使用量每月$200-300+,規模上去后快速增長。Qwen QWQ-32B 成本: 輸入$0.15-0.50/百萬 tokens、輸出$0.45-1.50/百萬 tokens(Groq 報價$0.29 輸入/$0.39 輸出),同樣工作量:初始 embedding 約$15-25,月度查詢約$15-20,總計每月$30-50,而不是$200-300+。這就是 85%成本節省的來源。

作者直接給出了完整的公式和每個環節的費用拆解,包括具體的 token 價格、使用量假設和總成本計算,這些實際項目中可以直接拿來做預算。類似這樣有具體數字、可落地的實戰經驗,在 17 條精華問答里還有很多。

4、寫在最后

帖子作者說"企業 RAG 是 70% 工程 + 20% 領域知識 + 10% 模型",我深表認同,但想再加一個維度:企業 RAG = 70% 工程 + 20% 領域知識 + 10% 模型 + ∞ 耐心。

畢竟,企業 RAG 不是一個純技術問題,對行業的理解、對臟數據的處理能力、對工程細節的把控,都是繞不開的必修課。

責任編輯:龐桂玉 來源: 韋東東
相關推薦

2025-07-03 06:39:16

2024-04-01 08:05:27

Go開發Java

2024-06-26 10:37:05

2024-05-06 00:00:00

緩存高并發數據

2023-02-15 18:12:43

開發企業級CLI

2025-04-29 10:17:42

2017-07-17 15:46:20

Oracle并行機制

2024-12-30 09:12:17

2014-11-24 10:33:32

Windows 10

2025-04-21 04:50:00

2025-02-13 09:01:03

2018-01-10 13:40:03

數據庫MySQL表設計

2015-03-24 16:29:55

默認線程池java

2025-11-06 02:55:00

2010-11-11 09:54:31

2023-03-29 07:49:05

企業級項目研發

2013-03-28 09:35:31

企業級系統

2011-05-19 10:57:47

架構

2020-07-31 07:45:43

架構系統企業級
點贊
收藏

51CTO技術棧公眾號

国产欧美一区二区三区四区| 波多野结衣在线aⅴ中文字幕不卡| 亚洲色图第一页| 日本 片 成人 在线| 成人在线免费看片| av中文字幕亚洲| 国产日韩av在线播放| 国产真实乱偷精品视频| 欧美亚洲国产一区| 亚洲福利在线观看| 色噜噜狠狠永久免费| 波多野结衣精品| 国产精品乱子久久久久| 国产区日韩欧美| 亚洲字幕av一区二区三区四区| 欧美日韩亚洲一区在线观看| 在线播放日韩专区| 成熟妇人a片免费看网站| 992tv国产精品成人影院| 亚洲一区二区三区精品在线| 午夜欧美性电影| 少妇高潮一区二区三区69| 九色porny丨国产精品| 69久久夜色精品国产69| 国产黄在线免费观看| 久久精品国产亚洲5555| 欧美一级欧美三级| 北条麻妃av高潮尖叫在线观看| 福利写真视频网站在线| 国产精品久久久久三级| 欧美日韩在线精品| 亚洲精品久久久久久久久久| 另类调教123区| 日本91av在线播放| 国产精品18p| 亚洲深深色噜噜狠狠爱网站| 中文字幕欧美在线| 精品国产无码在线观看| 91蝌蚪精品视频| 亚洲久草在线视频| 四虎影视永久免费在线观看一区二区三区| 国产成人无码www免费视频播放| 紧缚奴在线一区二区三区| 国产精品爱久久久久久久| 久久久国产精品成人免费| 欧美午夜精品| 欧美激情国产精品| 呦呦视频在线观看| 日韩一区免费| 日韩欧美国产三级电影视频| 亚洲一区二区三区四区精品 | 国产+人+亚洲| 久草视频中文在线| 国自产拍偷拍福利精品免费一| 九九视频这里只有精品| 欧美成人一二三区| 狠狠入ady亚洲精品经典电影| 欧美夫妻性视频| 麻豆视频在线观看| 亚洲激情视频| 国产亚洲在线播放| 无码少妇精品一区二区免费动态| 久久99免费视频| 欧美电影一区二区| 欧美成人一区二区在线观看| 岛国av免费在线观看| 红桃av永久久久| 亚洲成人动漫在线| 香蕉视频国产在线| 91老司机福利 在线| 91丝袜美腿美女视频网站| 国产精品无码在线播放| 国产成人午夜精品影院观看视频| 国产精品久久久久久久小唯西川| 人妻中文字幕一区| 久久综合久久久久88| 日韩视频在线播放| 国产网站在线免费观看| 亚洲成人动漫在线观看| 国产97色在线 | 日韩| 亚洲91在线| 精品免费99久久| aaaaaav| 美女日韩一区| 欧美三电影在线| 久久久久久国产精品日本| 国产日韩欧美一区二区| 国产精品人人爽| 成人晚上爱看视频| 国产精品高精视频免费| 国产又粗又黄又爽| 99精品视频在线观看| 91av免费看| 你懂的视频在线免费| 中文在线一区二区| 福利视频一二区| 久久亚洲人体| 亚洲国产精品一区二区三区| 天天舔天天操天天干| 欧美日韩一区自拍| 国产精品嫩草影院久久久| 日韩黄色一级大片| 激情久久久久久| 国产精品黄视频| 丰满岳乱妇国产精品一区| 国产日产精品1区| 国产欧美丝袜| 日韩精品成人av| 精品国产老师黑色丝袜高跟鞋| 一区二区三区视频在线观看免费| 蜜桃视频www网站在线观看| 欧美性xxxxx极品少妇| 精品国产乱码久久久久夜深人妻| 精品视频免费在线观看| 久久久久久成人精品| 在线观看亚洲一区二区| 91亚洲男人天堂| 毛片在线视频观看| 手机av免费在线| 欧美性受xxxx黑人xyx性爽| 无码一区二区精品| 欧美日韩一区二区三区四区在线观看| 国产精品久久久久久久久久久新郎 | 91免费精品国偷自产在线| 天堂在线中文资源| 99在线精品观看| 亚洲一区 在线播放| 在线国产成人影院| 亚洲精品中文字幕有码专区| 久久久久久九九九九九| 激情久久久久久| 亚洲自拍高清视频网站| 麻豆视频在线观看免费网站| 欧美影院精品一区| 公侵犯人妻一区二区三区| 亚洲精品偷拍| 国产私拍一区| aa级大片免费在线观看| 精品乱人伦小说| 九九视频免费观看| 国产成人午夜精品影院观看视频| 国风产精品一区二区| 视频欧美一区| 久久人人97超碰精品888| 成人高潮片免费视频| 亚洲精品视频一区| 欧美性猛交xx| 日本一区二区在线观看视频| japanese色系久久精品| 欧美大片免费看| www.超碰在线.com| 一个色综合网站| 国产人妖在线观看| 欧美天天在线| 国产在线观看一区| 小早川怜子影音先锋在线观看| 亚洲第一福利网| 看片网址国产福利av中文字幕| 99re热这里只有精品免费视频| 国产午夜福利在线播放| 美女亚洲一区| 国产中文欧美精品| 色屁屁www国产馆在线观看| 精品精品欲导航| 国产做受高潮漫动| 久久久.com| 一区二区免费av| 欧美精品97| 狠狠色狠狠色综合人人| 欧美成熟毛茸茸| 色综合久久久久综合体桃花网| 一级肉体全黄裸片| 九九九久久久精品| 国产情侣第一页| 九九综合九九| 成人av.网址在线网站| av黄色在线| 日韩精品亚洲视频| 伊人22222| 亚洲综合色自拍一区| 精品人妻一区二区三区香蕉| 日韩精品国产欧美| 成人毛片100部免费看| 欧美一区二区三区红桃小说| 国产精品吴梦梦| 日本高清成人vr专区| 国产视频久久久| 国产又粗又猛又爽又黄91| 亚洲第一成人在线| a资源在线观看| 岛国一区二区三区| 国产福利影院在线观看| 国内久久视频| 亚洲激情图片| 久久97精品| 成人精品视频久久久久| 漫画在线观看av| 日韩亚洲欧美成人| 日本韩国精品一区二区| 日韩一区二区三区视频在线观看| 免费在线不卡视频| 亚洲免费伊人电影| 国产传媒国产传媒| 成人永久免费视频| 91视频这里只有精品| 欧美专区一区二区三区| 国产私拍一区| 99er精品视频| 日韩免费高清在线观看| 日韩a在线观看| 日韩视频免费观看高清完整版 | 91黄色免费看| 国产精品成人aaaa在线| 亚洲视频 欧洲视频| 无码国产69精品久久久久同性| 欧美大喷水吹潮合集在线观看| 欧美日韩国产亚洲一区| 翔田千里亚洲一二三区| 美国一区二区| 99久久无色码| www.成人| 国产精品久久久久久久久免费| 波多野结衣乳巨码无在线观看| 久久亚洲精品一区二区| 69久久久久| 亚洲欧洲xxxx| 色资源在线观看| 亚洲电影免费观看高清| 亚洲精品福利网站| 日韩一区二区三区av| 97精品人妻一区二区三区香蕉 | 国产又大又粗又长| 欧美性一区二区| 国产精品成人久久久| 色综合久久中文字幕| 亚洲婷婷综合网| 欧美性猛交xxxx免费看漫画| 91精品国产乱码久久久张津瑜| 亚洲国产一区二区三区| 精品在线视频免费观看| 亚洲制服欧美中文字幕中文字幕| 麻豆精品一区二区三区视频| 亚洲色图一区二区三区| 中文字幕av播放| 椎名由奈av一区二区三区| 91视频最新网址| 中文字幕一区不卡| 久久精品日韩无码| 成人免费一区二区三区视频| 麻豆网址在线观看| 久久精品国产99国产精品| 色诱视频在线观看| 日韩精品国产欧美| 五月激情婷婷在线| 国产精品一区二区免费不卡 | 久久久国产欧美| 蜜臀av性久久久久av蜜臀妖精| 天天色综合天天色| 精品一区二区三区久久| 九色91porny| 波多野结衣视频一区| 国产又爽又黄无码无遮挡在线观看| 久久黄色网页| 毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 亚洲一区二区三区久久久| 亚洲综合中文字幕在线观看| 一区二区免费| 久久久久久九九九九| 精品一区不卡| 国内外成人激情免费视频| 亚洲视频高清| 农村妇女精品一二区| 蜜臀91精品一区二区三区| 日本高清免费在线视频| 成人黄色小视频在线观看| 右手影院亚洲欧美| 亚洲欧美在线视频观看| 国产大片aaa| 欧美亚洲免费在线一区| 国产欧美一级片| 亚洲大尺度美女在线| а天堂8中文最新版在线官网| 不卡av电影院| 成人性生交大片免费观看网站| 国产自产女人91一区在线观看| 午夜日韩影院| 手机成人在线| 91久久亚洲| 国产免费视频传媒| 国产精品一区二区三区乱码| 91中文字幕永久在线| 亚洲精品国产成人久久av盗摄| 黄色在线观看国产| 亚洲激情自拍视频| 国产成人在线视频观看| 欧美精品乱码久久久久久| 手机看片福利在线| 久久精品国产精品亚洲| 欧美大片免费观看网址| 97久久夜色精品国产九色| 国产成人三级| 国产成人永久免费视频| 玖玖国产精品视频| 国产99久久九九精品无码| 久久99精品一区二区三区| 香港三级日本三级| 中文字幕佐山爱一区二区免费| 在线视频一区二区三区四区| 欧美一二三在线| 91伦理视频在线观看| 26uuu日韩精品一区二区| 91精品国产自产在线丝袜啪 | 国产精品毛片在线看| 香蕉视频xxxx| 中文字幕一区二区三区在线观看 | 美女精品在线观看| 国产av一区二区三区传媒| 中文字幕日本不卡| 最新中文字幕在线观看视频| 日韩电影在线观看中文字幕 | 国产精品久久久久免费a∨| 久久久久观看| 日韩精品在线中文字幕| 国产一区二区久久| 国产精品麻豆免费版现看视频| 色综合久久综合网欧美综合网 | 日韩中文字幕免费看| 免费成人美女女| 麻豆成人av| 国产欧美69| 久久久久国产精品区片区无码| 亚洲国产一区二区视频| 亚洲av综合色区无码一二三区| 久久精品国产精品| 亚洲国产91视频| 自拍另类欧美| 国内精品免费在线观看| 永久av免费网站| 欧美精品三级日韩久久| 久热国产在线| 成人网中文字幕| 天天射综合网视频| 伊人免费视频二| 亚洲免费在线视频| www.爱爱.com| 高清在线视频日韩欧美| 日本欧美高清| 成人3d动漫一区二区三区| 国产清纯在线一区二区www| 中文区中文字幕免费看| 日韩在线观看免费高清完整版| 欧美综合影院| 久久综合久久久久| 成人av影院在线| 六月丁香激情综合| 国产亚洲精品久久久久动| 91九色综合| 老汉色影院首页| 粉嫩一区二区三区性色av| 久久久精品免费看| 亚洲人成绝费网站色www| 成人在线视频播放| 波多野结衣三级在线| 亚洲激情二区| 亚洲av无码一区二区三区人| 欧美色网一区二区| jizz性欧美10| 国产自产精品| 日日摸夜夜添夜夜添亚洲女人| 99热6这里只有精品| 日韩欧美国产麻豆| 中文字幕乱码在线播放| 亚洲免费视频一区| 国产mv日韩mv欧美| 欧美一区二区三区四| 最近2019年中文视频免费在线观看| 精品国产18久久久久久二百| 国产伦精品一区二区三区四区视频_ | 日韩欧美在线中文字幕| av网页在线| 成人在线免费网站| 久久最新视频| 欧美成人手机视频| 国产亚洲精品高潮| 91免费精品国偷自产在线在线| 日韩一级片播放| 亚洲狼人国产精品| 久久精品蜜桃| 电影午夜精品一区二区三区| 日韩二区三区四区| 国产亚洲精品码| 国产一区二区免费| 99a精品视频在线观看| 韩国中文字幕av| 亚洲国产裸拍裸体视频在线观看乱了| 国产一区精品| 国产一区免费| 精品一区二区三区影院在线午夜| 成人午夜视频精品一区| 久久天天躁狠狠躁夜夜躁|