搜尋
首頁科技週邊人工智慧在組織中建立用於智能決策的破布系統

在當今快節奏的商業環境中,組織被驅動決策,優化運營並保持競爭力的數據所淹沒。但是,從這些數據中提取可行的見解仍然是一個重大障礙。與代理AI集成時,檢索功能增強的一代(RAG)系統不僅可以通過檢索相關信息,還可以實時處理和交付上下文感知的見解來應對這一挑戰。這種組合允許企業創建智能代理,以自主查詢數據集,適應和提取有關產品功能,集成和操作的見解。

>通過將抹布與代理AI合併,企業可以增強決策並將分散的數據轉換為有價值的智能。該博客探討了使用Agentic AI構建RAG管道的過程,提供技術見解和代碼示例,以增強組織中明智的決策能力。

學習目標

  • >學習如何使用Python和刮擦工具自動從多個Web來源提取和刮擦相關數據,從而為任何公司智能平台構成基礎。
  • >
  • 通過提取諸如產品功能,集成和使用AI驅動的技術諸如產品功能,集成和故障排除步驟之類的關鍵點,了解如何將數據構造和處理刮擦數據。
  • 學習如何將抹布與文檔檢索和自然語言生成整合,以構建一個能夠從廣泛數據集中傳遞上下文感知答案的智能查詢系統。
  • >了解如何構建一個結合數據刮擦,知識提取和實時查詢處理的代理AI系統,使企業能夠自動提取可行的見解。
  • >
  • >了解如何使用雲平台和分佈式體系結構來擴展和部署此類系統,以確保它可以有效地處理大型數據集和高查詢負載。

>本文是> > data Science Blogathon的一部分。內容表

  • >使用BFS提取數據,並用AI Agent

import requests
from bs4 import BeautifulSoup
from collections import deque

# Function to extract links using BFS
def bfs_link_extraction(start_url, max_depth=3):
    visited = set()  # To track visited links
    queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
    all_links = []

    while queue:
        url, depth = queue.popleft()

        if depth > max_depth:
            continue

        # Fetch the content of the URL
        try:
            response = requests.get(url)
            soup = BeautifulSoup(response.content, 'html.parser')

            # Extract all links in the page
            links = soup.find_all('a', href=True)
            for link in links:
                full_url = link['href']
                if full_url.startswith('http') and full_url not in visited:
                    visited.add(full_url)
                    queue.append((full_url, depth + 1))
                    all_links.append(full_url)
        except requests.exceptions.RequestException as e:
            print(f"Error fetching {url}: {e}")

    return all_links

# Start the BFS from the homepage
start_url = 'https://www.example.com'  # Replace with the actual homepage URL
all_extracted_links = bfs_link_extraction(start_url)
print(f"Extracted {len(all_extracted_links)} links.")
使用BFS提取數據並刮擦數據

>為公司情報構建強大的抹布系統的第一步是收集必要的數據。由於數據可能來自各種網絡來源,因此有效地刮擦和組織它是關鍵。發現和收集相關頁面的一種有效技術是廣度優先搜索(BFS)。 BFS幫助我們遞歸地發現從主頁開始的鏈接,從而逐漸將搜索擴展到更深的級別。這樣可以確保我們收集所有相關頁面,而不會用不必要的數據壓倒系統。 在本節中,我們將研究如何使用BFS從網站提取鏈接,然後將這些頁面的內容刪除。使用BFS,我們會系統地遍歷網站,收集數據並創建一個有意義的數據集,用於在RAG管道中處理。

步驟1:使用BFS

鏈接提取 為了開始,我們需要從給定網站收集所有相關鏈接。使用BFS,我們可以探索主頁上的鏈接,然後從那裡遵循其他頁面上的鏈接,直到指定的深度。此方法可確保我們捕獲所有可能包含相關公司數據的必要頁面,例如產品功能,集成或其他關鍵細節。

下面的代碼使用BFS從啟動URL中進行鏈接提取。它首先獲取主頁,提取所有鏈接(< a>帶有HREF屬性的標籤),然後遵循這些鏈接到後續頁面,遞歸根據給定深度限制。

這是執行鏈接提取的代碼:>
Extracted 1500 links.

>我們保持隊列以跟踪訪問的URL及其相應的深度,以確保有效的遍歷。訪問的集合用於防止多次重新訪問相同的URL。對於每個URL,我們使用BeautifulSoup來解析HTML並提取所有鏈接(帶有HREF屬性的標籤)。該過程使用BFS遍歷,遞歸獲取每個URL的內容,提取鏈接並進一步探索直到達到深度極限。這種方法可確保我們在沒有冗餘的情況下有效地探索網絡。

> >輸出 此代碼輸出從網站提取的鏈接列表,直到指定的深度。 >輸出表明該系統從啟動網站及其鏈接的頁面最高為3的鏈接中找到並收集了1500個鏈接。您將用實際的目標URL替換https://www.example.com。以下是原始代碼的輸出屏幕截圖。敏感信息已被掩蓋以維持完整性。

>步驟2:從提取的鏈接中刮擦數據

>使用BFS提取相關鏈接後,下一步就是從這些頁面中刮擦內容。我們將尋找關鍵信息,例如產品功能,集成和任何其他相關數據,這些數據將幫助我們為RAG系統構建結構化數據集。

在此步驟中,我們循環瀏覽提取的鏈接列表和刮擦密鑰內容,例如頁面標題及其主要內容。您可以根據需要調整此代碼以刮擦其他數據點(例如,產品功能,定價或常見問題解答信息)。

>

import requests
from bs4 import BeautifulSoup
from collections import deque

# Function to extract links using BFS
def bfs_link_extraction(start_url, max_depth=3):
    visited = set()  # To track visited links
    queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
    all_links = []

    while queue:
        url, depth = queue.popleft()

        if depth > max_depth:
            continue

        # Fetch the content of the URL
        try:
            response = requests.get(url)
            soup = BeautifulSoup(response.content, 'html.parser')

            # Extract all links in the page
            links = soup.find_all('a', href=True)
            for link in links:
                full_url = link['href']
                if full_url.startswith('http') and full_url not in visited:
                    visited.add(full_url)
                    queue.append((full_url, depth + 1))
                    all_links.append(full_url)
        except requests.exceptions.RequestException as e:
            print(f"Error fetching {url}: {e}")

    return all_links

# Start the BFS from the homepage
start_url = 'https://www.example.com'  # Replace with the actual homepage URL
all_extracted_links = bfs_link_extraction(start_url)
print(f"Extracted {len(all_extracted_links)} links.")
>對於列表中的每個URL,我們發送HTTP請求以獲取頁面的內容,並使用BeautifulSoup解析其提取標題和主要內容。我們將提取的數據存儲在字典列表中,每個詞典都包含URL,標題和內容。最後,我們將刮擦數據保存到JSON文件中,以確保可以在RAG管道中進行以後的處理。此過程可確保有效收集和存儲相關數據以進一步使用。

>

>輸出

>該代碼的輸出將是一個保存的JSON文件(Scraped_data.json),其中包含來自鏈接的刮擦數據。數據結構的一個示例可能是這樣的:

Extracted 1500 links.
此JSON文件包含我們刮擦的每個頁面的URL,標題和內容。現在可以將這些結構化數據用於進一步處理,例如在抹布系統中嵌入生成和提問。以下是原始代碼的輸出屏幕截圖。敏感信息已被掩蓋以維持完整性。

在組織中建立用於智能決策的破布系統 用AI代理自動化信息提取

> 在上一節中,我們使用廣度優先搜索(BFS)策略介紹了刮擦鏈接和收集原始Web內容的過程。一旦刮擦了必要的數據,我們就需要一個可靠的系統來組織和從此原始內容中提取可行的見解。在這裡,Agesic AI介入:通過處理刮擦數據,它會自動將信息構造為有意義的部分。 >

在本節中,我們關注代理AI如何從刮擦數據中提取相關的產品信息,以確保其已準備好利益相關者的消費。我們將分解涉及的關鍵步驟,從加載數據到處理數據,最後以結構化格式保存結果。

>步驟1:加載刮擦數據

>此過程的第一步是將原始的刮擦內容加載到我們的系統中。正如我們之前看到的,刮擦數據以JSON格式存儲,每個條目都包含一個URL和相關內容。我們需要確保此數據以適當的格式供AI處理。

代碼代碼片段:

import requests
from bs4 import BeautifulSoup
from collections import deque

# Function to extract links using BFS
def bfs_link_extraction(start_url, max_depth=3):
    visited = set()  # To track visited links
    queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
    all_links = []

    while queue:
        url, depth = queue.popleft()

        if depth > max_depth:
            continue

        # Fetch the content of the URL
        try:
            response = requests.get(url)
            soup = BeautifulSoup(response.content, 'html.parser')

            # Extract all links in the page
            links = soup.find_all('a', href=True)
            for link in links:
                full_url = link['href']
                if full_url.startswith('http') and full_url not in visited:
                    visited.add(full_url)
                    queue.append((full_url, depth + 1))
                    all_links.append(full_url)
        except requests.exceptions.RequestException as e:
            print(f"Error fetching {url}: {e}")

    return all_links

# Start the BFS from the homepage
start_url = 'https://www.example.com'  # Replace with the actual homepage URL
all_extracted_links = bfs_link_extraction(start_url)
print(f"Extracted {len(all_extracted_links)} links.")

>在這裡,我們使用Python的內置JSON庫將整個數據集加載到存儲器中。數據集中的每個條目都包含源的URL和text_content字段,該字段容納了原始的刮擦文本。此內容是我們將在接下來的一步中處理的內容。

>

>步驟2:提取原始文本內容

接下來,我們通過數據集迭代以提取每個條目的相關text_content。這樣可以確保我們僅處理包含必要內容的有效條目。跳過無效或不完整的條目以維持該過程的完整性。

代碼代碼片段:

在這一點上,Input_text變量包含我們將發送到AI模型以進行進一步處理的原始文本內容。至關重要的是,我們在處理每個條目之前確保存在必要的鍵。
Extracted 1500 links.
步驟3:將數據發送給AI代理進行處理

提取原始內容後,我們將其發送到用於結構化提取的代理AI模型。我們與GROQ API進行交互,以根據預定義的提示請求結構化的見解。 AI模型處理內容並返回有組織的信息,這些信息涵蓋了關鍵方面,例如產品功能,集成和故障排除步驟。

代碼代碼片段:

>在這裡,該代碼啟動了對GROQ的API調用,將Input_Text和說明作為消息有效負載的一部分發送。系統消息指示執行確切任務的AI模型,而用戶消息則提供要處理的內容。我們使用溫度,max_tokens和top_p參數來控制生成的輸出的隨機性和長度。

import json

# Function to scrape and extract data from the URLs
def scrape_data_from_links(links):
    scraped_data = []

    for link in links:
        try:
            response = requests.get(link)
            soup = BeautifulSoup(response.content, 'html.parser')

            # Example: Extract 'title' and 'content' (modify according to your needs)
            title = soup.find('title').get_text()
            content = soup.find('div', class_='content').get_text()  # Adjust selector

            # Store the extracted data
            scraped_data.append({
                'url': link,
                'title': title,
                'content': content
            })
        except requests.exceptions.RequestException as e:
            print(f"Error scraping {link}: {e}")

    return scraped_data

# Scrape data from the extracted links
scraped_contents = scrape_data_from_links(all_extracted_links)

# Save scraped data to a JSON file
with open('/content/scraped_data.json', 'w') as outfile:
    json.dump(scraped_contents, outfile, indent=4)

print("Data scraping complete.")
API調用配置:

模型:
    指定要使用的模型。在這種情況下,選擇語言模型以確保它可以處理文本數據並生成響應。
  • 溫度:>控制響應的創造力。更高的價值會導致更具創造性的響應,而較低的價值使它們更具確定性。
  • max_tokens:設置生成的響應的最大長度。
  • top_p:>確定令牌選擇的累積概率分佈,控制響應中的多樣性。 步驟4:處理和收集結果
  • > AI模型處理內容後,它將返回大量結構化信息。我們收集並加入這些塊以創建完整的結果,確保不會丟失數據並且最終輸出完成。
  • 代碼代碼片段:
    import requests
    from bs4 import BeautifulSoup
    from collections import deque
    
    # Function to extract links using BFS
    def bfs_link_extraction(start_url, max_depth=3):
        visited = set()  # To track visited links
        queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
        all_links = []
    
        while queue:
            url, depth = queue.popleft()
    
            if depth > max_depth:
                continue
    
            # Fetch the content of the URL
            try:
                response = requests.get(url)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Extract all links in the page
                links = soup.find_all('a', href=True)
                for link in links:
                    full_url = link['href']
                    if full_url.startswith('http') and full_url not in visited:
                        visited.add(full_url)
                        queue.append((full_url, depth + 1))
                        all_links.append(full_url)
            except requests.exceptions.RequestException as e:
                print(f"Error fetching {url}: {e}")
    
        return all_links
    
    # Start the BFS from the homepage
    start_url = 'https://www.example.com'  # Replace with the actual homepage URL
    all_extracted_links = bfs_link_extraction(start_url)
    print(f"Extracted {len(all_extracted_links)} links.")

    此代碼段將每個塊的內容串聯到> pm_points 變量,從而產生完整的結構化洞察集。它以利益相關者可以輕鬆消費或用於進一步分析的格式提取這些見解。以下是原始代碼的輸出屏幕截圖,並掩蓋了敏感信息以保持完整性。

    >步驟5:錯誤處理和維護數據完整性

    在處理時,總是有可能遇到錯誤的可能性,例如不完整的內容或網絡問題。通過使用錯誤處理機制,我們確保該過程對於所有有效條目都可以順利進行。

    代碼代碼片段:

    這個嘗試 - 外觀塊捕獲並記錄所有錯誤,從而確保系統繼續處理其他條目。如果特定條目引起問題,則該系統將其標記用於審核而無需停止整體過程。
    Extracted 1500 links.
    步驟6:保存處理的數據

    AI處理內容並返回結構化的見解後,最後一步是保存此數據以供以後使用。我們將結構化結果寫回JSON文件,以確保每個條目都有自己的已處理信息存儲以進行進一步分析。

    代碼代碼片段:

    >該代碼可有效存儲處理後的數據,並允許以後輕鬆訪問。它及其各自的結構化點保存了每個條目,從而簡單地檢索提取的信息並分析。 >輸出

    運行上述代碼後,處理後的JSON文件將包含每個條目的提取點。 pm_points將持有與產品功能,集成,故障排除步驟等相關的結構化信息,並準備進一步分析或集成到您的工作流程中。
    import json
    
    # Function to scrape and extract data from the URLs
    def scrape_data_from_links(links):
        scraped_data = []
    
        for link in links:
            try:
                response = requests.get(link)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Example: Extract 'title' and 'content' (modify according to your needs)
                title = soup.find('title').get_text()
                content = soup.find('div', class_='content').get_text()  # Adjust selector
    
                # Store the extracted data
                scraped_data.append({
                    'url': link,
                    'title': title,
                    'content': content
                })
            except requests.exceptions.RequestException as e:
                print(f"Error scraping {link}: {e}")
    
        return scraped_data
    
    # Scrape data from the extracted links
    scraped_contents = scrape_data_from_links(all_extracted_links)
    
    # Save scraped data to a JSON file
    with open('/content/scraped_data.json', 'w') as outfile:
        json.dump(scraped_contents, outfile, indent=4)
    
    print("Data scraping complete.")
    >

    以下是原始代碼的輸出屏幕截圖。敏感信息已被掩蓋以維持完整性。

    [
        {
            "url": "https://www.example.com/page1",
            "title": "Page 1 Title",
            "content": "This is the content of the first page. It contains 
            information about integrations and features."
        },
        {
            "url": "https://www.example.com/page2",
            "title": "Page 2 Title",
            "content": "Here we describe the functionalities of the product. 
            It includes various use cases and capabilities."
        }
    ]
    >檢索增強的生成管道實施

    在上一節中,我們專注於從網頁中提取數據,並將其轉換為JSON等結構化格式。我們還實施了提取和清潔相關數據的技術,從而使我們能夠生成一個可以進行更深入分析的數據集。

    >在本節中,我們將實施一個檢索功能(RAG)管道,該管道結合了文檔檢索和語言模型生成,以根據提取的信息回答問題。 通過整合我們先前刮擦和處理的結構化數據,該破布管道不僅將檢索最相關的文檔塊,而且還會基於該上下文產生準確,有見地的響應。

    >步驟1:設置環境

    開始,讓我們安裝抹布管道的所有必要依賴項:>

    import requests
    from bs4 import BeautifulSoup
    from collections import deque
    
    # Function to extract links using BFS
    def bfs_link_extraction(start_url, max_depth=3):
        visited = set()  # To track visited links
        queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
        all_links = []
    
        while queue:
            url, depth = queue.popleft()
    
            if depth > max_depth:
                continue
    
            # Fetch the content of the URL
            try:
                response = requests.get(url)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Extract all links in the page
                links = soup.find_all('a', href=True)
                for link in links:
                    full_url = link['href']
                    if full_url.startswith('http') and full_url not in visited:
                        visited.add(full_url)
                        queue.append((full_url, depth + 1))
                        all_links.append(full_url)
            except requests.exceptions.RequestException as e:
                print(f"Error fetching {url}: {e}")
    
        return all_links
    
    # Start the BFS from the homepage
    start_url = 'https://www.example.com'  # Replace with the actual homepage URL
    all_extracted_links = bfs_link_extraction(start_url)
    print(f"Extracted {len(all_extracted_links)} links.")
    這些軟件包對於在Langchain中集成文檔處理,矢量化和OpenAI模型至關重要。 JQ是輕量級的JSON處理器,而Langchain則是構建語言模型管道的核心框架。 Langchain-Openai促進了諸如GPT之類的OpenAI模型的整合,Langchain-Chroma提供了基於色度的矢量商店,用於管理文檔嵌入。

    >此外,我們使用句子轉換器來生成具有預訓練的變壓器模型的文本嵌入,從而實現有效的文檔處理和檢索。

    >

    步驟2:加載提取的數據

    現在,我們將加載使用JSONLOADER在上一節中提取和處理的結構化數據。例如,這些數據本可以從網頁中刮掉為結構化的JSON,其中鍵值對與特定主題或問題有關。

    在此步驟中,已加載了先前提取的數據(可能包含產品功能,集成和功能)以進行進一步處理。

    步驟3:將文檔分成較小的塊
    Extracted 1500 links.

    >現在我們有了原始數據,我們使用recursivecharactertextsplitter將文檔分解為較小的塊。這樣可以確保沒有單個塊超過語言模型的令牌限制。 >

    步驟4:生成文檔塊的嵌入

    現在,我們使用sencencetransformer將每個文本塊轉換為嵌入式。這些嵌入代表了高維矢量空間中文本的含義,這對於以後搜索和檢索相關文檔很有用。

    import json
    
    # Function to scrape and extract data from the URLs
    def scrape_data_from_links(links):
        scraped_data = []
    
        for link in links:
            try:
                response = requests.get(link)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Example: Extract 'title' and 'content' (modify according to your needs)
                title = soup.find('title').get_text()
                content = soup.find('div', class_='content').get_text()  # Adjust selector
    
                # Store the extracted data
                scraped_data.append({
                    'url': link,
                    'title': title,
                    'content': content
                })
            except requests.exceptions.RequestException as e:
                print(f"Error scraping {link}: {e}")
    
        return scraped_data
    
    # Scrape data from the extracted links
    scraped_contents = scrape_data_from_links(all_extracted_links)
    
    # Save scraped data to a JSON file
    with open('/content/scraped_data.json', 'w') as outfile:
        json.dump(scraped_contents, outfile, indent=4)
    
    print("Data scraping complete.")
    > sencencetransformer用於生成文本塊的嵌入,創建捕獲語義信息的密集矢量表示。函數embed_documents處理多個文檔並返回其嵌入,而Embed_query生成了用戶查詢的嵌入式。 Chroma是一個矢量存儲,管理這些嵌入並根據相似性實現有效的檢索,從而允許快速準確的文檔或查詢匹配。

    >步驟5:設置獵犬

    >現在我們配置了獵犬。該組件根據用戶查詢搜索最相關的文本塊。它將最類似的文檔塊檢索到查詢中。

    >
    import requests
    from bs4 import BeautifulSoup
    from collections import deque
    
    # Function to extract links using BFS
    def bfs_link_extraction(start_url, max_depth=3):
        visited = set()  # To track visited links
        queue = deque([(start_url, 0)])  # Queue to store URLs and current depth
        all_links = []
    
        while queue:
            url, depth = queue.popleft()
    
            if depth > max_depth:
                continue
    
            # Fetch the content of the URL
            try:
                response = requests.get(url)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Extract all links in the page
                links = soup.find_all('a', href=True)
                for link in links:
                    full_url = link['href']
                    if full_url.startswith('http') and full_url not in visited:
                        visited.add(full_url)
                        queue.append((full_url, depth + 1))
                        all_links.append(full_url)
            except requests.exceptions.RequestException as e:
                print(f"Error fetching {url}: {e}")
    
        return all_links
    
    # Start the BFS from the homepage
    start_url = 'https://www.example.com'  # Replace with the actual homepage URL
    all_extracted_links = bfs_link_extraction(start_url)
    print(f"Extracted {len(all_extracted_links)} links.")
    • 獵犬使用相似性搜索來從矢量商店找到最相關的塊。
    • 參數k = 6意味著它將返回與查詢最相關的前6個塊。

    >步驟6:創建提示模板

    接下來,我們創建一個提示模板,該模板將格式化語言模型的輸入。該模板既包含上下文(檢索到的塊)和用戶的查詢,從而指導模型以僅基於提供的上下文生成答案。

    Extracted 1500 links.
    • > ChatPromptTemplate格式格式化模型的輸入,以強調答案僅基於給定上下文的需求。
    • {context}將被相關的文本塊替換,{Quartion}將被用戶的查詢替換。
    >步驟7:設置語言模型

    在此步驟中,我們初始化OpenAI GPT模型。該模型將根據獵犬提供的結構化上下文生成答案。

    >

    import json
    
    # Function to scrape and extract data from the URLs
    def scrape_data_from_links(links):
        scraped_data = []
    
        for link in links:
            try:
                response = requests.get(link)
                soup = BeautifulSoup(response.content, 'html.parser')
    
                # Example: Extract 'title' and 'content' (modify according to your needs)
                title = soup.find('title').get_text()
                content = soup.find('div', class_='content').get_text()  # Adjust selector
    
                # Store the extracted data
                scraped_data.append({
                    'url': link,
                    'title': title,
                    'content': content
                })
            except requests.exceptions.RequestException as e:
                print(f"Error scraping {link}: {e}")
    
        return scraped_data
    
    # Scrape data from the extracted links
    scraped_contents = scrape_data_from_links(all_extracted_links)
    
    # Save scraped data to a JSON file
    with open('/content/scraped_data.json', 'w') as outfile:
        json.dump(scraped_contents, outfile, indent=4)
    
    print("Data scraping complete.")
    我們初始化Chatopenai模型,該模型將處理提示並生成答案。 >
      >我們使用較小的模型“ GPT-4O-Mini”進行有效的處理,儘管較大的模型可以用於更複雜的任務。
    • 步驟8:構建抹布管道
    • >在這裡,我們將所有組件(Retriever,Prest,llm)集成到一個內聚的RAG管道中。該管道將​​進行查詢,檢索相關上下文,通過模型並生成響應。

    > RunnablePassThrough確保查詢直接傳遞到提示。

    > stroutputparser用於清潔和格式化模型的輸出為字符串格式。

    [
        {
            "url": "https://www.example.com/page1",
            "title": "Page 1 Title",
            "content": "This is the content of the first page. It contains 
            information about integrations and features."
        },
        {
            "url": "https://www.example.com/page2",
            "title": "Page 2 Title",
            "content": "Here we describe the functionalities of the product. 
            It includes various use cases and capabilities."
        }
    ]
      >步驟9:測試抹布管道
    • 最後,我們使用各種用戶查詢來測試管道。對於每個查詢,系統都會檢索相關文檔塊,通過語言模型將它們傳遞並生成響應。
    • 系統通過每個查詢進行迭代,調用管道並打印生成的答案。

    對於每個查詢,模型都會處理檢索到的上下文,並提供了基於上下文的答案。

    下面是原始代碼的抹布輸出的屏幕截圖。敏感信息已被掩蓋以維持完整性。

    import json
    
    # Load the scraped JSON file containing the web data
    with open('/content/scraped_contents_zluri_all_links.json', 'r') as file:
        data = json.load(file)
      通過結合Web刮擦,數據提取和高級檢索功能(RAG)技術,我們為公司智能創建了一個強大而可擴展的框架。提取鏈接和刮擦數據的第一步確保我們從網絡中收集相關和最新信息。第二部分重點是查明與產品相關的特定細節,從而更容易對數據進行分類和處理數據。

      >最後,利用抹布使我們能夠通過從廣泛的數據集中檢索和綜合上下文信息來動態響應複雜的查詢。這些組件共同構成了一個綜合設置,可用於構建能夠收集,處理和提供可行的公司的代理平台。該框架可以成為開發高級情報系統的基礎,使組織能夠自動進行競爭分析,監控市場趨勢並了解其行業。

      >部署和縮放

      >一旦建立了公司情報系統,下一步就是部署和擴展其供生產使用。您可以在AWS或GCP等雲平台上部署該系統以靈活性和可擴展性,或者如果數據隱私為優先級,則選擇本地解決方案。為了使系統更加用戶友好,請考慮構建一個簡單的API或UI,允許用戶與平台進行交互並毫不費力地檢索見解。隨著系統開始處理較大的數據集和更高的查詢負載,必須有效擴展。

      這可以通過利用分佈式向量存儲和優化檢索過程來實現,從而確保管道在大量使用下保持響應迅速和快速。借助正確的基礎架構和優化技術,代理平台可以增長以支持大規模運營,實現實時見解並保持公司情報的競爭優勢。

      >

      結論

      在當今數據驅動的世界中,

      從非結構化公司數據中提取可行的見解至關重要。檢索功能生成(RAG)系統結合了數據刮擦,指針提取和智能查詢,以創建一個強大的公司情報平台。通過組織關鍵信息並實現實時,特定於上下文的響應,RAG系統賦予組織中智能決策的能力,幫助企業做出數據支持,適應性的決策。

      這種可擴展的解決方案隨您的需求而生長,處理複雜的查詢和較大的數據集,同時保持準確性。借助正確的基礎設施,這個AI驅動的平台成為了更智能運營的基石,使組織能夠利用其數據,保持競爭力並通過組織中的智能決策來推動創新。

      鑰匙要點

      • 通過從多個來源啟用自動,有效的數據收集,以最小的努力啟用自動,有效的數據收集,從而增強了公司的智能。
      • 提取關鍵數據點將非結構化的內容轉換為有組織的,可行的知識,增強了對AI驅動的見解的公司智能。
      • >將抹布與自定義矢量商店相結合併優化的檢索器可實現智能的,上下文感知的響應,以獲得更好的決策。
      • 基於雲的解決方案和分佈式向量商店確保有效縮放,處理較大的數據集和查詢負載而不會損失績效。
      • rag管道處理實時查詢,直接從知識庫中傳遞準確的,按需的見解。
      獎勵:在以下鏈接中提供了此處討論的所有代碼。共有4個筆記本,每個筆記本都有自我解釋的名稱。隨時探索,發展和革新企業!

      常見問題

      q

      1。 在此設置中使用檢索增強生成(RAG)的目的是什麼? RAG通過將信息檢索與生成AI相結合,增強了AI模型提供上下文感知響應的能力。它可以對大型數據集進行更明智的查詢,從而更容易檢索精確的,相關的答案,而不僅僅是執行基本的關鍵字搜索。

      q 2。 需要哪些工具和庫來構建博客中描述的系統?使用的主要工具和庫包括Python,用於網絡刮擦的美麗套件,用於管理文檔檢索的Langchain,用於自然語言處理的OpenAI模型以及用於存儲矢量化文檔的Chroma。這些組件共同創建一個全面的公司情報平台。 指針提取過程如何在此系統中起作用?指針提取涉及從刮擦內容中識別特定信息,例如產品功能,集成和故障排除提示。數據是使用及時驅動系統處理的,該系統將信息組織到結構化的,可行的見解中。這是通過AI模型和自定義提示的組合來實現的。 Q 4。 RAG和AI代理如何改善公司的智能? RAG和AI代理通過自動化數據檢索,處理和分析來增強公司智能

      ,使企業能夠提取實時,可行的見解。為什麼數據刮擦對於公司情報很重要?數據刮擦有助於通過從多個來源收集和構造有價值的信息來建立強大的公司智能

      系統以進行明智的決策。

      >本文所示的媒體不歸Analytics Vidhya擁有,並由作者的酌情決定使用。

以上是在組織中建立用於智能決策的破布系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Sam俱樂部在AI上押注以消除收據檢查並增強零售Sam俱樂部在AI上押注以消除收據檢查並增強零售Apr 22, 2025 am 11:29 AM

革新結帳體驗 Sam's Club的創新性“ Just Go”系統建立在其現有的AI驅動“掃描和GO”技術的基礎上,使會員可以在購物旅行期間通過Sam's Club應用程序進行掃描。

Nvidia的AI Omniverse在GTC 2025擴展Nvidia的AI Omniverse在GTC 2025擴展Apr 22, 2025 am 11:28 AM

NVIDIA在GTC 2025上的增強可預測性和新產品陣容 NVIDIA是AI基礎架構的關鍵參與者,正在專注於提高其客戶的可預測性。 這涉及一致的產品交付,達到績效期望以及

探索Google的功能探索Google的功能Apr 22, 2025 am 11:26 AM

Google的Gemma 2:強大,高效的語言模型 Google的Gemma語言模型家族以效率和性能而慶祝,隨著Gemma 2的到來而擴展。此最新版本包括兩種模型:270億個參數VER

下一波《 Genai:與Kirk Borne博士的觀點》 -Analytics Vidhya下一波《 Genai:與Kirk Borne博士的觀點》 -Analytics VidhyaApr 22, 2025 am 11:21 AM

這一領先的數據劇集以數據科學家,天體物理學家和TEDX演講者Kirk Borne博士為特色。 Borne博士是大數據,AI和機器學習的著名專家,為當前狀態和未來的Traje提供了寶貴的見解

AI適合跑步者和運動員:我們取得了出色的進步AI適合跑步者和運動員:我們取得了出色的進步Apr 22, 2025 am 11:12 AM

這次演講中出現了一些非常有見地的觀點——關於工程學的背景信息,這些信息向我們展示了為什麼人工智能如此擅長支持人們的體育鍛煉。 我將從每位貢獻者的觀點中概括出一個核心思想,以展示三個設計方面,這些方面是我們探索人工智能在體育運動中應用的重要組成部分。 邊緣設備和原始個人數據 關於人工智能的這個想法實際上包含兩個組成部分——一個與我們放置大型語言模型的位置有關,另一個與我們人類語言和我們的生命體徵在實時測量時“表達”的語言之間的差異有關。 Alexander Amini 對跑步和網球都很了解,但他還

傑米·恩格斯特羅姆(Jamie Engstrom)關於卡特彼勒的技術,人才和轉型傑米·恩格斯特羅姆(Jamie Engstrom)關於卡特彼勒的技術,人才和轉型Apr 22, 2025 am 11:10 AM

卡特彼勒(Caterpillar)的首席信息官兼高級副總裁傑米·恩格斯特(Jamie Engstrom)領導了一支由28個國家 /地區的2200多名IT專業人員組成的全球團隊。 在卡特彼勒(Caterpillar)工作了26年,其中包括她目前的四年半,Engst

新的Google照片更新使任何具有Ultra HDR質量的照片流行新的Google照片更新使任何具有Ultra HDR質量的照片流行Apr 22, 2025 am 11:09 AM

Google Photos的新Ultra HDR工具:快速指南 使用Google Photos的新型Ultra HDR工具增強照片,將標準圖像轉換為充滿活力的高動態範圍傑作。對於社交媒體而言,此工具可提高任何照片的影響,

SQL中的TCL命令是什麼? - 分析VidhyaSQL中的TCL命令是什麼? - 分析VidhyaApr 22, 2025 am 11:07 AM

介紹 交易控制語言(TCL)命令在SQL中對於管理數據操縱語言(DML)語句的更改至關重要。 這些命令允許數據庫管理員和用戶控制事務過程

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器