# Customized QA-pair ## 教育雲資料轉換 #### 8/29向學長姐提出構想 教育雲上有一些學習單形式的學習測驗卷,使用LLM改寫裡面的題目成簡答題形式QA-pair - 步驟: 1. 列要改寫的學習單清單 2. 將學習單的所有問題形式透過GPT改寫成簡答題 3. 給老師們看看改寫的品質,要注意題目是否依然有鑑別度 - 可以先做國小國語,較方便給老師驗證 ![image](https://hackmd.io/_uploads/B1XThtpiR.png) ![image](https://hackmd.io/_uploads/ByO6nFpiC.png) #### 9/2跟玟樺、政叡討論 - 設想的Query種類 - 跟各科老師開會討論出==符合各科教學需求的指令集== - 教育雲內的資料偏科嚴重(國語因為有辭典所以資料較完整) - 不一定有標準答案,如學習單、造句等題型 - 搜尋教材 - 跟目前教育雲網站的差異是可以整合四個網站之教材以回答 - 有標準答案 - 幫學生解題 - 教育雲上的教材是由老師自由上傳,不保證每一課都有課文,因此可能沒有足夠知識解題 - 教育雲中的學習單沒有提供答案,可否用非四個教育雲網站上的考卷做QA-pair的改寫,如課綱符合之各校段考考卷 - QA-pair生成方式構想 - 教師面相: 指令種類偏功能性,可以整理出指令集作為Query,由LLM基於教育雲資料生成回答,最後由人工驗證 - 學生面相: 目前只想到解題方面的功能,期望以教師出的段考考卷作為改寫依據,解決試題鑑別度問題,實際做法會將考卷題型由LLM通通改寫成簡答題,再請老師審查問題的鑑別度、合理性等(人工驗證) - 還有哪些功能是我們沒想到的嗎? ## LLM生成+LLM驗證 #### 1. [(RGB) ClashEval: Quantifying the tug-of-war between an LLM’s internal prior and external evidence](https://arxiv.org/pdf/2404.10198) - 步驟: 1. 抓取新聞或專業領域文章 2. 用GPT-4o生成QA-pair ![image](https://hackmd.io/_uploads/BJ-xMAG2C.png) 3. 用GPT-4o驗證QA-pair的品質 ![image](https://hackmd.io/_uploads/rJJGzAf3A.png) #### 2. [(Ragas) A RAG-based Medical Assistant Especially for Infectious Diseases](https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=10544639&casa_token=s-jFpLiH2UAAAAAA:uqK4is6Hvo9CFuBYKit2lM4BpyTJ01PM1HlY5fwQ85R_tB8w7jcRwfkfuvVcrjF0WpSe1OAZTg&tag=1) - 使用GPT-4o生成QA-pair,沒有展示生成過程 #### 3. [(Ragas) Towards a RAG-based summarization for the Electron Ion Collider](https://iopscience.iop.org/article/10.1088/1748-0221/19/07/C07006/pdf) - 特色: 每個query會搭配指定數量的claims,每個claims都會有一個詳細的解答,此外還會有一個針對全部claims的統整解答 - 步驟: 使用GPT-4o生成,prompt內訂好要生成的query數量,及該query搭配的claims ## LLM建立+人工驗證 #### 1. [(Ragas) Towards a copilot in BIM authoring tool using a large language model-based agent for intelligent human-machine interaction](https://mediatum.ub.tum.de/doc/1743921/document.pdf) - 使用GPT3.5作為提問者,詢問少量問題(此論文問了20提)作為RAG系統的Query,並由專業人士評估RAG的輸出是否正確 #### 2. [(Ragas) GastroBot: a Chinese gastrointestinal disease chatbot based on the retrieval-augmented generation](https://www.frontiersin.org/journals/medicine/articles/10.3389/fmed.2024.1392555/full) - QA size: 20, format included Simple, Inference, Multi-context, Conditional - 步驟: 1. 將處理過的PDF文件載入 2. 使用 SimpleDirectoryReader 從文件中提取數據,生成文檔列表 3. 利用 SimpleNodeParser 從文檔中提取節點信息,並將其封裝在 load_corpus 函數中 4. 生成問答對(方式有三種) - 使用 LlamaIndex 的 generate_qa_embedding_pairs 函數,根據提取的文本節點生成問答對 - 定義上下文信息和問題,利用 gpt-3.5-turbo 模型生成答案 - gpt-3.5-turbo 模型基於給定的上下文段落生成相關的問題和答案 5. 將模型生成的問答對進行人工審核 #### 3. [(Ragas) ARIA-QA: AI-Agent based Requirements Inspection and Analysis through Question Answering](https://assets-eu.researchsquare.com/files/rs-4399368/v1_covered_ed89d388-3829-4b7d-88f4-f809ada58912.pdf?c=1716311817) - 步驟: 1. 將一個大型的需求文檔分割成小的段落 2. 將這些段落分別輸入到 Claude 3-opus 模型中 3. 使用提示引導模型基於段落內容生成相關的問題和答案 4. 對生成的QA-pair進行人工審核和校驗,去除任何不相關或冗餘者 ## 人工建立+人工驗證 #### 1. [(Ragas) MedInsight: A Multi-Source Context Augmentation Framework for Generating Patient-Centric Medical Responses using Large Language Models](https://arxiv.org/pdf/2403.08607) - 步驟: 只有說明其醫學資料集來源MTSamples是人工合成的醫學病歷資料集,而QA-pair的生成方式是**收集100個針對個別患者量身訂製的問題**,並強調這些患者從年齡到性別都盡量有所不同,推測是人工生產QA-pair。 ![image](https://hackmd.io/_uploads/BybdvKTjC.png) ## 半人工建立+人工驗證 #### 1. [(RGB) RAGged Edges: The Double-Edged Sword of Retrieval-Augmented Chatbots](https://arxiv.org/pdf/2403.01193) - data size: 56名受試者,336個QA-pair - 步驟: 1. 固定的query prompt,指替換名子、機構、出版品等個人訊息: ![image](https://hackmd.io/_uploads/SJ0E6lXn0.png) 2. 生成: GPT3.5根據受試者提供的資料(教育、就業或出版物相關的訊息)生成針對query的回答 3. 驗證: 由每個受試者評斷生成結果是`幻覺`、`部分幻覺`、`準確`、`沒有幫助(無法回答等)` - 範例 ![image](https://hackmd.io/_uploads/ryyoNAf2R.png) ## 使用專業領域的開源QA資料集 該領域已有開源的資料集,只要找到相關的知識來源作為外部知識資料庫,就可以直接搭配使用 - 美國食品藥物管理局官方問答資料集(FDA_QA) + FDA官方公布的指南文件 - 隱私政策相關的問答資料集(OPP-115) + 430篇GDPR(一般個人資料保護規則)文章 - 財務問題: FinanceBench - 電信領域: TeleQuAD ## Knowledge Graph(KG) 有些RAG背後的資料庫是以知識圖譜的型態儲存 - **Example Source** - [(Ragas) Hybrid Context Retrieval Augmented Generation Pipeline: LLM-Augmented Knowledge Graphs and Vector Database for Accreditation Reporting Assistance](https://arxiv.org/pdf/2405.15436) - 特色: AACSB,全球三大商管學院評鑑指標 - 步驟: 1. 從指標定義文件中提取相關標題,使用Python對文字進行預處理以標準化大小寫、刪除停用詞並刪除特殊字元 2. 輸出Json結構化資料以建立知識圖譜(KG) 3. 使用GPT3.5提取對應標題的資料並儲存進KG中