德扑之星有限公司官方网站

Drupal的OpenAI模塊介紹

 

人工智能AI的火熱⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾,對于CMS來說❣❦❧♡۵,顯得更加重要ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,因為AI最終需要分類有素的內容作為原始素材❣❦❧♡۵。

對于Drupal來說✺ϟ☇♤♧♡♢♠♣♥,也出現了很多相關模塊☾☽❄☃,我們之前介紹過Drupal的augmentor模塊⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾,可以搭配其他模塊實現對多個AI平臺的利用ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,今天重點介紹OpenAI模塊⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,該模塊也是一系列模塊✺ϟ☇♤♧♡♢♠♣♥,通過不同模塊⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,實現了對不同的OpenAI的調用♦☜☞☝✍☚☛☟✌✽✾✿❁❃。

 

 

 

OpenAI的模塊介紹

 

Drupal 的 OpenAI包括了多個模塊⑰⑱⑲⑳⓪⓿❶❷❸❹❺,主要的功能如下ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ,

OpenAI:核心模塊♀☿☼☀☁☂☄,主要實現了OpenAI的API對接以及其他模塊的基礎通用功能✺ϟ☇♤♧♡♢♠♣♥。
OpenAI Audio:子模塊⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,實現了對接 OpenAI audio 功能⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,語音轉文字的功能♦☜☞☝✍☚☛☟✌✽✾✿❁❃。
OpenAI ChatGPT:子模塊㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,實現了一個類似ChatGPT的對話框功能✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴。
OpenAI ChatGPT Devel Generate:子模塊㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉,類似Devel Generate模塊♀☿☼☀☁☂☄,但是這個生成主要是通過ChatGPT來生產一些更加真實的內容ⓣⓤⓥⓦⓧⓨⓩ,Drupal的Devel Generate模塊生成的全是一些無用的廢話ⅲⅳⅴⅵⅶⅷⅸⅹⒶⒷⒸⒹ。
OpenAI CKEditor integration:子模塊웃유ღ♋♂,與 CKEditor 5 編輯器集成☾☽❄☃,可以直接在用戶編輯的時候✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴,通過ChatGPT來實現自動完成㈠㈡㈢㈣㈤㈥㈦、提示♀☿☼☀☁☂☄、糾錯等相關功能❻❼❽❾❿⓫⓬⓭⓮⓯⓰。
OpenAI Content Tools:子模塊⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,該模塊實現了一些內容編輯的輔助功能ⓣⓤⓥⓦⓧⓨⓩ,比如生成摘要①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯、生成分類⒜⒝⒞⒟⒠⒡⒢⒣⒤、生成標簽等功能⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓。
OpenAI Embeddings:子模塊⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,該模塊可以通過 OpenAI 可以將Drupal的node或者圖片生成對應向量圖文☾☽❄☃。(可以借助向量數據庫來實現更高級的功能)☈⊙☉℃℉❅。
OpenAI Log Analyzer:子模塊✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴,該模塊可以借助 OpenAI來實現日志的讀取和分析✵✶✷✸✹✺✻✼❄❅。
OpenAI Prompt:子模塊❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣,工具模塊웃유ღ♋♂,該模塊提供了一個表單⒜⒝⒞⒟⒠⒡⒢⒣⒤,可以直接通過表單發生Prompt到ChatGPTⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙ,然后獲取對應的內容㈠㈡㈢㈣㈤㈥㈦。

 

 

 

OpenAI的主要功能介紹

 

1. 啟用模塊和配置Key

我們介紹OpenAI模塊中的幾個主要模塊功能☧☬☸✡♁✙♆。,、':∶;,

  • OpenAI ChatGPT
  • OpenAI CKEditor integration
  • OpenAI Content Tools.

主模塊依賴于Key模塊✵✶✷✸✹✺✻✼❄❅,用于保存OpenAI的key✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴,啟用以上模塊ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,然后第一步去設置OpenAI的keyⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙ,(OpenAI的key需要付費⒜⒝⒞⒟⒠⒡⒢⒣⒤,具體如何生成Key可以查閱相關資料ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ,本文不再贅述)

Configuration > OpenAI > Settings 

注意⑰⑱⑲⑳⓪⓿❶❷❸❹❺,此處有一個組織❣❦❧♡۵,這個一般不用填⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,也不要寫賬號的email⒜⒝⒞⒟⒠⒡⒢⒣⒤。

 

 

保存好之后☧☬☸✡♁✙♆。,、':∶;,就可以開啟OpenAI/ChatGPT其他功能模塊的使用了❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣。

 

2. OpenAI ChatGPT Explorer模塊

 

我們先體驗一下ChatGPT的對話功能☾☽❄☃,通過如下鏈接訪問 ChatGPT Explorer功能☧☬☸✡♁✙♆。,、':∶;,

 Configuration > OpenAI and open the “ChatGPT explorer” 

我們簡單問了一個問題✺ϟ☇♤♧♡♢♠♣♥,“列舉以下常見的AI模型和網站”♦☜☞☝✍☚☛☟✌✽✾✿❁❃,稍等片刻ⓣⓤⓥⓦⓧⓨⓩ,ChatGPT就給出了對應的答案如下ⅲⅳⅴⅵⅶⅷⅸⅹⒶⒷⒸⒹ,參考如下截圖✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴。

 

這個表單中有一個選項✵✶✷✸✹✺✻✼❄❅,中間有一些參數❣❦❧♡۵,這些參數有些需要搞清楚ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,才能讓Chat GPT更加高效的給我們回答問題⑰⑱⑲⑳⓪⓿❶❷❸❹❺。

  • Model:  模型♦☜☞☝✍☚☛☟✌✽✾✿❁❃,本身OpenAI有很多模型㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉,比如GPT-3.5 Turbo❻❼❽❾❿⓫⓬⓭⓮⓯⓰,GPT-4.0等模型⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,默認的是GPT-3.5 Turbo♦☜☞☝✍☚☛☟✌✽✾✿❁❃。 
  • Temperature: 溫度웃유ღ♋♂,類似于靈活度⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾,靈活度越高答案越發散越活躍☈⊙☉℃℉❅,更加有創造性웃유ღ♋♂,每次回答的結果差異更大☾☽❄☃。靈活度越低웃유ღ♋♂,答案越嚴謹ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ。 
  • Maximum tokens to generate:生成的Token長短❣❦❧♡۵,越長答案就越長ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ,或者設置具體的長度❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣,讓Chat GPT生成具體長度的㈠㈡㈢㈣㈤㈥㈦。
  • Profile:給Chat GPT一些說明和上下文ⓣⓤⓥⓦⓧⓨⓩ,比如你是一個計算機程序員❻❼❽❾❿⓫⓬⓭⓮⓯⓰,你是一個老師等等✵✶✷✸✹✺✻✼❄❅。

 

 

3. CKEditor integration 模塊

 

CKEditor integration 模塊實現了AI工具于 CKEditor 集成⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,前提是需要安裝CKEditor 5版本ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ。

配置:需要到Drupal的格式編輯里面☧☬☸✡♁✙♆。,、':∶;,找一個自己常用的編輯格式ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,啟用CKEditor5웃유ღ♋♂,然后配置對應的編輯器的按鈕✵✶✷✸✹✺✻✼❄❅,將Open AI的按鈕拖動到編輯里面☈⊙☉℃℉❅,即可啟用❣❦❧♡۵。

路徑:Configuration > Content authoring > Text formats and editors 

增加好OpenAI的按鈕之后☈⊙☉℃℉❅,下面就會有相應的選項✺ϟ☇♤♧♡♢♠♣♥,比如配置模型❻❼❽❾❿⓫⓬⓭⓮⓯⓰、溫度等✺ϟ☇♤♧♡♢♠♣♥,可以根據具體的需求填寫☧☬☸✡♁✙♆。,、':∶;。

 

 

按如上的配置㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉,配置好CKEditor的編輯按鈕之后ⓣⓤⓥⓦⓧⓨⓩ,就可以發布一篇文章㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,來試試OpenAI的功能❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣,包括文本生成⑰⑱⑲⑳⓪⓿❶❷❸❹❺、文本總結ⓚⓛⓜⓝⓞⓟⓠⓡⓢ、文本糾錯✺ϟ☇♤♧♡♢♠♣♥、內容翻譯等等☧☬☸✡♁✙♆。,、':∶;。

 

4. OpenAI 內容工具模塊 

OpenAI也提供了內容輔助工具模塊❻❼❽❾❿⓫⓬⓭⓮⓯⓰,主要包括分類自動生成ⅲⅳⅴⅵⅶⅷⅸⅹⒶⒷⒸⒹ、自動生成摘要⒜⒝⒞⒟⒠⒡⒢⒣⒤、文本調整等功能☈⊙☉℃℉❅,該功能不是集成到CKEditor웃유ღ♋♂,是類似于Drupal的Augmentor模塊✺ϟ☇♤♧♡♢♠♣♥,通過一個單獨的配置實現✺ϟ☇♤♧♡♢♠♣♥,首先設置一個來源字段⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾,然后根據字段做對應的操作㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,比如根據Title生成摘要☈⊙☉℃℉❅,根據Body生成標題❻❼❽❾❿⓫⓬⓭⓮⓯⓰,或者根據Body生成SEO摘要等都可以實現⒜⒝⒞⒟⒠⒡⒢⒣⒤。

 

5. OpenAI 文字轉語音模塊

語音和文字轉換模塊⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,這塊OpenAI提供了兩個模塊ⓣⓤⓥⓦⓧⓨⓩ,一個是text-to-speech模塊⒔⒕⒖⒗⒘⒙⒚⒛ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅰⅱ,一個是audio模塊♦☜☞☝✍☚☛☟✌✽✾✿❁❃,前者可以將文字轉換成語音⒔⒕⒖⒗⒘⒙⒚⒛ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅰⅱ,實現自動朗讀等功能⑰⑱⑲⑳⓪⓿❶❷❸❹❺,后者可以將音頻轉成文字㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,實現自動化文字웃유ღ♋♂、字母得功能웃유ღ♋♂。

這兩個模塊也比較簡單✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴,安裝好之后☧☬☸✡♁✙♆。,、':∶;,直接到對應得界面進行測試即可㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂。

 

 

6. OpenAI的繪圖模塊

OpenAI模塊內置了Dall-E的繪圖引擎⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,通過界面可以選擇相關參數♀☿☼☀☁☂☄,然后填寫好Prompt就可以直接調用♦☜☞☝✍☚☛☟✌✽✾✿❁❃。

 

 

我們測試了兩個prompt☾☽❄☃,一個是通過GPT生成的prompt☈⊙☉℃℉❅。

比如告訴GPT:

幫我生成一個微積分的Prompt☧☬☸✡♁✙♆。,、':∶;,我要用這個prompt來繪一張二維的微積分坐標示意圖☈⊙☉℃℉❅。

然后GPT生成了如下的Prompt:

 

當你學習微積分時웃유ღ♋♂,你會遇到許多有趣的圖形和函數❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣。現在①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯,讓我們一起來繪制一個簡單的微積分圖形吧⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾!

請你畫出函數 y = f(x) 的圖像웃유ღ♋♂,其中 f(x) 表示一個簡單的函數♀☿☼☀☁☂☄。例如⒔⒕⒖⒗⒘⒙⒚⒛ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫⅰⅱ,你可以選擇 f(x) = 2x + 1 或 f(x) = x^2 - 3x☧☬☸✡♁✙♆。,、':∶;。

  1. 在一個二維坐標系中繪制出函數 y = f(x) 的圖像☾☽❄☃。確保你的坐標軸刻度合適☧☬☸✡♁✙♆。,、':∶;,以便清晰顯示出函數的特征⓱⓲⓳⓴⓵⓶⓷⓸⓹⓺⓻⓼⓽⓾。

  2. 標注出函數曲線上兩個特定點的坐標㈠㈡㈢㈣㈤㈥㈦。例如웃유ღ♋♂,你可以選擇標注出函數曲線上 x = -1 和 x = 2 處的點❣❦❧♡۵,并計算出對應的 y 值✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴。

  3. 計算并標注出函數在兩個特定點處的斜率✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴。使用切線來表示斜率⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,切線的斜率可以通過計算函數曲線在該點的導數得到✺ϟ☇♤♧♡♢♠♣♥。

  4. 計算并標注出函數的定積分✵✶✷✸✹✺✻✼❄❅。定積分表示函數曲線與 x 軸之間的面積㈠㈡㈢㈣㈤㈥㈦。你可以選擇一個特定的區間❣❦❧♡۵,計算出該區間上函數曲線下方的面積✺ϟ☇♤♧♡♢♠♣♥,并在圖中進行標注☾☽❄☃。

完成這些步驟后⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,你將對函數的圖像☾☽❄☃、斜率和定積分有更深入的理解ⅲⅳⅴⅵⅶⅷⅸⅹⒶⒷⒸⒹ。祝你繪圖愉快❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣!

 

通過發送給OpenAI的DallE-3接口♦☜☞☝✍☚☛☟✌✽✾✿❁❃,得到了一張如下看似還有點像的圖

 

另外是手寫了一個Prompt☧☬☸✡♁✙♆。,、':∶;,生成一個三維坐標圖⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯,經過不斷調試웃유ღ♋♂,直接用英文寫的✵✶✷✸✹✺✻✼❄❅,用中文貌似GPT理解的更差一些㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,最終得到一個差不多70分的圖

Prompt:

Create a 3D space using the RGB color points, please place almost 20 points in the space, like these: 
Point A: (x = 128, y = 45, z = 78)
Point B: (x = 67, y = 189, z = 12)
Point C: (x = 255, y = 78, z = 167)
Point E: (x = 89, y = 221, z = 39)
Note: In this prompt, the x-coordinate represents the Red (R) component, the y-coordinate represents the Green (G) component, and the z-coordinate represents the Blue (B) component of each color.

 

 

后記

 

OpenAI 模塊集本身已經實現了很多OpenAI的功能❣❦❧♡۵,極大擴展了Drupal的AI能力①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯,隨著OpenAI 的Sora等模型的推出⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,可以基于OpenAI做更多的擴展功能❋❀⚘☑✓✔√☐☒✗✘ㄨ✕✖✖⋆✢✣,比如根據當前的內容生成一個視頻介紹①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯,這樣用戶就可以通過視頻方式直接學習了㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,起到輔助學習的功能☈⊙☉℃℉❅,另外可以把視頻下載到CMS中❣❦❧♡۵,這樣就能脫離OpenAI的接口⑰⑱⑲⑳⓪⓿❶❷❸❹❺,獨立運行❻❼❽❾❿⓫⓬⓭⓮⓯⓰。

另外也可以擴展Drupal內容的向量化♀☿☼☀☁☂☄,實現語義搜索㊀㊁㊂㊃㊄㊅㊆㊇㊈㊉、知識圖譜等功能ⒺⒻⒼⒽⒾⒿⓀⓁⓂⓃⓄⓅⓆⓇⓈⓉ,現有的OpenAI Embeddings需要第三方的向量數據庫支持⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵❆❇❈❉❊†☨✞✝☥☦☓☩☯。

當然㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,在完善模塊方面還有更多工作可以做⒃⒄⒅⒆⒇⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓,另外也可以參考OpenAI模塊ⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙ,做百度的文心一言模塊㈧㈨㈩⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂,實現對接國內的AI模型⒜⒝⒞⒟⒠⒡⒢⒣⒤。

 

創作不易ⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙ,轉載請注明出處①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯!

 

更多Drupal CMS相關內容☾☽❄☃,請參考我們其他相關文章ⓚⓛⓜⓝⓞⓟⓠⓡⓢ,

 

1☈⊙☉℃℉❅、常見開源可視化低代碼頁面構建框架對比

2⑰⑱⑲⑳⓪⓿❶❷❸❹❺、Drupal 的OpenAI模塊使用介紹

3✵✶✷✸✹✺✻✼❄❅、基于ChatGPT的Drupal模塊應用

4✤✥❋✦✧✩✰✪✫✬✭✮✯❂✡★✱✲✳✴、常見的CMS平臺比較

5ⓊⓋⓌⓍⓎⓏⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙ、在線展覽和多媒體展示建設方案

6⑰⑱⑲⑳⓪⓿❶❷❸❹❺、構建英文網站應該用什么框架❣❦❧♡۵?

7✺ϟ☇♤♧♡♢♠♣♥、如何通過Drupal Rector來快速升級Drupal

 

德扑之星官网下载 网站地图