本文介紹了如何通過擴充的SQL在PolarDB上使用通義千問大模型,並通過模型產生的資料來和資料庫中的資料進行互動。
簡介
通義千問大模型基於Transformer大語言模型,在超大規模的預訓練資料上進行訓練。預訓練資料類型多樣,覆蓋廣泛,包括大量網路文本、專業書籍、代碼等。
為了協助您更好地理解和使用PolarDB AIGC的相關功能,PolarDB for AI將阿里雲通義千問模型部署到了PolarDB上,作為PolarDB的一個內建模型。同時,PolarDB for AI擴充了SQL的文法,方便使用者在資料庫內調用通義千問。此外,PolarDB預置了一些情境,您可以按照本文檔的使用說明部分,實現開箱即用。
典型情境
情感分析
分析一句話的情感傾向。主要用於電商評論分析、新聞報道的傾向性分析、輿情分析等。
產生正面/負面評價
根據一篇內容,產生正面或者負面的評價。
總結
根據一篇內容,產生對這篇文章的總結。
翻譯
將一篇中文內容翻譯成英文,或者將其他語言(包括英文在內)的內容翻譯成中文。
對話
根據一段內容產生答案。這個內容也可以帶有一些顯式的提示(prompt),答案將根據提示(prompt)產生。
使用說明
文法
根據模型是否上傳並部署在PolarDB for AI上,可將通義千問模型推理分為線上推理和離線推理兩種方式。具體的文法說明如下:
--線上推理
/*polar4ai*/SELECT * FROM PREDICT (MODEL modelname, SELECT col FROM tablename) with ()
/*polar4ai*/SELECT * FROM PREDICT (MODEL modelname, SELECT text) with ()
--離線推理
/*polar4ai*/SELECT * FROM PREDICT (MODEL modelname, SELECT col FROM tablename) with (mode='async')
/*polar4ai*/SELECT * FROM PREDICT (MODEL modelname, SELECT text) with (mode='async')
關於模型上傳和部署的更多細節,請參見模型使用流程及說明。
參數說明
參數名稱 | 參數說明 |
tablename | 表名。 |
col | 表的列名,也是模型的輸入。 |
modelname | 模型名稱,需要根據情境類型指定,取值如下:
|
text | 純文字。支援不建表直接執行,適合介面調用的情境。 |
mode | 模式。
說明 更多關於線上推理和離線推理的使用說明,請參見模型推理。 |
使用限制
為了保證查詢效能,線上預測預設只支援對單條資料的處理。如果有多條資料,只會取第一條。離線預測可以預測多條資料。
目前通義千問的token數為8000,但因為模型計算資源有限,如果結果不能在10秒內產生,則不會產生最終結果。這種情況下您可以增加AI節點,從而提高效能。
樣本
資料準備
執行如下SQL語句建立名為textinfo的表。
CREATE TABLE IF NOT EXISTS textinfo ( id INT NOT NULL, content TEXT NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
分別執行如下SQL語句,在textinfo表中添加如下資料:
INSERT INTO textinfo (id,content) VALUES (1,"這個東西只是看著還行,實際體驗上非常的不好,不推薦大家購買。") INSERT INTO textinfo (id,content) VALUES (2,"華為最新手機Mate 60 Pro自開賣後銷售火爆,目前已缺貨。知名分析師郭明錤周一發文稱,大幅提升Mate 60 Pro的出貨量預期,華為對於產業和股市的影響力不可忽視,這種影響力正在迴歸中。") INSERT INTO textinfo (id,content) VALUES (3,"今年暑期檔最大的變化是:好萊塢大片的失敗,與現實題材的國產片大行其道。 過去,好萊塢大片講究炫目視效,在題材上以動作、奇幻、冒險為主,主要靠視覺轟炸。而在後疫情時代,觀眾則越來越關注現實的、切身的內容。 今年的TOP 10電影,現實題材幾乎屠榜。 《消失的她》捆綁反戀愛腦與泰國殺妻等熱門話題、《八角籠中》深度挖掘王寶強的人生經歷主打草根逆襲;《孤注一擲》則切中人們對電信詐騙、緬甸詐騙園、荷官設局等社會熱點的好奇;《熱烈》也聚焦了普通人、小人物的成長路線。 回顧近幾年的中國電影市場,現實題材其實早就開始拔尖。 2018年《我不是藥神》,以31億票房拿下當年暑期檔冠軍。2019年的《掃毒2》、2021年《怒火·重案》《中國醫生》,再到2022年的《人生大事》……還有其他檔期的《奇蹟·笨小孩》《我的姐姐》等等。") INSERT INTO textinfo (id,content) VALUES (4,"30個字以內回答我你是誰")
體驗通義千問模型推理
情境一:情感分析
分析一句話的情感傾向。主要用於電商評論分析、新聞報道的傾向性分析、輿情分析等。
/*polar4ai*/ SELECT * FROM PREDICT (MODEL _polar4ai_tongyi_sa, SELECT content FROM textinfo WHERE id=1) WITH ();
返回結果:
負向
情境二:產生正面/負面評價
根據一篇內容,產生正面或者負面的評價。
產生正面評價:
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi_p_comment, SELECT content FROM textinfo WHERE id=2) with ()
返回結果:
華為Mate 60 Pro自開賣後銷售火爆,顯示出消費者對於華為品牌的認可和支援。華為作為中國知名科技企業,其在手機市場上的表現一直備受關注。郭明錤的發文進一步證實了華為在產業和股市上的影響力,這表明華為正在逐步迴歸到其應有的地位。華為的影響力不僅體現在其產品銷售上,還體現在其對於整個科技產業和股市的推動作用。我們應該鼓勵和支援像華為這樣的優秀企業,促進中國科技產業的持續發展。
產生負面評價:
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi_n_comment, SELECT content FROM textinfo WHERE id=2) with ();
返回結果:
華為Mate 60 Pro的銷售火爆讓人感到意外,但同時也表明消費者對於華為品牌的認可度和支援度依然很高。然而,這也可能與當前全球科技市場的不穩定因素有關。華為作為一家中國公司,在國際市場上一直受到政治和經濟壓力,這可能會影響其銷售業績。此外,知名分析師郭明錤的言論可能過於樂觀,忽視了華為目前面臨的挑戰和困難。綜上所述,華為的影響力雖然在迴歸中,但其未來的市場表現仍需要謹慎對待。
情境三:總結
根據一篇內容,產生對這篇文章的總結。
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi_summarize, SELECT content FROM textinfo WHERE id=3) with ();
返回結果:
今年暑期檔最大的變化是現實題材電影大受歡迎,好萊塢大片則表現不佳。中國電影市場中,現實題材電影早已成為主流,包括《我不是藥神》、《掃毒2》、《怒火·重案》等多部影片都取得了高票房。
情境四:翻譯
將一篇中文內容翻譯成英文,或者將其他語言(包括英文在內)的內容翻譯成中文。
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi_tran_2_en, SELECT content FROM textinfo WHERE id=1) with ();
返回結果:
The item looks okay, but the actual experience is very poor. I don't recommend buying it.
情境五:對話
根據一段內容產生答案。這個內容也可以帶有一些顯式的提示(prompt),答案將根據提示(prompt)產生。
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi, SELECT content FROM textinfo WHERE id=4) with ();
返回結果:
我是阿里巴巴達摩院開發的一款超大規模語言模型,我叫通義千問。
此外,您也可以直接輸入文本,得到結果。例如對“情境五:對話”這個例子,也可以執行:
/*polar4ai*/SELECT * FROM PREDICT (MODEL _polar4ai_tongyi, SELECT '30個字以內回答我你是誰') with ();
返回結果:
我是阿里巴巴達摩院開發的一款超大規模語言模型,我叫通義千問。