🚀 文本轉SQL翻譯模型 - Millennials 介紹
我們的文本轉SQL翻譯模型專為文本轉SQL任務進行了微調,旨在革新系統理解自然語言指令並將其轉換為SQL查詢的方式。該模型基於CodeLLaMa 13B構建,並使用精心挑選的包含100k條SQL查詢生成指令的數據集進行了細緻的微調,確保了質量和精度。
🚀 快速開始
現在你的模型已經完成微調,可以開始生成響應了。你可以輕鬆地從自然語言指令生成SQL查詢。為此,你將使用我們的generate.py
腳本,該腳本支持快速推理,並且可以直接從Hugging Face模型中心獲取模型。
以下是使用該腳本的快速指南:
該腳本使用來自Hugging Face模型中心的預訓練模型進行推理,並打印生成的SQL查詢。
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("budecosystem/sql-millennials-13b")
model = AutoModelForCausalLM.from_pretrained("budecosystem/sql-millennials-13b")
prompt = "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.
USER: Create SQL query for the given table schema and question ASSISTANT:"
inputs = tokenizer(prompt, return_tensors="pt")
sample = model.generate(**inputs, max_length=128)
print(tokenizer.decode(sample[0]))
✨ 主要特性
- 專注於將自然語言文本轉換為SQL查詢。
- 在包含100k條SQL查詢生成指令的多樣化數據集上進行了微調。
- 易於集成和使用,可即時生成SQL查詢。
💻 使用示例
基礎用法
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("budecosystem/sql-millennials-13b")
model = AutoModelForCausalLM.from_pretrained("budecosystem/sql-millennials-13b")
prompt = "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.
USER: Create SQL query for the given table schema and question ASSISTANT:"
inputs = tokenizer(prompt, return_tensors="pt")
sample = model.generate(**inputs, max_length=128)
print(tokenizer.decode(sample[0]))
高級用法
目前文檔未提及高級用法相關內容,若有需要可進一步補充。
🔧 技術細節
訓練詳情
該模型在4塊A100 80GB GPU上訓練了約55小時。
屬性 |
詳情 |
每設備訓練批次大小 |
4 |
梯度累積步數 |
1 |
訓練輪數 |
3 |
訓練步數 |
19206 |
學習率 |
2e - 5 |
學習率調度器類型 |
cosine |
熱身步數 |
2000 |
優化器 |
adamw |
是否使用混合精度訓練(fp16) |
True |
訓練使用的GPU |
4塊A100 80GB |
📚 詳細文檔
為何選擇 Millennials 模型
1. 企業自動化數據庫管理
場景:中小型企業(SMEs)通常缺乏專門的IT團隊來處理數據庫查詢,這使得快速檢索特定數據以進行分析和決策變得具有挑戰性。
用例:可以將我們的文本轉SQL模型集成到公司的內部系統中,讓沒有技術SQL知識的員工也能檢索數據。他們可以輸入自然語言請求,例如“獲取上一季度所有超過10,000美元的交易列表”,系統將在模型的支持下將此請求轉換為相應的SQL查詢以檢索數據。
2. 自動化數據分析流程
場景:數據分析師和業務專業人員在生成洞察時,由於SQL查詢制定的複雜性,尤其是在需要即時或重複的數據檢索和分析時,常常會遇到瓶頸。
用例:在此場景中,我們的文本轉SQL模型可作為變革性的中介。通過將模型集成到他們的數據分析系統中,組織可以讓專業人員以自然語言輸入數據請求。例如,分析師可以輸入“顯示過去五年在線銷售增長的趨勢”,系統將立即將此請求轉換為SQL查詢,檢索數據,並將其集成到可視化工具中以立即生成洞察。此功能不僅加速了分析過程,還使不同組織部門的人員都能利用即時數據分析的力量,即使是非技術人員也無需深入瞭解SQL。
3. 增強內容管理系統(CMS)界面
場景:對於非技術內容管理人員來說,內容管理系統(CMS)在進行復雜的數據檢索或數據庫管理時通常不夠直觀。
用例:CMS提供商可以利用我們的模型來增強其系統的後端界面。內容管理人員可以使用自然語言請求特定數據,例如“查找2023年5月所有瀏覽量超過500的博客文章”,模型將生成相應的SQL查詢以檢索信息。此功能使數據庫管理更加便捷、高效且用戶友好。
4. 優化客戶支持
場景:客戶支持中心在解決工單或查詢時,通常需要從數據庫中檢索客戶或產品信息,這需要基本的SQL知識。
用例:可以將我們的模型集成到支持票務系統中,使支持人員能夠以自然語言輸入請求,例如“顯示本月來自紐約客戶的所有未解決工單”,並立即獲得解決問題所需的數據,從而提高客戶服務效率和響應時間。
5. 數據新聞和研究
場景:記者和研究人員經常依賴複雜的數據庫來收集工作所需的洞察和數據點,但可能缺乏SQL技術知識。
用例:通過將我們的文本轉SQL模型集成到研究軟件或新聞工具中,專業人員可以使用自然語言查詢數據庫。例如,記者可以輸入“檢索2022年德克薩斯州的平均家庭收入”,模型將幫助他們立即獲取這些數據,從而實現更高效的研究和數據驅動的故事講述。
貢獻
我們歡迎大家貢獻代碼以幫助改進模型或解決問題。請隨時提交拉取請求或提出問題以討論更改或改進。
致謝
我們要感謝開源社區以及為該模型奠定基礎的研究人員。
📄 許可證
本模型使用 llama2 許可證。