首頁 >科技週邊 >人工智慧 >LMQL簡介:SQL和大語言模型之間的橋樑

LMQL簡介:SQL和大語言模型之間的橋樑

Lisa Kudrow
Lisa Kudrow原創
2025-03-08 10:54:14837瀏覽

An Introduction to LMQL: The Bridge Between SQL and Large Language Models

結構化查詢語言

> SQL是數據庫管理的基石,可實現有效的數據存儲,檢索和操縱。 它的廣泛採用源於其在處理大量數據集中的簡單性和有效性。但是,不斷發展的數據格局引入了新的挑戰。

人工智能和大語言模型(LLM)的興起提供了強大的工具,但是與它們進行互動可能很麻煩。 這是lmql進入的地方。

LMQL由SRI實驗室開發,LMQL充當開發人員和LLM之間的橋樑。 它將SQL的結構化查詢能力帶入了語言模型的世界,簡化了互動並提高效率。

此教程封面:

什麼是lmql?
  • 為什麼使用lmql?
  • >設置LMQL
  • 實用的LMQL應用
  • lmql限制
  • 最佳實踐
  • 什麼是lmql?
LMQL或語言模型查詢語言是一種專為LLM設計的新型編程語言。 它將類似SQL的聲明性特徵與命令性腳本語法相結合,提供了一種更結構化的信息提取方法和從LLMS產生響應的方法。

>

>重要的是,LMQL擴展了Python,添加了新功能並擴大了其功能。 這使開發人員可以製作自然語言提示結合文本和代碼,從而提高查詢靈活性和表現力。 正如其創建者所說的那樣,LMQL無縫將LLM交互作用整合到程序代碼中,超越了傳統的模板。 它是在研究論文中引入的,“提示是編程:用於大語模型的查詢語言”,作為“語言模型提示”(LMP)的解決方案。

llms excel在問題回答和代碼生成等任務上,基於輸入概率生成邏輯序列。 LMP通過使用語言說明或示例來觸發任務來利用此功能。 高級技術甚至允許用戶,模型和外部工具之間進行交互。

挑戰在於為特定任務實現最佳性能或量身定制LLM,通常需要復雜的,特定於任務的程序,這些程序仍可能取決於臨時交互。 LMQL通過提供文本提示和腳本的直觀混合來解決此問題,從而使用戶能夠在LLM輸出上定義約束。

為什麼使用lmql?

>雖然可以從概念上提示現代LLM,從而最大程度地發揮其潛力並適應新模型,需要深入了解其內部工作和供應商特定的工具。 由於令牌化,諸如將輸出限制為特定單詞或短語的任務可能很複雜。 此外,使用LLM,無論是在本地還是通過API,由於其尺寸而昂貴。LMQL減輕這些問題。它通過利用預定義的行為和搜索約束來減少LLM調用。 它還簡化了提示技術,通常涉及用戶和模型或專用接口之間的迭代通信。 LMQL的約束功能對於生產環境至關重要,可確保可預測且可加工的產出。 例如,在情感分析中,LMQL可確保像“正”,“負”或“中性”之類的一致輸出,而不是更多的冗長,不容易解析的響應。 人類可讀的約束取代了直接與模型令牌一起使用的需求。

>

>設置LMQL

LMQL可以在本地安裝,也可以通過其在線遊樂場IDE訪問。對於使用Transformers或Llama.cpp。

>安裝和環境設置

本地安裝很簡單:

用於使用pytorch> = 1.11:的GPU支持

pip install lmql
建議使用虛擬環境。

>

存在運行LMQL程序的三種方法:
pip install lmql[hf]

>

>遊樂場:

>啟動基於瀏覽器的IDE(需要node.js)。通過
    > https://www.php.cn/link/4a914e5c38172ae9b61780ffbd0b2f90
  1. 訪問。 在 > python集成:lmql playground import and使用> decorator。
  2. 在操場或命令行中使用本地變壓器模型時,使用>。 lmql run啟動LMQL推理API .lmql理解LMQL語法
  3. lmql程序有五個關鍵部分: lmqllmql.run查詢:@lmql.query用戶和LLM之間的主要通信方法。 用於生成的文本,
用於可變檢索。

> lmql serve-model

>解碼器:指定解碼算法(例如,梁搜索)。可以在查詢或外部(以python)中定義。

>模型:加載的,並將其傳遞到外部或使用子句。 使用各種約束(停止短語,數據類型,字符/令牌長度,以下等級,以下等級,自定義約束)。
  • >分佈:定義輸出格式和結構。 [varname]> LMQL限制和社區支持{varname} LMQL的相對新穎性導致了一個小社區和不那麼全面的文檔。 OpenAI API的限制還限制了某些模型(例如ChatGpt)的全面利用。 但是,正在進行的發展有望得到改進。
  • 結論

    LMQL提供了一種與LLMS交互的功能強大的SQL風格的方法。它的Python集成和約束功能使其成為各種應用程序的寶貴工具。 要進一步學習,請探索有關LlamainDex的資源,CHATGPT替代方案,LLM與Pytorch,Langchain和Cohere Api的培訓。

以上是LMQL簡介:SQL和大語言模型之間的橋樑的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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