偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

當(dāng)RAG遇上MCP...

原創(chuàng)
人工智能
RAG-MCP 構(gòu)成了智能、工具驅(qū)動(dòng)型人工智能智能體的核心之一。無(wú)論您是借助 LangChain、LlamaIndex 等現(xiàn)成框架,還是自行開(kāi)發(fā)編排系統(tǒng),MCP 都能為 RAG(檢索增強(qiáng)生成)流程引入清晰的結(jié)構(gòu)化邏輯。

隨著基礎(chǔ)模型能力的不斷增強(qiáng),現(xiàn)實(shí)世界中的應(yīng)用場(chǎng)景對(duì)人工智能提出了更高的要求,推動(dòng)其向更具上下文感知能力、依賴外部信息檢索以及由智能智能體驅(qū)動(dòng)的方向發(fā)展。為了滿足這些需求,諸如檢索增強(qiáng)生成(RAG)和MCP等關(guān)鍵技術(shù)正逐步成為構(gòu)建現(xiàn)代AI系統(tǒng)的核心組成部分。

1. 簡(jiǎn)要回顧

檢索增強(qiáng)生成(RAG)是一種結(jié)合語(yǔ)言模型與外部知識(shí)庫(kù)的方法,使模型能夠在生成回答之前,先通過(guò)向量搜索或語(yǔ)義搜索技術(shù)檢索相關(guān)的文檔內(nèi)容。隨后,這些檢索到的信息會(huì)被整合進(jìn)提示詞中,作為生成響應(yīng)的依據(jù)。這種機(jī)制不僅有效緩解了模型在處理超出訓(xùn)練數(shù)據(jù)范圍問(wèn)題時(shí)的上下文長(zhǎng)度限制,還顯著降低了“幻覺(jué)”現(xiàn)象的發(fā)生概率,使輸出更加準(zhǔn)確且基于事實(shí)。

與此同時(shí),MCP 提供了一種結(jié)構(gòu)化的方式來(lái)編碼 AI 智能體的動(dòng)態(tài)上下文,特別適用于需要長(zhǎng)時(shí)間運(yùn)行、具備角色認(rèn)知和工具理解能力的復(fù)雜任務(wù)。它幫助智能體維護(hù)自身身份、管理任務(wù)狀態(tài),并協(xié)調(diào)與外部環(huán)境的交互??梢詫⑵湟暈閲@ RAG 查詢所構(gòu)建的一層輕量級(jí)協(xié)議,融合了元數(shù)據(jù)與推理狀態(tài),從而實(shí)現(xiàn)更靈活的記憶存儲(chǔ)、上下文鏈接以及環(huán)境信息注入。這種設(shè)計(jì)大大增強(qiáng)了智能體系統(tǒng)的可擴(kuò)展性和可控性,為未來(lái)智能化應(yīng)用的發(fā)展提供了堅(jiān)實(shí)的基礎(chǔ)。

2.RAG-MCP的工作流程示意

這個(gè)流程展示了一個(gè)現(xiàn)代 AI 應(yīng)用程序中,如何將用戶的問(wèn)題轉(zhuǎn)化為一個(gè)結(jié)構(gòu)清晰、有上下文支持的智能響應(yīng)過(guò)程。整個(gè)流程可以分為以下幾個(gè)關(guān)鍵步驟:

User Query
   ↓
Retriever → [Documents]
   ↓
MCP Formatter: {"role": "analyst", "task": "...", "context": [docs]}
   ↓
LLM (Gemini/Claude/GPT)
   ↓
Response grounded in context + protocol
  1. 用戶查詢(User Query)用戶提出一個(gè)自然語(yǔ)言問(wèn)題或請(qǐng)求,例如“最近的財(cái)報(bào)顯示公司收入增長(zhǎng)了嗎?”
  2. 檢索器(Retriever)系統(tǒng)使用檢索器從外部知識(shí)庫(kù)(如數(shù)據(jù)庫(kù)、文檔庫(kù)或網(wǎng)絡(luò)資源)中查找與問(wèn)題相關(guān)的文檔或信息。這些文檔可能包括最新的財(cái)報(bào)數(shù)據(jù)、市場(chǎng)分析報(bào)告等。
  3. MCP 格式化(MCP Formatter)MCP 是一種結(jié)構(gòu)化的上下文管理機(jī)制。在此步驟中,系統(tǒng)將檢索到的信息與用戶的任務(wù)結(jié)合,并按照預(yù)定義的格式組織起來(lái)。例如:這一步確保了模型在生成答案時(shí)不僅了解問(wèn)題本身,還清楚自己的角色和可用的信息來(lái)源。
  • 角色(role):“分析師”——告訴模型它應(yīng)該以專業(yè)視角回答問(wèn)題;
  • 任務(wù)(task):“分析收入變化趨勢(shì)”;
  • 上下文(context):包含檢索到的相關(guān)文檔內(nèi)容。
  1. 大語(yǔ)言模型(LLM)處理經(jīng)過(guò)格式化的輸入被送入大型語(yǔ)言模型(如 Gemini、Claude 或 GPT),模型會(huì)基于提供的上下文和角色設(shè)定進(jìn)行推理和生成。
  2. 響應(yīng)生成(Response grounded in context + protocol)模型輸出一個(gè)既符合用戶需求,又建立在真實(shí)文檔和結(jié)構(gòu)化指令基礎(chǔ)上的回答。這種響應(yīng)是“有據(jù)可依”的,避免了傳統(tǒng)模型可能出現(xiàn)的“幻覺(jué)”問(wèn)題(即編造信息)。

該流程融合了檢索增強(qiáng)生成(RAG) 和 智能體驅(qū)動(dòng)的上下文管理(MCP),代表了一種先進(jìn)的 AI 工作流設(shè)計(jì)方式。它不僅提升了模型回答問(wèn)題的準(zhǔn)確性,也增強(qiáng)了其在復(fù)雜業(yè)務(wù)場(chǎng)景下的實(shí)用性,例如企業(yè)決策支持、個(gè)性化客服、智能助手等領(lǐng)域。

3.實(shí)驗(yàn): 最小化的RAG-MCP流水線

3.1. 安裝依賴庫(kù)

pip install sentence-transformers faiss-cpu openai

3.2. 配置向量存儲(chǔ)

from sentence_transformers import SentenceTransformer
import faiss
import numpy as np

# Documents to retrieve from
docs = [
    "RAG uses retrieval to improve generation.",
    "MCP is a protocol for embedding model behavior and task context.",
    "LangChain and LlamaIndex offer RAG frameworks.",
    "Vector stores allow semantic search over text."
]

# Create vector index
model = SentenceTransformer("all-MiniLM-L6-v2")
embeddings = model.encode(docs)

index = faiss.IndexFlatL2(embeddings.shape[1])
index.add(embeddings)

3.3. 定義檢索器

def retrieve_top_k(query, k=2):
    query_vec = model.encode([query])
    D, I = index.search(np.array(query_vec), k)
    return [docs[i] for i in I[0]]

3.4. 構(gòu)建MCP 封裝

def build_mcp_prompt(user_query, context_docs):
    return f"""<MCP>
Role: Analyst Agent
Task: Answer user query with context-aware, grounded reasoning.

Context:
{"".join(f"- {doc}\n" for doc in context_docs)}

User Query:
{user_query}

Answer:"""

3.5. 生成響應(yīng) (OpenAI示例)

import openai
openai.api_key = "your-openai-key"

def generate_with_openai(prompt):
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{ "role": "user", "content": prompt }],
        temperature=0.5
    )
    return response.choices[0].message["content"]

3.6. 完整的流水線

query = "How does MCP help with AI agent context?"
retrieved = retrieve_top_k(query, k=2)
mcp_prompt = build_mcp_prompt(query, retrieved)
output = generate_with_openai(mcp_prompt)

print("?? MCP Prompt:\n", mcp_prompt)
print("\n?? RAG-MCP Answer:\n", output)

4.小結(jié)

RAG-MCP 構(gòu)成了智能、工具驅(qū)動(dòng)型人工智能智能體的核心之一。無(wú)論您是借助 LangChain、LlamaIndex 等現(xiàn)成框架,還是自行開(kāi)發(fā)編排系統(tǒng),MCP 都能為 RAG(檢索增強(qiáng)生成)流程引入清晰的結(jié)構(gòu)化邏輯。這種結(jié)構(gòu)不僅提升了智能體在處理復(fù)雜任務(wù)時(shí)的一致性和可控性,還增強(qiáng)了其決策過(guò)程的可解釋性與整體能力,使 AI 智能體能夠在多步驟、長(zhǎng)周期的任務(wù)中表現(xiàn)得更加穩(wěn)健和高效。

責(zé)任編輯:武曉燕 來(lái)源: 喔家ArchiSelf
相關(guān)推薦

2025-08-07 08:35:06

2013-05-22 09:33:09

交互設(shè)計(jì)設(shè)計(jì)時(shí)間

2016-10-21 15:57:39

Rust編輯語(yǔ)言Fedora

2022-02-24 16:15:16

OpenHarmon鴻蒙OpenEuler

2017-06-28 11:34:55

銳捷 醫(yī)療 物聯(lián)網(wǎng)

2015-01-07 15:49:21

大數(shù)據(jù)SSD

2017-08-18 14:47:31

DDD微服務(wù)架構(gòu)

2017-05-16 14:38:25

2013-11-08 09:15:32

大數(shù)據(jù)平板電腦

2016-10-21 09:45:20

RustFedoraJava

2009-03-21 16:43:29

SOA虛擬化IT

2011-03-16 14:51:35

2013-08-22 11:08:27

大數(shù)據(jù)商業(yè)只能Hadoop

2022-06-27 13:56:10

設(shè)計(jì)模式緩存分布式系統(tǒng)

2017-09-11 13:55:30

前端JavaScript物聯(lián)網(wǎng)

2020-12-22 09:31:43

區(qū)塊鏈安全食品

2020-03-05 16:35:06

人臉識(shí)別口罩人工智能

2019-11-19 09:54:59

NBA機(jī)器學(xué)習(xí)數(shù)據(jù)

2012-02-03 14:06:34

Node.js

2016-08-12 16:36:51

GE通用電氣
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)