iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0
Odoo

豬神器在囧途 (LLM Prompting x odoo 17)系列 第 12

如何使用GenAI 生成odoo17可直接安裝使用的模組(Addons)

  • 分享至 

  • xImage
  •  

GenAI 有幾種狀況,已知跟未知,但都脫離不了只要把基本定義設定好後就可以生成出可用度很高的正確結果。

這系列是可行性相關的驗證,筆者依照過往技術背景經驗,逐一去驗證GenAI 可以幫我完成到哪個階段。

以下是筆者陸續研究出來的可行方案系列,目前繼續研究中。很多人可能會表示,用人工都可以直接寫出來;但現在換成用GenAI直接生成就有很多研究課題要做,畢竟太容易失控的結果只會造成需要花費更多的時間。

筆者將GenAI運用在首次開發二次開發上都花費很多時間在做研究,目前小有成果,以下將分享部分成果。


本文開始

應用情境一

  1. 在選單上顯示Hello
  2. 打開另外一個空白頁面,在上面顯示Hello字樣

作法:

  1. 提供正確的基本定義,將這個網址的資料做為基本定義餵給GenAI
  2. GenAI上給與設定需求:
    • 在menu上顯示hello的功能
    • 使用者點選後會出現一個空白網頁
    • 網頁上出現Hello字樣
    • 將生成出來的多個模組檔案打包成一個bash的腳本檔案
      • 使用者執行後就會自動展開跟生成出一個安裝模組

效果圖

這些是每次都長一樣的就不重複貼

  • 每一次生成出來的模組樣態都一樣[筆者固定讓其顯示custom Hello]
    image
  • 打包成一個bash 檔案如下
    • 每一個檔案就是一個模組
      • 以下是執行01-hello.sh展開後的狀態
        image
        image
        image
        image

image

實際執行效果

image
image


應用情境二 - ReturnValue

目的

  • 驗證從Linux OS取得時間並回傳到前端做顯示的可行性

作法

  1. 提供正確的基本定義,將這個網址的資料做為基本定義餵給GenAI (如果是相同session,可以不需要重餵)
  2. 取得系統執行後的時間並回傳數值
  3. 取得系統現在的資訊,使用python datetime模組
  4. 在web page中回傳顯示的today's datetime
  5. 將生成出來的多個模組檔案打包成一個bash的腳本檔案

效果圖

image
image


應用情境三 - ReturnValue - Send data from web to Linux OS

目的

  • 要驗證的是從前端介面可以回傳數值資料到Linux OS中的並實際被記錄下來的可用性

作法及效果

  • 沿用上面的成功範例
  • 動作原理
    • 在選單上顯示Hello with date
      image
    • 使用者在Web Page中輸入文字
    • 在表單提交時要有CSRF保護
      • 在傳送資料中需要注意CSRF保護的問題,不然生成後再執行時會有問題
    • 系統中會將輸入後的文字新增到csv檔案中
    • csv檔案被儲存在模組資料夾中
      image
  • 將所有程式碼檔案打包成一個bash的腳本檔

結論

  • 如果您跟筆者一樣想要用odoo17卻又不想花大錢跟對如何用GenAI做開發或應用有興趣,歡迎一起交流
  • odoo store上面很多好用的模組都需要花費很多金錢,有些模組是買了後有問題還得做二次開發或跟開發者往來交流,非常浪費時間;免費又好用的模組也有不少,但可用性尚待驗證。
  • 這篇主要是運用GenAI做首次開發為主,二次開發的部分也有很多可分享的心得,文章整理好後會釋出
  • 為什麼是開其他網頁去做交互,而不是直接使用原生QWEB 在原有的UI上做實驗? 原因是我只想驗證returnValue的可行性,QWEB的部分筆者還不熟,目前已排定在後面的課題研究中進行
  • 由於賽程已經中斷,這系列的文章就當成筆者的筆記或知識分享為主

上一篇
不想使用[付費三大雲]的舊版寄信解法
系列文
豬神器在囧途 (LLM Prompting x odoo 17)12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言