首頁 科技週邊 人工智慧 在Sqlite中檢索增強發電

在Sqlite中檢索增強發電

Feb 26, 2025 am 02:49 AM

這個分為兩部分的系列使用SQLite進行機器學習探索。 上一篇文章討論了SQLite在生產就緒的Web應用程序中的越來越多的作用。本文著重於使用sqlite實施檢索功能。

>

>用於使用生成AI的自定義Web應用程序,請訪問losangelesaiapps.com >

代碼可用

>在此處

傳統的抹布實施通常涉及:

    >在抹布上搜索教程。
  1. 選擇一個流行的框架(Langchain,LlamainDex)。
  2. 選擇一個雲向量數據庫(Pinecone,Weaviate)。
  3. >
  4. 集成這些組件。
  5. 有效,這種方法可能過於復雜,尤其是對於初學者而言。 本文使用SQLITE和
擴展和OpenAI API演示了一種更簡單的方法。 本系列的第1部分提供了SQLite功能的詳細概述。 對於本文,將SQLite的簡單性視為單文件數據庫就足夠了。

> sqlite-vec這種方法消除了對雲矢量數據庫和笨重框架的需求。

>

sqlite-vec:擴展sqlite的功率

Sqlite的強度在於其可擴展性。 與Python庫類似的擴展名添加了C中寫入的功能。一個很好的示例是全文搜索(FTS)擴展。 添加矢量搜索功能,從而使語義理解超出關鍵字匹配。 尋找“馬”可能會返回“馬術”或“小馬”。

使用虛擬表,提供:sqlite-vec

>sqlite-vec>自定義數據源:

數據可以駐留在數據庫文件之外(例如,CSV,API)。
  • 靈活功能:支持專業的索引和復雜的數據類型。
  • >無縫集成:與標準sqlite查詢語法集成。
  • >模塊:
  • 後端邏輯是在單獨的模塊中實現的。 使用:
  • >創建虛擬表
  • >指定模塊(在此,
)。

CREATE VIRTUAL TABLE my_table USING my_extension_module();
代碼演練

my_extension_module() vec0代碼(sqlite-vecrepo link

)使用

文件作為示例數據(主要是物理相關)。 是sqlite數據庫文件。

>安裝:.txtmy_docs.db>列出了必要的庫(

  1. )。創建一個虛擬環境並運行

    requirements.txt sqlite-vec>openaiopenai api鍵:python-dotenv獲取openai api鍵。 pip install -r requirements.txt

  2. > 加載擴展名:python代碼加載sqlite-vec>擴展名並創建一個虛擬表:

CREATE VIRTUAL TABLE my_table USING my_extension_module();

documents表存儲嵌入式(embedding),fileNames(file_name)和content(content)。 表示輔助字段。

  1. >>嵌入和插入:.txt代碼通過
  2. 文件迭代,使用OpenAI API生成嵌入式,然後將它們插入數據庫:>
db.enable_load_extension(True)
sqlite_vec.load(db)
db.enable_load_extension(False)

db.execute('''
    CREATE VIRTUAL TABLE documents USING vec0(
        embedding float[1536],
        +file_name TEXT,
        +content TEXT
    )
''')
  1. rag查詢:
# ... (OpenAI embedding function) ...

for file_name in os.listdir("data"):
    # ... (Open file, get content, get embedding) ...
    db.execute(
        'INSERT INTO documents (embedding, file_name, content) VALUES (?, ?, ?)',
        (serialize_float32(embedding), file_name, content)
    )
db.commit()
然後將結果用作openai聊天完成的上下文來回答查詢。

>

結論

>大大簡化了抹布。 它消除了對複雜框架和雲服務的需求,使其具有成本效益且易於迭代。 雖然縮放可能最終需要一個更健壯的數據庫,但sqlite-vec>為較小的項目提供了引人注目的解決方案。 擴展名支持多種編程語言。 sqlite-vec

Retrieval Augmented Generation in SQLite

以上是在Sqlite中檢索增強發電的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

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

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

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

熱門話題

PHP教程
1598
276
埃隆·馬斯克(Elon Musk)的自動駕駛特斯拉謊言終於趕上了他 埃隆·馬斯克(Elon Musk)的自動駕駛特斯拉謊言終於趕上了他 Aug 21, 2025 pm 04:51 PM

九年前,埃隆·馬斯克(Elon Musk)站在記者面前,宣布特斯拉(Tesla)正在大膽地邁向未來,這使每輛新的電動汽車與完全自動駕駛能力的完整硬件相提並論。

瀏覽器是代理AI未來的關鍵嗎?歌劇,困惑這樣認為 瀏覽器是代理AI未來的關鍵嗎?歌劇,困惑這樣認為 Aug 17, 2025 pm 03:45 PM

為什麼困惑能確定獲得網絡瀏覽器?答案可能在於地平線的根本轉變:代理AI互聯網的興起 - 瀏覽器可能是它的核心。

歐盟自然學分展示了通往市場驅動的親社會AI的途徑 歐盟自然學分展示了通往市場驅動的親社會AI的途徑 Aug 02, 2025 am 11:21 AM

了解歐盟自然信貸框架歐盟的性質信貸計劃引入了一個可量化的生物多樣性單位系統,旨在表彰和獎勵個人和團體積極參與恢復和保存

TORQ和AI4ALL合作夥伴建立更具包容性的AI人才管道 TORQ和AI4ALL合作夥伴建立更具包容性的AI人才管道 Aug 01, 2025 am 11:21 AM

本週,我與Torq首席人民官Karin Ophir Zimet和AI4All首席執行官Tess Posner談了他們的合作努力以及IT背後的變革性目標。

您是完美的,就像您所說的生成型人工智能 您是完美的,就像您所說的生成型人工智能 Aug 03, 2025 am 11:15 AM

總而言之,“您一樣完美的自我”線已經成為一種牢固的咒語,現代AI已準備好向任何想听到過時的陳詞濫調的用戶興起。 讓我們來談談。 對

AI代理類型和內存 AI代理類型和內存 Aug 17, 2025 pm 06:27 PM

隨著圍繞AI代理商的對話在企業和個人之間繼續發展,一個中心主題脫穎而出:並非所有的AI代理人都是平等的。從基本的,規則驅動的系統到高度先進的自適應模型,都有廣泛的範圍

AI和迷你獸人如何替代動物的測試藥物 AI和迷你獸人如何替代動物的測試藥物 Aug 01, 2025 am 11:23 AM

它們也是藥物測試未來的核心 - 有一天可以使實驗室動物過時。 1937年,動物測試是法律要求,這是由於涉及污染的抗生素的致命事件而引起的,造成了100 d d。

害怕超級智能AI正在驅使哈佛大學和麻省理工學院的學生退學 害怕超級智能AI正在驅使哈佛大學和麻省理工學院的學生退學 Aug 07, 2025 am 11:39 AM

現在,她因擔心“人工通用智能”的到來(一種能夠匹配或超過無數領域的人類績效的理論形式)而抓住了永久性的缺席,這可能會導致CI崩潰

See all articles