早些年的 AI 其實很笨,不太能理解人類真正的意思,但經過學者跟工程師們多年的努力,聊天機器人已經有很大的進展了。尤其是最近微軟推出的 ChatGPT,據說聰明到已經可以顛覆整個產業了!?
甚至傳聞 ChatGPT 已經足以取代軟體工程師了!事實真的是這樣嗎?難道我這次真的要失業了嗎?
這篇就來玩一個簡單的測試吧,來測試 ChatGPT 是不是真的有傳聞中的那麼厲害,是不是真的可以取代軟體工程師!那就廢話不多說,直接出動 ChatGPT 啦!
問問 ChatGPT
打開 ChatGPT 後,我直接問了這個問題:
請問我要如何在本地使用Docker建立起Laravel的開發環境?
問完後,不用幾秒, GPT 立刻就回了我一大串,如下面的截圖,洋洋灑灑的列出了六大步驟(完整原文貼在圖片下方)。
----- 以下內容全由 ChatGPT 產生 -----
當然可以!以下是一個簡單的步驟,讓你在本地使用Docker建立Laravel的開發環境:
-
安裝 Docker 和 Docker Compose:
如果你還沒有安裝 Docker,可以在官方網站上找到安裝說明:Get Docker
Docker Compose 通常與 Docker 一同安裝,但你也可以單獨安裝:Docker Compose 安裝說明 -
建立 Laravel 專案:
使用 Composer 創建 Laravel 專案,可以執行以下指令:
composer create-project --prefer-dist laravel/laravel your-project-name
-
建立 Docker Compose 檔案:
在 Laravel 專案的根目錄中建立一個 docker-compose.yml 檔案。以下是一個簡單的範例:
version: '3' services: app: image: 'php:7.4-fpm' volumes: - './your-project-name:/var/www/html' working_dir: /var/www/html ports: - '8000:8000' networks: - app-network webserver: image: 'nginx:latest' volumes: - './your-project-name:/var/www/html' ports: - '8080:80' networks: - app-network networks: app-network: driver: bridge
-
設定 Laravel 專案的 .env 檔案:
設定 Laravel 專案的 .env 檔案,確保資料庫設定等正確。
-
啟動 Docker 容器:
在終端機中,移動到包含 docker-compose.yml 的目錄,然後執行以下指令啟動容器:
docker-compose up -d
-
訪問 Laravel 專案:
打開瀏覽器,前往 http://localhost:8080(或你在 docker-compose.yml 中設定的端口),應該能看到 Laravel 的歡迎畫面。
現在,你已經在本地使用 Docker 成功建立了 Laravel 的開發環境!如果有其他問題或需要進一步的說明,隨時問我。
----- ChatGPT 內容到此為止 -----
結果分析
本來就知道該怎麼做的人,一看就知道,這段幾乎是正確答案,不只執行順序是對的,一些操作細節也都有說明到。
至於程式碼範例也幾乎都是對的,只要複製貼上,再調整一些地方就可以動了。
看完它的回答,我可以追問它,要怎麼安裝 composer,如果我不知道該怎麼做的話。
或是請他補充說明,像是問它 docker-compose.yml 中的 volumes 是什麼意思?它都可以正常的回答。而且它其實會記得前面的問題,所以是可以接著問的,不會給你一個毫無關聯的答案。
還有一些小細節,例如它會提供參考資料的來源。
個人想法
其實這並不是我第一次使用 ChatGPT 了,平常在工作的時候其實也會用。在 GPT 問世之前,工程師好的朋友就是 Google,雖然現在仍是,但是已經把一些時間轉移過去 GPT 了,我個人大概是 Google 8,GPT 2的分配吧。
什麼時候會使用 ChatGPT?
什麼時候會使用 ChatGPT? 大概是我對一件事情完全沒頭緒,不知道要下什麼關鍵字的時候吧。把問題丟給 ChatGPT,它會給我一大堆廢話內容,這些內容就可以再拿去 Google 下關鍵字,比較容易找到想要的東西。
又或者像是這篇的案例,我可能需要重頭做一件事,雖然知道該怎麼做,但有時候就是開始的那幾個步驟最麻煩,直接問 GPT,它就會給你一份接近可以動的範例,對我們來說很方便,可以節省很多時間。
ChatGPT 是否真的可以取代軟體工程師?
至於 ChatGPT 是否真的可以取代軟體工程師?我覺得還不至於啦,至少幾年內。
畢竟我認為 GPT 雖然可以產出東西,但本身如果沒有一些基本的知識,並沒有辦法判斷 GPT 的內容是否正確,這樣的話其實就很容易遇到問題。一個正常的超商店員不太可能把以上的內容跑起來吧?(難說,超商店員是全能的)
但我相信,繼續發展下去,有一天連完全不懂程式的人,也可以指揮 AI 來幫它完成程式開發工作了,至少 PM 可以做更多事了,不用凡事找工程師。