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

大模型賦能知識圖譜構建問答系統(tǒng)

發(fā)布于 2025-11-24 00:17
瀏覽
0收藏

大模型賦能知識圖譜構建問答系統(tǒng)-AI.x社區(qū)基于模擬 FAQ 文檔構建的 knowledge graph

今天我?guī)硪粋€基于 knowledge graph(用第一部分介紹的方法構建)和 LLM(這里用的是 Gemma3–4b-it-qat,與之前相同)的簡易 Question Answer (QA) System。我選擇使用 Gemma3–4b,是因為它體量足夠小,可以在普通筆記本上運行,同時又非常擅長遵循指令。

在這篇博客中,我們會用一個關于假想智能手機的 FAQ 文本作為樣例,利用上一篇文章中的代碼(同一倉庫)為其生成 knowledge graph,然后搭建一個系統(tǒng)來回答與該產(chǎn)品相關的問題,就像這樣:

大模型賦能知識圖譜構建問答系統(tǒng)-AI.x社區(qū)

一些問答示例

在本文中,我們將學習:

  1. 什么是 QA System
  2. 了解我們的思路
  3. 查看代碼
  4. 討論局限與改進方向

什么是 QA System

引用 Google 的定義:

A question answering (QA) system is a software application that takes a user's question in natural language and provides a direct, relevant answer by processing the question's intent and retrieving information from a knowledge source or generating a new response.

在本文中,我們的 “knowledge source” 是我用 Gemma3 生成的一段模擬 FAQ 文本,你可以在這篇博客的 Github 倉庫 中找到。我們可以運行倉庫的 main.py 來構建 KG 并將其保存到輸出目錄:

python main.py --inputpath ./input/sample-faq.txt --outlabel faq

該命令會將 networkx graph 保存為文件 “nx_graph.pkl”,稍后在構建 QA system 時會加載它。

我們的思路

核心思路是:從用戶問題中抽取 entities/keywords,找到與它們相關的所有 nodes 與 edges,然后將這些信息與問題一起提供給 LLM,讓其基于 KG 中的信息進行回答。我們把方案正式化如下。

給定一個問題 q,以及基于任意語料構建的 knowledge graph (G):

  1. 使用 LLM 從 q 中抽取 named entities(entity_keywords)和 relations/predicates(relation_keywords)。
  2. 從 entity_keywords 中枚舉所有可能的成對組合。這使我們之后可以用 source 和 target 參數(shù)查詢圖,因為我們無法預先假設某個 entity 是 source 還是 target。
  3. 對于第 2 步得到的每一對 (u, v),在 G 中查找 u 與 v 之間的所有路徑。這樣可以找出兩個實體之間的所有 relations/paths/knowledge。引入這一步是個 game-changer。
  4. 對于找到的每條路徑(source 與 target node),提取它們之間的 relation。例如 (box, include, charger)。
  5. 將形成的 “triple” 加入列表 relations。
  6. 對 relation_keywords 做類似處理。對于每個 relation r,找到所有由 r 連接的 edges,形成 triples 并加入同一列表 relations。
  7. 最后一步,將這些 triples 與問題 q 一起(封裝在一個 prompt 中)傳給 LLM,讓其基于給定事實(triples)與查詢生成答案。

代碼實現(xiàn)

首先,用 main.py 構建 knowledge graph:

python main.py --inputpath ./input/sample-faq.txt --outlabel faq

然后從上一步生成的 pickle 文件中加載 graph:

import pickle

G = pickle.load(open(graph_file, "rb"))

我們需要定義一個函數(shù),能夠接收文本輸入與 system level prompt,并從 LLM 獲取響應。下面這個可復用函數(shù)實現(xiàn)了該功能:

def get_llm_response(text, system_prompt):
    response = ollama.chat(model=model, messages=[
        {"role": "system", "content": system_prompt},
        {"role": "user", "content": text}
        ])
    resp_content = response['message']['content']
    return resp_content

接下來需要從給定 query 中抽取 entities 和 relations(對應上文的第 1 步)。我構造了一個基礎的 system prompt,如下所示:

system_prompt_key_words = """You are a helpful assistant, expert of English language who can extracts keyword from the given question in root form (e.g. ran becomes run) and lowercase.
The returned keywords should be critical to answer the question.
Categorize the keywords into entity and relation keywords.
keywords must be in root form and lowercase.
The response should be in following format, no additional text:
{"entity": [list of entity keywords], "relation": [list of relation keywords]}"""

response = get_llm_response(query, system_prompt_key_words)
keyword_resp = json.loads(response)
entity_keywords = keyword_resp.get('entity', [])
relation_keywords = keyword_resp.get('relation', [])

假設 entity_keywords 為 [box, charger, phone],我們需要找出所有可能的 source-target 成對組合,以便對圖做全面查詢:

pairs = list(combinations(entities, 2))

對每個實體對,我們需要在圖中查找所有 nodes 與 edges:

paths = list(nx.all_simple_paths(G, source=u, target=target_nodes))

上述步驟(第 1–6 步,含以上代碼)都實現(xiàn)在下面這個函數(shù)中:

def search_kg2(G, query):
    response = get_llm_response(query, system_prompt_key_words)
    keyword_resp = json.loads(response)
    entity_keywords = keyword_resp.get('entity', [])
    relation_keywords = keyword_resp.get('relation', [])
    entities = [part.strip() for part in entity_keywords]
    pairs = list(combinations(entities, 2))
    relations = []
    for u, v in pairs:
        target_nodes = get_nodes(G, v)
        paths = list(nx.all_simple_paths(G, source=u, target=target_nodes))
        for path in paths:
            for i inrange(len(path)-1):
                for key in G[path[i]][path[i+1]]:
                    rel = G[path[i]][path[i+1]][key]['relation']
                    relations.append((path[i],rel, path[i+1]))

    for rel_keyword in relation_keywords:
        relations.extend([(u, rel, v) for u, v, rel in G.edges.data("relation") ifstr(rel) == rel_keyword])
    
    return relations

當我們從上述函數(shù)得到所有用 triples(entity->relation->entity)表示的 edges 后,就將這些 triples 嵌入到一個指令式 prompt 中傳給 LLM:

context = f"""
    You are given facts from a knowledge graph:

    {triples}

    Answer the user query based ONLY on these facts.
    Answer in full sentence.
    Query: {query}
    """
response = ollama.chat(model="gemma3:4b-it-qat",
             messages=[{"role": "user", "content": context}])
print(f'query: {query}\nAnswer:{response["message"]["content"]}')

它會返回如下這類答案:

大模型賦能知識圖譜構建問答系統(tǒng)-AI.x社區(qū)

如你所見,對于缺乏相關數(shù)據(jù)/事實的問題,LLM 會合理地拒絕作答。

本文所有代碼可在文件 ??https://github.com/nayash/knowledge-graph-demo/blob/master/qa-from-kg.ipynb??中找到。

局限性

如上所示,我們幾乎沒費太多力氣就創(chuàng)建了一個基礎的 QA system,因為 LLM 負責了大量工作,比如文本預處理、抽取等。但它還不完美。在我的初步評估中,至少發(fā)現(xiàn)了幾個問題。

系統(tǒng)無法回答 “what is the warranty period?”,因為在圖里 warranty 是 relation 的 label,但它從問題中被抽取成了 named entity,導致系統(tǒng)找不到任何 edge。因此,我們用于構建 knowledge graph 的核心 system prompt 還需要優(yōu)化。

還有一些問題需要稍微改寫后系統(tǒng)才能回答。但我發(fā)現(xiàn)這類問題最終都可以歸因于 KG 的構建方式或從 query 中抽取的 keyword。兩者都可以通過改進 prompts 來修復。比如,我使用的圖中有一條 edge 是:

phone → support_dual_sim → nano sim

這顯然并不理想。但這些都可以通過更謹慎地設計用于構建 KG 的 prompt 來修正。正如我在上一篇文章中提到的,我最初是用 chatGPT 生成的 prompt,并在此基礎上略作修改。在真實生產(chǎn)場景中,應當花更多時間打磨 prompt。對于企業(yè)級應用,還可以嘗試更大的 model,因為資源限制不再是問題。

總之,這種方法很有前景,并且可以與 RAG 結合來提升回答質(zhì)量。或許在下一篇博客中,我會用更精細的 prompts 與 RAG 繼續(xù)改進這個系統(tǒng)。

本文轉載自???PyTorch研習社???,作者:AI研究生

收藏
回復
舉報
回復
相關推薦
99这里都是精品| 欧美日韩高清| 精品国产999| 欧美在线一二三区| 一个人看的www日本高清视频| 91精品国产自产在线观看永久∴| 精品久久国产97色综合| 成人在线观看a| 影音先锋在线视频| 丁香婷婷综合色啪| 欧美性受xxx| 日韩欧美国产成人精品免费| 欧美激情极品| 欧美一级日韩免费不卡| 妺妺窝人体色www在线小说| www.亚洲视频| 91浏览器在线视频| 99九九视频| 欧美在线视频精品| aⅴ色国产欧美| 欧美成aaa人片免费看| 91网站免费视频| 国产成人夜色高潮福利影视| 欧美美女直播网站| 成人黄色一区二区| 成人影院在线视频| 一区二区三区不卡视频在线观看| 日韩在线第一区| 婷婷开心激情网| 东方欧美亚洲色图在线| 国产色综合天天综合网| 波多野结衣 久久| 激情综合在线| 久久福利网址导航| 亚洲欧美va天堂人熟伦| 色婷婷狠狠五月综合天色拍| 欧美一级日韩一级| 91视频这里只有精品| **在线精品| 午夜欧美在线一二页| 黄色一级片国产| 免费高清完整在线观看| 中文av一区特黄| 欧美日韩国产一二| 青青久草在线| av一区二区三区在线| 国产成人精品日本亚洲11| 国产精品伦一区二区三区| 日本强好片久久久久久aaa| 青青青国产精品一区二区| 日韩网红少妇无码视频香港| 亚洲午夜视频| 欧美激情一区二区三区久久久| 日本爱爱小视频| 色777狠狠狠综合伊人| 自拍亚洲一区欧美另类| 色噜噜噜噜噜噜| 成人三级视频| 在线播放国产一区二区三区| 国产黄色大片免费看| 精品国产一区一区二区三亚瑟| 国产丝袜一区二区三区免费视频| 国产高清自拍视频| 一道本一区二区三区| 亚洲区免费影片| 亚洲精品午夜视频| 成人激情在线| 日韩视频第一页| 日韩成人毛片视频| 一区二区自拍| 奇米成人av国产一区二区三区| av黄色在线看| 日韩高清一区在线| 国产欧美日韩91| 国内老熟妇对白xxxxhd| 成人黄页在线观看| 欧美lavv| 日本视频在线观看| 亚洲精品乱码久久久久久久久| 中文字幕人妻熟女人妻洋洋| wwwww亚洲| 一本色道久久综合狠狠躁的推荐 | 久久精品国产一区二区三| 国产精品久久久久91| 一级黄色片视频| 久久成人免费网| 不卡一卡2卡3卡4卡精品在| 美女爆乳18禁www久久久久久| 精品国产影院| 亚洲天堂免费视频| 777777国产7777777| 精久久久久久| 国产精品普通话| 亚洲乱码国产乱码精品精软件| 久久中文字幕电影| 国产成人精品免费看在线播放| 麻豆福利在线观看| 在线视频国内一区二区| 国产精品一级无码| 蜜桃一区二区| 精品少妇一区二区30p| 日韩免费视频一区二区视频在线观看| 日本中文字幕一区二区有限公司| 亚洲最大成人免费视频| 日本福利片高清在线观看| 1区2区3区欧美| 欧美二区在线视频| 日日夜夜亚洲精品| 日韩成人中文字幕在线观看| 亚洲女同二女同志奶水| 国产视频欧美| 3d动漫精品啪啪一区二区三区免费| 天堂中文字幕在线| 亚洲精选一二三| 欧美三级理论片| 欧美变态挠脚心| 欧美美女操人视频| 亚洲影视一区二区| 91麻豆免费看片| 久久这里只有精品8| 久久久久毛片| 亚洲欧洲免费视频| 日韩乱码在线观看| 国产99久久久久| 99精品视频网站| 国产私拍福利精品视频二区| 亚洲激情视频在线| 久久久久亚洲AV成人| 麻豆91在线看| 欧美日韩精品免费观看视一区二区| 日本一本在线免费福利| 欧美精品高清视频| 日本综合在线观看| 亚洲欧美成人| 精品一区二区不卡| 成人免费高清观看| 精品国产污污免费网站入口| 亚洲人与黑人屁股眼交| 日韩不卡免费视频| 欧美日韩在线精品一区二区三区| а√天堂中文资源在线bt| 日韩美女主播在线视频一区二区三区| 开心激情五月网| 美女网站色91| 亚洲精品一卡二卡三卡四卡| 婷婷综合六月| 国产亚洲欧美一区| 久久久精品毛片| 国产片一区二区| 日本美女高潮视频| 第一会所亚洲原创| 国产久一一精品| 秋霞影院午夜丰满少妇在线视频| 一本大道久久a久久综合婷婷| 国产国语性生话播放| 亚洲精品黄色| 欧美久久久久久| 欧美日韩激情电影| 中文欧美日本在线资源| 又色又爽又黄无遮挡的免费视频| 国产精品嫩草影院com| 欧美在线aaa| 99久久影视| 亚洲a在线播放| 久久不射影院| 日韩精品视频在线| 日韩熟女一区二区| 中文字幕一区二区5566日韩| 永久免费黄色片| 欧美色一级片| 久久偷看各类wc女厕嘘嘘偷窃| 国产精品专区免费| 色诱女教师一区二区三区| 97精品人妻一区二区三区| 亚洲精品欧美综合四区| 国产精品偷伦视频免费观看了| 亚洲黄色三级| 茄子视频成人在线观看| 成人综合日日夜夜| 国外成人在线视频| 国产三级在线免费| 91精品福利在线一区二区三区| 久久久久久天堂| 久久只精品国产| 亚洲综合伊人久久| 国产亚洲永久域名| 亚洲精品中文综合第一页| 精品视频国内| 欧洲亚洲免费视频| 超碰在线观看免费版| 亚洲国产天堂久久国产91| 中文字幕精品一区二| 一区二区成人在线视频| 性欧美13一14内谢| 精品一区二区三区在线视频| 欧美视频在线观看网站 | 亚洲精品二区| 在线观看视频一区二区三区 | 欧洲亚洲精品久久久久| 国内精品视频久久| 国产精品久久久久一区二区国产| 日韩一区二区三区免费看 | 丝袜足脚交91精品| 一区二区日韩| 国产精品一区久久久| www.综合| 欧美精品在线免费| 超碰免费97在线观看| 亚洲国语精品自产拍在线观看| 中文字字幕在线观看| 五月天一区二区三区| 亚洲无中文字幕| 国产精品久久久久久久久免费樱桃| 亚洲欧美aaa| 国产一区二区高清| 四虎4hu永久免费入口| 美日韩中文字幕| 成人免费观看网站| 国产成人亚洲一区二区三区| 91国内精品久久| 八戒八戒神马在线电影| 在线观看国产成人av片| 天堂在线中文资源| 精品日韩一区二区| 国产精品无码在线播放| 欧洲精品一区二区三区在线观看| 国产无遮无挡120秒| 亚洲日本成人在线观看| 欧美亚洲色综久久精品国产| 91免费在线看| 在线观看免费视频黄| 国产酒店精品激情| 中文字幕亚洲影院| 美女一区二区视频| 午夜视频你懂的| 久久久久久久尹人综合网亚洲| 毛片在线视频观看| 91精品一区二区三区综合| 五月天丁香综合久久国产| 日韩有码一区| 久久国产精品 国产精品| 都市激情亚洲欧美| 国产精品国色综合久久| 亚洲码欧美码一区二区三区| 成人性生交xxxxx网站| 亚洲成人1区| 91精品国产综合久久久久久蜜臀| 成人福利片在线| 国产精品美女久久久免费| 成人黄色图片网站| 国产精品久久久久久久9999| 亚洲成人av观看| 国产精品久久久久久久久久| 主播大秀视频在线观看一区二区| 国产成人欧美在线观看| 精品日韩视频| 国产精品自在线| 亚洲老司机网| 97超碰人人看人人| jazzjazz国产精品久久| 国产精品v欧美精品v日韩精品| 超碰97久久国产精品牛牛| 国产三区二区一区久久| 日韩高清电影免费| 欧美在线视频二区| 99成人在线视频| 日韩中文字幕在线不卡| 亚洲婷婷免费| 成人观看免费完整观看| 日本aⅴ亚洲精品中文乱码| 成人综合久久网| 国产999精品久久久久久绿帽| 任你躁av一区二区三区| www成人在线观看| 久久久久99精品成人| 亚洲乱码中文字幕| 国内免费精品视频| 在线看国产一区| 国产熟女一区二区丰满| 亚洲第一男人av| 精品推荐蜜桃传媒| 久久婷婷国产麻豆91天堂| 国产三级伦理在线| 国产精品1区2区在线观看| 成人噜噜噜噜| 久久精品国产一区二区三区日韩| 免费看成人哺乳视频网站| 一本一生久久a久久精品综合蜜| 欧美日韩影院| 91蝌蚪视频在线观看| 国产乱码精品一区二区三区忘忧草 | 九色网友自拍视频手机在线| 日韩中文在线观看| 国产盗摄一区二区| 国产精品极品尤物在线观看 | 精品久久久三级| 波多野结衣在线播放一区| 91嫩草国产丨精品入口麻豆| 99精品视频免费观看视频| 在线黄色免费观看| av在线不卡免费看| 日韩欧美国产成人精品免费| 黑人狂躁日本妞一区二区三区| 在线观看国产黄| 亚洲精品丝袜日韩| 欧美人体视频xxxxx| 国产精品v日韩精品| 国产精品国产| 午夜啪啪免费视频| 老司机亚洲精品| 午夜免费福利影院| 亚洲色图视频网| 最好看的日本字幕mv视频大全| 亚洲国产成人精品久久| 国产黄色在线网站| 国产精品日韩在线| 亚洲深夜福利在线观看| 免费看毛片的网址| 极品少妇一区二区三区精品视频| 久久精品一区二区免费播放| 亚洲自拍偷拍综合| 国产一区二区在线视频观看| 亚洲剧情一区二区| 6699嫩草久久久精品影院| 91嫩草在线| 久久精品欧美一区| 91欧美视频在线| 久久精品欧美一区二区三区麻豆| 国产精品suv一区二区69| 欧美一区二区三区婷婷月色 | 久久99精品久久久久久噜噜| www.一区| 日韩.欧美.亚洲| 久久国产精品99国产| 91丝袜在线观看| 亚洲成人自拍一区| 欧美熟妇乱码在线一区| 九九热这里只有在线精品视| 9999在线精品视频| 亚洲资源在线网| 蜜乳av一区二区| 后入内射无码人妻一区| 在线免费不卡电影| 国产一级片在线| 国产成人精品av在线| 久久av资源| 天天爽天天爽夜夜爽| 国产清纯在线一区二区www| 国产精品手机在线观看| 亚洲综合99| 久久国产激情视频| 久久午夜影视| 一区二区三区少妇| 午夜精品久久久久久久久久久 | h视频在线免费观看| 国产精品黄视频| 国产影视一区| 日本www.色| 国产精品麻豆欧美日韩ww| 国产成人自拍偷拍| 色777狠狠综合秋免鲁丝| 日韩免费在线电影| 欧美xxxx吸乳| 粉嫩久久99精品久久久久久夜| 久久免费播放视频| 精品三级av在线| 一区二区电影免费观看| 色综合影院在线观看| 精品中文字幕一区二区| 国产一二三四区| 精品剧情v国产在线观看在线| av电影免费在线看| 久久久久久精| 美女视频黄频大全不卡视频在线播放| 91香蕉视频污在线观看| 欧美一区午夜视频在线观看| 成人女同在线观看| 日本精品国语自产拍在线观看| 蜜桃91丨九色丨蝌蚪91桃色| 男人操女人的视频网站| 亚洲国产精品va在线看黑人动漫 | 国产精品一区二区三区毛片淫片 | 亚洲天天做日日做天天谢日日欢| 国产高清第一页| 清纯唯美日韩制服另类| 我不卡伦不卡影院| 成年人的黄色片| 欧美日韩中文字幕一区| 乱插在线www| 亚洲精品一区二区三区四区五区| 国产高清久久久| 伊人久久久久久久久久久久| 久久这里只有精品99| 亚洲第一论坛sis| 超碰在线免费av| 日韩欧美亚洲综合| 午夜小视频在线观看| 日本精品一区二区| 粉嫩aⅴ一区二区三区四区五区 | 欧美电影影音先锋|