成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

RAGFlow自動化腳本套件:自定義解析+回答質量評估+參數自動調優

人工智能
之前文章里詳細介紹了 RAGFlow 的 Python api 用法,今天結合幾篇法律法規文檔來給大家做個簡單演示,拋磚引玉。這篇主要介紹三個腳本示例,分別是:數據處理與系統配置,系統測試,參數優化腳本。

最近 MCP(大模型上下文協議)比較火,花了點時間研究了下和 RAG 的協作架構,后續整理出心得后再發出。

言歸正傳,之前文章里詳細介紹了 RAGFlow 的 Python api 用法,今天結合幾篇法律法規文檔來給大家做個簡單演示,拋磚引玉。這篇主要介紹三個腳本示例,分別是:數據處理與系統配置,系統測試,參數優化腳本。這套自動化腳本相比 RAGFlow 的 Web 界面提供了三個關鍵優勢:

自動化與效率:將需要人工數小時完成的操作縮減為幾分鐘的全自動流程

系統化與可重復:確保測試和優化過程的客觀性、系統性和可重復性

可編程與可擴展:可以根據具體需求調整配置、測試方法和優化策略

這種類型的腳本可以被視為 RAGFlow 的"增強配套工具",通過代碼方式擴展了基礎平臺的能力,做深度業務場景適配時會靈活些。

1、數據處理與系統配置腳本

圖片

1.1相比 web 界面優勢

自動化流程處理

一鍵式配置:從數據集創建、文檔上傳到聊天助手配置的全流程自動化

批量處理能力:可以一次性處理整個目錄的文檔

流程控制:自動等待文檔解析完成后再創建聊天助手,確保流程順序合理

靈活性與可定制性

靈活參數調整:可以在代碼中直接調整各種參數而無需在界面中逐一點擊

條件處理:可以添加邏輯判斷,根據不同情況執行不同操作

錯誤處理:內置錯誤處理機制,出現問題時提供更詳細的信息

可復用性

環境復制:可以在不同環境中復用相同的配置腳本

版本控制:配置可以納入代碼版本控制系統,便于跟蹤變更

標準化部署:確保不同實例使用完全相同的配置

集成能力

可與其他系統集成:作為更大工作流的一部分

計劃任務:可以作為定時任務自動運行

與測試腳本銜接:可與測試腳本無縫銜接,自動完成配置和測試

1.2目前實現的靈活配置

數據集配置:

自定義數據集名稱和描述

配置使用的嵌入模型(BAAI/bge-m3)

使用專為法律文檔設計的分塊方法(chunk_method="laws")

文檔處理:

支持多種文檔格式(docx, doc, pdf, txt)的自動處理

批量上傳文檔

異步解析文檔并監控進度

聊天助手配置:

自定義助手名稱

關聯到創建的法律法規數據集

1.3可添加的其他配置選項

數據集高級配置

def create_legal_dataset(rag_object, dataset_name="法規知識庫"):
    # 添加更多高級配置
    dataset = rag_object.create_dataset(
        name=dataset_name,
        descriptinotallow="包含生物安全法等法律法規文檔",
        embedding_model="BAAI/bge-m3",
        chunk_method="laws",
        permissinotallow="team",  # 設置為團隊可訪問
        parser_cnotallow={
            "raptor": {"user_raptor": False}
        }  # 為法律文檔添加特定的解析器配置
    )
    return dataset

文檔元數據配置

def upload_documents_with_metadata(dataset, docs_path):
    documents = []
    for filename in os.listdir(docs_path):
        if filename.endswith(('.docx', '.doc', '.pdf', '.txt')):
            file_path = os.path.join(docs_path, filename)
            with open(file_path, "rb") as f:
                blob = f.read()
                # 添加元數據
                documents.append({
                    "display_name": filename,
                    "blob": blob,
                    "meta_fields": {
                        "法律類型": "行政法規" if "條例" in filename else "法律",
                        "頒布年份": filename.split("(")[1].split(")")[0] if "(" in filename else "未知",
                        "效力級別": "國家級"
                    }
                })
    dataset.upload_documents(documents)

文檔解析自定義配置

def customize_document_parsing(dataset, doc_ids):
    # 獲取文檔并更新解析配置
    for doc_id in doc_ids:
        docs = dataset.list_documents(id=doc_id)
        if docs:
            doc = docs[0]
            # 更新文檔解析配置
            doc.update({
                "chunk_method": "laws",
                "parser_config": {
                    "raptor": {"user_raptor": True}
                }
            })
    # 然后解析文檔
    dataset.async_parse_documents(doc_ids)

聊天助手高級配置

def create_legal_assistant(rag_object, dataset_id, assistant_name="法規助手"):
    # 創建具有高級配置的聊天助手
    assistant = rag_object.create_chat(
        name=assistant_name,
        dataset_ids=[dataset_id],
        llm={
            "model_name": "deepseek-ai/DeepSeek-R1-Distill-Qwen-32B",
            "temperature": 0.1,
            "top_p": 0.3,
            "presence_penalty": 0.2,
            "frequency_penalty": 0.7,
            "max_token": 1024
        },
        prompt={
            "similarity_threshold": 0.2,  # 設置相似度閾值
            "keywords_similarity_weight": 0.7,  # 關鍵詞相似度權重
            "top_n": 8,  # 檢索topN文檔
            "rerank_model": "BAAI/bge-reranker-v2-m3",  # 使用重排序模型
            "prompt": """你是一位專業的法律顧問,精通中國法律法規,尤其是生物安全法等相關法規。
請基于檢索到的法律條文,準確回答用戶的問題。
回答時請:
1. 引用具體的法律條款編號
2. 解釋法律條文的含義
3. 如有必要,說明條文之間的關聯
4. 保持客觀,不要添加個人觀點
5. 如果檢索結果不足以回答問題,請明確說明
{knowledge}
"""
        }
    )
    return assistant

多數據關聯與權限管理

def setup_multiple_datasets(rag_object):
    # 創建多個專題數據集
    datasets = []
    topics = ["生物安全法", "傳染病防治法", "野生動物保護法"]
    
    for topic in topics:
        dataset = rag_object.create_dataset(
            name=f"{topic}知識庫",
            descriptinotallow=f"專門針對{topic}的法律法規解析",
            embedding_model="BAAI/bge-m3",
            chunk_method="laws",
            permissinotallow="team"  # 團隊共享
        )
        datasets.append(dataset)
    
    # 創建綜合法律助手,關聯所有數據集
    dataset_ids = [dataset.id for dataset in datasets]
    assistant = create_legal_assistant(rag_object, dataset_ids, "綜合法律法規顧問")
    
    return datasets, assistant

上述這些高級配置可以根據實際需求進行組合和調整,不必拘泥于我的寫法

2、系統測試腳本

自動生成不同類型的測試問題、收集系統回答、使用大模型評估回答質量、生成詳細評估報告。

支持四種典型法律問題類型(直接引用類、概念解釋類、場景應用類、跨條款關聯類)的系統化測試。相比 Web 界面提供了更加好全面、客觀的自動化測試與評估工具。

圖片

2.1測試問題分類

設計了四種類型的測試問題:

直接引用類:詢問特定條款的內容

概念解釋類:詢問法律中的概念定義

場景應用類:提出實際場景,詢問適用的法律條款

跨條款關聯類:需要綜合多個條款回答的問題

圖片

圖片

2.2評估指標

從五個維度評估回答質量:

準確性:回答是否引用了正確的法律條款

完整性:是否包含了所有相關條款

解釋質量:對法律條文的解釋是否清晰、準確

引用格式:是否正確引用了條款編號

總體評分:綜合以上幾點的總體評價

圖片

3、參數優化腳本

自動測試多種參數組合、創建臨時測試助手、評估每種組合的性能、識別最佳配置方案。具體來說,大家可以試下初步探索相似度閾值、關鍵詞權重、返回文檔數量等不同的組合效果。

Web 界面相對而言,只能手動調整一組參數后進行主觀評估,而使用這種類型的腳本可以自動比較多組參數效果。需要說明的是,這里列出的參數優化方案只是示例,大家可以根據具體業務需求進行靈活調整。

圖片

使用網格搜索方法,測試不同參數組合:

相似度閾值:[0.1, 0.15, 0.2, 0.25]

關鍵詞權重:[0.6, 0.7, 0.8, 0.9]

返回條文數量:[8, 10, 12, 15]

圖片

4、其他

除了上述提到的參考技巧外,還可以測試不同的嵌入模型和重排序模型,以及結合自動評估和人工評估。

Anyway,設計一個符合特定文檔結構特點以及業務目標的腳本組合,總是多快好省的。

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

2011-08-25 09:33:25

MySQL運維

2014-03-11 11:10:10

PowerShell自動化腳本

2020-12-09 10:15:52

智能自動化數字化轉型自動化

2017-12-17 21:58:18

2022-02-10 12:04:45

網絡安全自動化

2023-05-08 15:36:50

模型AI

2010-03-04 10:56:52

JVM參數

2021-07-14 13:11:02

papermillJupyterPython

2024-05-13 16:29:56

Python自動化

2011-04-18 13:45:59

自動化測試測試管理

2011-05-31 17:35:45

測試自動化QTP

2022-04-08 09:05:53

Arch LinuxLinux

2009-12-15 17:28:11

Ruby自動化腳本框架

2014-03-11 11:03:17

自動化腳本PowerShell

2023-03-07 08:30:09

MCube模板緩存

2016-12-20 16:47:25

Hadoop部署腳本

2016-09-27 23:31:23

2017-03-03 09:10:09

2018-07-13 06:46:35

數據中心自動化微服務

2023-08-25 15:44:16

自動化測試軟件開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美女黄18岁以下禁止观看 | 日本大香伊一区二区三区 | 久久国产婷婷国产香蕉 | 国产日韩欧美精品 | 韩国成人在线视频 | 免费在线性爱视频 | 91 中文字幕 | 情侣av| 日韩视频在线观看中文字幕 | 又爽又黄axxx片免费观看 | 久久精品欧美视频 | 亚洲网在线 | 欧美日韩a | 在线视频亚洲 | 日韩精品一区二区三区在线观看 | 黄免费看 | 精品蜜桃一区二区三区 | 99精品国产一区二区三区 | 麻豆久久久久久 | 美女视频一区二区三区 | 中文字幕 欧美 日韩 | 91 在线| 91九色在线观看 | 一区二区三区四区在线视频 | 日韩欧美亚洲 | 91精品一区二区三区久久久久久 | 国产aa| 久久久久久久一区 | 日本爱爱视频 | 人人鲁人人莫人人爱精品 | 日韩www | 日韩av高清 | 99精品视频在线 | 四虎在线观看 | 一本一道久久a久久精品综合蜜臀 | 亚洲视频一区 | 91国在线观看 | 欧美二区三区 | 成人免费久久 | 日韩电影免费在线观看中文字幕 | 性色在线 |