2. 續寫 功能
💡 以下是一段故事的續寫,黑字部分是我原創的,「引言部分」是AI生成。
在這不到四坪的空間,我獨自一人站著,聞著熟悉的霉味。
這裡是我的房間,為何卻會如此不熟悉,擺設與裝飾都不是我所認識的那樣,但都是我喜歡的,符合我的品味。
拿起了牆上的畫框,仔細端詳。中間匡了一個飛龍牌的橡皮擦套,邊緣有些破損,外表都泛黃了。
「…國小時留下來的橡皮擦紙套,因為覺得「第一次用完橡皮擦」值得紀念,還特地為此拿去護貝表匡,以茲留念。」
原來…只是用完的橡皮擦套呀,還以為是自己設計的包裝作品,但確實很像我會做的事。
我輕輕地把它放回去,回望著房間,這時候我繼續把目光放在這個房間裡,桌子上有一張紙,上面寫著「泛型」,我馬上就想起了上個星期學習 TypeScript 時的經歷,那時我正在搞懂 Record、Partial、Required 和 Readonly 這四種泛型的定義和用途,而現在回想起來,它們可以用於簡化創建物件類型的過程,並為每個泛型提供了實現細節。
泛型…這什麼鬼?筆跡來看,確實像是我寫的字,但…這些單字根本像是天書一樣,看都看不懂。更何況,我怎麼會這麼邋遢,桌上東西也不收,就放著離開了。
踱步觀察著四周,看著桌子的那些紙張,散落整桌都是,不說還以為是案發現場…等等,案發現場?
突然,我回想起了上個星期的事情,我正在搞懂 TypeScript 內建的泛型,Record、Partial、Required 和 Readonly 都是我曾經試過的,但是當我深入了解它們之間的區別時,我就離開了房間,忘記了它們的價值。現在,這些紙張的出現讓我重新明白了,這些泛型是我程式設計的重要技術,而且對於快速建立物件類型來說,它們扮演了至關重要的角色。
短評:
很有趣的是,NotionAI真的會繼續寫下去,用前面的「小說體」繼續寫。而且還寫得有模有樣,雖然內容不盡人意就是了。
最奇妙的是,AI一直抓到「泛型」這部分的內容,有點「跳針」地從這段文字做變化,硬是要用這段內容來繼續寫下去,挺好笑的,哈。
3. 「讓我直接為你寫」功能 - 輸入「介紹Rust寫網頁的基本方法」
以下內容都是NotionAI生成
Rust 作為 Web 開發的新興語言,提供了豐富的 Web 開發工具,可以幫助開發者快速構建基於 Rust 的 Web 應用程序。建構 Web 應用程序的基本步驟包括:
- 建構網站的基礎架構,並決定主要的網站功能。
- 設計網站的 UI 和 UX,以及其他可用的設計元素。
- 編寫網站的後端代碼。
- 進行測試,以確保網站功能正常。
- 部署網站,並確保網站可以正常運行。
此外,開發者也可以使用 Rust 提供的其他額外功能,例如:Rust 可以用於構建混合網頁應用程序、管理資料庫和構建高性能的非同步網頁應用程序。此外,Rust 的安全性和可靠性也極大地增強了開發者在開發 Web 應用程序時的信心。
2. 輸入「提供Rust2個網頁程式碼範例」
以下是兩個基本的網頁應用程式碼範例,這兩個範例都使用 Rust 來構建:
// 導入必要的模組
use actix_web::{App, HttpServer};
// 建立網頁伺服器
fn main() -> std::io::Result<()> {
HttpServer::new(|| {
App::new()
.route("/", web::get().to(index))
})
.bind("127.0.0.1:8080")?
.run()
}
// 創建網頁首頁
async fn index() -> &'static str {
"Hello World!"
}
範例二:// 載入需要的模組
use actix_web::{App, HttpServer};
// 建立網頁伺服器
fn main() -> std::io::Result<()> {
HttpServer::new(|| {
App::new()
.route("/", web::get().to(index))
})
.bind("127.0.0.1:8080")?
.run()
}
// 創建一個顯示文字的網頁首頁
async fn index() -> &'static str {
"Welcome to Rust Web Development!"
}
總結
NotionAI就像是整合了Notion筆記的精簡版ChatGTP,主要針對一些筆記常用的功能做AI特化加強,而其中「摘要」和「翻譯」功能算是其中比較能夠穩定輸出,且輸出品質足夠高的功能。
其他功能則是「先玩玩就好」,不然像是上面提到的「鹽水蜂炮」那篇文章,放手交給AI生成一篇自己都不懂的主題文章,雖然看似文情並茂,但產出的內容「盡是鬼扯」,真的會貽笑大方。
REF