Hassan El Mghari 應(yīng)該是一名很成功的 AI 獨立開發(fā)者了。
4 年時間,陸續(xù)開發(fā)了 40 多款 AI 應(yīng)用,其中 roomGPT.io(290 萬用戶)、restorePhotos.io(110 萬用戶)等應(yīng)用達到了百萬級別的用戶量。而這些應(yīng)用,都是 Hassan 用一到兩周時間,「快速沖刺」出來的。
快速開發(fā)、快速上線,而且還都是基于開源模型進行開發(fā)。
不做投放,開源,堅持 Build in public。
用最低成本驗證 MVP,做的越多,對用戶的需求理解得越精準(zhǔn),下一款應(yīng)用成功的概率自然也就越大。
在 Al Engineer 近期的一場演講中,Hassan 分享了他如何快速構(gòu)建應(yīng)用,從創(chuàng)意構(gòu)思到產(chǎn)品落地的全流程經(jīng)驗,甚至還分享了他開發(fā)應(yīng)用的詳細(xì)流程和完整技術(shù)棧,很實在了。
其中,有很多有意思的觀點:
應(yīng)用開發(fā)者們常犯的一個典型錯誤就是應(yīng)用發(fā)布的速度不夠快,將問題過度復(fù)雜化。
用極快的速度將產(chǎn)品做到 90%的完成度,然后就推向市場,通過觀察真實的市場反應(yīng)再進行迭代優(yōu)化。
Hassan 構(gòu)建的大多數(shù)應(yīng)用都采用了極簡架構(gòu),核心功能往往只需一到兩次對 AI 模型的 API 調(diào)用即可完成。這種極簡性至關(guān)重要,不僅能最大化地提升開發(fā)速度,更有助于快速、低成本地驗證一個想法。將想法簡化的越徹底,你的開發(fā)速度就越快。
構(gòu)思階段是整個應(yīng)用開發(fā)流程中最關(guān)鍵的一環(huán)。Hassan 經(jīng)常會記錄靈感,同時用清單的形式列出來。Hassan 清單里記錄了前五名創(chuàng)意,能夠清楚地知道接下來要開發(fā)的五個應(yīng)用是什么。
Hassan 將大約 80%的時間都投入到了用戶界面的打磨上。只要愿意投入時間讓應(yīng)用的界面看起來美觀、易用且操作直觀,就能夠吸引到大量用戶。
Hassan 已經(jīng)開發(fā)了 40 多款應(yīng)用,但仍然不知道哪一個會獲得成功。降低這種不確定性風(fēng)險的唯一方法,就是簡化項目,然后盡早發(fā)布。
有意識地在去設(shè)計產(chǎn)品的傳播功能很重要。能讓用戶輕松分享自己創(chuàng)作內(nèi)容的應(yīng)用,表現(xiàn)往往要好得多。
超 10000 人的「AI 產(chǎn)品市集」社群!不錯過每一款有價值的 AI 應(yīng)用。
邀請從業(yè)者、開發(fā)人員和創(chuàng)業(yè)者,飛書掃碼加群:
進群后,你有機會得到:
最新、最值得關(guān)注的 AI 新品資訊;
不定期贈送熱門新品的邀請碼、會員碼;
最精準(zhǔn)的AI產(chǎn)品曝光渠道
01今天開發(fā)者的最大問題是發(fā)布速度太慢了
在分享一開始,Hassan El Mghari 就拋出了一個核心觀點:我們正處在一個歷史性的、最適合構(gòu)建(Build)應(yīng)用的黃金時代。
大量應(yīng)用出現(xiàn)的背后,一方面是 Cursor、Windsurf、Bolt 等工具出現(xiàn),讓代碼補全、應(yīng)用原型構(gòu)建和構(gòu)思過程變得極其容易,降低了開發(fā)的門檻和效率。另一方面,則是幾乎以周頻率出現(xiàn)的突破性新模型,能夠讓開發(fā)者構(gòu)建全新的應(yīng)用。
構(gòu)建新應(yīng)用就像一場數(shù)字游戲,而開發(fā)者需要做的,就是不斷地去嘗試。
Hassan El Mghari 開發(fā)了 40 多款應(yīng)用,且仍然在不斷地嘗試和迭代之中。他認(rèn)為,應(yīng)用開發(fā)者們常犯的一個典型錯誤就是應(yīng)用發(fā)布的速度不夠快,將問題過度復(fù)雜化。
Hassan 推崇極致的快速迭代。在任何一個項目上花費的時間,最多不會超過一到兩周,然后立即發(fā)布。相比于一個五人團隊耗時十個月精心打磨的應(yīng)用,有時這些快速發(fā)布的應(yīng)用反而能吸引數(shù)百萬用戶體驗并獲得極高評價。Hassan 將這個過程形容為一次歷時一到兩周的「快速沖刺」,在發(fā)布之后,加入評估機制,根據(jù)用戶的意見和抱怨,逐步完成后續(xù)迭代。
「用極快的速度將產(chǎn)品做到 90%的完成度,然后就推向市場,通過搶先體驗(Early Access)或 Beta 測試等形式,去觀察真實的市場反應(yīng)?!?/p>
Hassan 觀察到的另一個現(xiàn)象是,當(dāng)下值得構(gòu)建的好項目層出不窮。「如果你是一名構(gòu)建者(Builder),現(xiàn)在正是投身其中的最佳時機之一?!顾谧约旱?Notion 中維護著一個超過 70 個條目的創(chuàng)意清單,其中有 15 個項目是他正努力推進、希望在今年內(nèi)全部完成并發(fā)布的。
「這是一個激動人心的時代,你可以用極少的資源成就極大的事業(yè)?!?Hassan 分享,他構(gòu)建的許多應(yīng)用非常簡單,往往只依賴一到兩次 API 調(diào)用,最多是由兩三個調(diào)用構(gòu)成的一個調(diào)用鏈(chain)。但是能用如此少的 API 調(diào)用和簡潔的應(yīng)用架構(gòu),構(gòu)建出功能強大的產(chǎn)品,這一點令人十分著迷。
02從社交媒體中尋找真實的產(chǎn)品需求
幾年前我剛起步開發(fā)應(yīng)用時,常常對開發(fā)方向感到迷茫。于是,我的策略是去 X(推特)上發(fā)掘靈感,觀察人們正在討論什么、需要什么。當(dāng)時,我看到 Samina 發(fā)了一條推文:「誰能開發(fā)一個幫我挑選眼鏡的應(yīng)用?」 我的第一反應(yīng)是:「沒問題,這個需求我能實現(xiàn)?!?隨即,我開發(fā)了這個小工具:它收集用戶的具體需求,轉(zhuǎn)化為查詢參數(shù),然后調(diào)用亞馬遜的 API 來匹配相關(guān)產(chǎn)品,用戶點擊即可完成購買。
另一個應(yīng)用的開發(fā)靈感,則源于我的朋友 Theo 的一條推文:「我想要一個能幫我撰寫 Git Commit 信息的 AI 應(yīng)用?!?當(dāng)時,我們公司的 CTO 也認(rèn)為這是個絕佳的主意,于是我開始著手開發(fā)。它的工作流程極其簡單:當(dāng)你執(zhí)行git add
命令后,它會自動獲取代碼的變更差異(diff),將其發(fā)送給一個 AI 模型,然后將生成的提交信息展示給你,供你選擇是否接受。這是我早期開發(fā)的應(yīng)用中相當(dāng)成功的一個,累計獲得了約四萬次安裝下載。并且由于是開源的,它吸引了大量社區(qū)貢獻者,形成了一個非常健康的生態(tài)。
除此之外,我還構(gòu)建了很多其他類型的應(yīng)用,包括:
文本轉(zhuǎn)應(yīng)用類工具:這類工具很多,你可以輸入你想要的應(yīng)用描述,例如:「一個關(guān)于美國歷史的問答應(yīng)用」。它的工作原理是,將這個提示(Prompt)發(fā)送給一個 AI 模型生成項目規(guī)劃,再由另一個模型依據(jù)規(guī)劃編寫出 React 代碼并最終形成應(yīng)用。這個應(yīng)用已經(jīng)處理了約 500 萬次請求,生成了約 100 萬個應(yīng)用,累計用戶也超過了 100 萬。
實時圖像生成應(yīng)用:這個應(yīng)用同樣擁有超過 100 萬用戶,累計生成的圖像數(shù)量達到了約 4800 萬張。
草圖轉(zhuǎn)網(wǎng)頁應(yīng)用:它的功能是,你可以在一張餐巾紙上畫一個簡單的網(wǎng)頁應(yīng)用草圖,拍照上傳后,它就能為你生成相應(yīng)的代碼。這是我的另一個作品,擁有約 4 萬名用戶。
簡歷轉(zhuǎn)個人網(wǎng)站應(yīng)用:用戶上傳簡歷后,它能自動生成一個個人網(wǎng)站。
其他:還包括菜單可視化應(yīng)用、AI 聊天輔導(dǎo)應(yīng)用(你可以輸入感興趣的話題,比如「個人理財」,它會用小學(xué)生能理解的語言來解釋),以及一些與光學(xué)字符識別(OCR)相關(guān)的應(yīng)用。
03開發(fā)框架要盡可能簡單,方便快速迭代
我所構(gòu)建的大多數(shù)應(yīng)用,底層都遵循著一個高度相似且極簡的架構(gòu)范式。
通常,工作流可以歸結(jié)為四個步驟:
接收用戶輸入:包括文本、圖像等形式的數(shù)據(jù);
調(diào)用AI模型:將輸入發(fā)送至 Together AI 上的某個模型進行處理。例如,在一個圖像到圖像的應(yīng)用中,我將一張圖片發(fā)送給 AI 模型,生成另一張圖片;
將圖像或文本存儲到數(shù)據(jù)庫中:在許多場景下,我會將生成的圖像或文本存儲到數(shù)據(jù)庫中,以便向用戶展示。
向用戶呈現(xiàn)結(jié)果。
這是一個極其簡潔的架構(gòu),在絕大多數(shù)情況下,核心邏輯僅是一次API調(diào)用。用戶執(zhí)行操作,我調(diào)用一次 AI 模型的 API,獲取響應(yīng)后直接呈現(xiàn)給用戶。我堅信,這種極簡性至關(guān)重要。它不僅能最大化地提升開發(fā)速度,更有助于快速、低成本地驗證一個想法。將想法簡化的越徹底,你的開發(fā)速度就越快。
此外,使用 AI 開發(fā)應(yīng)用的一個好處是,針對 AI 模型更新迭代極快的情況,可以快速且輕松地替換和升級底層的 AI 模型。在絕大多數(shù)情況下,在操作上,你只需要修改一行代碼,來更新模型的名稱,同時甚至能解鎖全新的功能。我經(jīng)常會回頭去做這樣的維護工作,甚至?xí)眯碌?AI 模型重新發(fā)布一個已有的應(yīng)用,或者為它增添一個小功能。
我常用到的技術(shù)棧 (Tech Stack)包括:
AI模型:Together AI 提供的所有模型
全??蚣埽?/strong>Next.js & TypeScript
數(shù)據(jù)庫:Neon
身份驗證:Clerk
數(shù)據(jù)庫 ORM:Prisma (用于在 TypeScript 中進行數(shù)據(jù)庫操作)
前端UI:Shadcn/ui & Tailwind
對象存儲:S3
網(wǎng)站分析:Plausible (能夠追蹤獨立訪客數(shù)、來源渠道、地理分布和設(shè)備類型等信息數(shù)據(jù))
04從構(gòu)思到發(fā)布,只需要七步
我經(jīng)常被問到的一個問題是:「你的這些創(chuàng)意從哪來的?」 我認(rèn)為,關(guān)鍵在于將一閃而過的靈感,轉(zhuǎn)化為一個結(jié)構(gòu)化的清單列出來。我們總會在不經(jīng)意間迸發(fā)出好的想法,但大多數(shù)人不會記下來,而真正的關(guān)鍵在于將其捕捉和記錄下來。
因此,我會將想到的點子全部列出,當(dāng)我看到有趣的想法或產(chǎn)品時,會思考:「或許我可以用類似的方法論來構(gòu)建一些別的東西?!?構(gòu)思階段非常重要。我的清單里通常會記錄前五名的創(chuàng)意,這會讓我清楚地知道接下來要開發(fā)的五個應(yīng)用是什么。當(dāng)然,如果中途有新的、更令人興奮的想法出現(xiàn),我也會靈活調(diào)整。比如,下周如果有重磅的開源圖像模型發(fā)布,我很可能會立即投身于利用它開發(fā)一款新應(yīng)用。
這是我開發(fā)應(yīng)用的完整流程:
構(gòu)思與列表化:將所有想法記錄下來,構(gòu)思階段是整個流程的關(guān)鍵。
命名與域名:構(gòu)思一個簡短、易記的名稱。可以借助像 Domains GPT 這樣的 AI 工具來尋找靈感,并同步確認(rèn)對應(yīng)的域名是否可用。
設(shè)計工作流程:規(guī)劃應(yīng)用的核心交互路徑。例如,設(shè)計一個著陸頁,用戶點擊進入后上傳內(nèi)容,然后看到生成結(jié)果。你可以在紙上繪制草圖,也可以使用 Figma 等原型設(shè)計工具來將其梳理清晰。
開發(fā)最小可行版本 (MVP):致力于打造一個特定應(yīng)用的最簡化可行版本,其核心功能通常只需要一個 API 端點。
集成身份驗證與使用限制:當(dāng)擁有一個可運行的原型后,考慮身份驗證和使用限制等問題。你需要評估應(yīng)用的成本、為每位用戶設(shè)定的每日使用配額、以及是否允許用戶使用自己的 API 密鑰等,這些決策取決于應(yīng)用本身和所使用的 AI 模型。
發(fā)布準(zhǔn)備:包括精心制作 Open Graph Image、購買域名、集成分析工具、撰寫詳盡的 README 文件。由于我所用到的都是開源的,因此要保證代碼易于使用和克隆。
發(fā)布與推廣:我通常會在領(lǐng)英或 X 上發(fā)布我的產(chǎn)品,然后密切關(guān)注大家的反應(yīng)。
05給開發(fā)者的建議:高頻實踐、低成本、開源
接下來是我給各位開發(fā)者的一些建議:
構(gòu)思一個既讓你感興趣又非常簡單的想法。這種簡單,應(yīng)該達到能用五個詞向任何人清晰描述的程度。比如「Blink Shot——實時生成圖像」,或者「Llama Coder——文本轉(zhuǎn)應(yīng)用」。許多開發(fā)者常犯的錯誤,是構(gòu)想過于宏大的藍圖,然后投入漫長的時間去開發(fā),最終卻發(fā)現(xiàn)想法不可行、難以實現(xiàn)或無人問津。因此,關(guān)鍵在于一個讓你本人感到興奮且極其簡單的想法。
確保用戶界面是美觀的。在我展示的這些 AI 應(yīng)用中,我將大約 80%的時間都投入到了用戶界面的打磨上。我早期開發(fā)過幾個界面難看的應(yīng)用,無一例外地沒人用。后來我意識到,即便是最簡單的想法,只要你愿意投入時間讓界面看起來美觀、易用且操作直觀,它就能夠吸引到大量用戶。
保持應(yīng)用的簡潔性。我在前邊反復(fù)強調(diào)過這一點,我的大多數(shù)成功應(yīng)用,核心都只依賴一到兩次 API 調(diào)用。
嘗試使用最新的AI模型。我展示的許多應(yīng)用都得益于對最新 AI 模型的第一時間采用。例如,實時圖像生成應(yīng)用 Blink Shot,是在 Flux 模型發(fā)布僅兩天后推出的。成為第一批利用這項新技術(shù)的應(yīng)用之一,能夠極大地提升產(chǎn)品的傳播度。
盡早發(fā)布、持續(xù)迭代。即使我已經(jīng)開發(fā)了 40 個應(yīng)用,但仍然不知道哪一個會獲得成功。降低這種不確定性風(fēng)險的唯一方法,就是簡化你的項目,并盡早發(fā)布。如果它沒有獲得太多關(guān)注或使用,你至少只投入了一周而不是六個月的時間,這樣可以繼續(xù)去探索其他想法。
堅持免費與開源。這種策略能讓人們從你的代碼中學(xué)習(xí),更重要的是,人們更有動力去分享你的作品。
將分享機制融入到產(chǎn)品設(shè)計中。能讓用戶輕松分享自己創(chuàng)作內(nèi)容的應(yīng)用,表現(xiàn)往往要好得多。所以我會有意識地在去設(shè)計產(chǎn)品的傳播功能。比如當(dāng)用戶生成一張滿意的圖片,我會讓分享動作極其簡單,確保分享出去的鏈接預(yù)覽圖足夠精美、吸引人。最終要達成的目標(biāo),就是創(chuàng)造一個「創(chuàng)造-分享-吸引」的自發(fā)傳播循環(huán),讓每一個用戶都成為你產(chǎn)品最有效的推廣者。
多做、持續(xù)做!我的許多 AI 應(yīng)用表現(xiàn)并不好,說明它是一場數(shù)字游戲,你必須不斷地開發(fā)。開發(fā)的越多,就越發(fā)現(xiàn)哪些想法能真正引起用戶的共鳴,你的開發(fā)速度會越來越快,你選擇應(yīng)用想法的眼光也會越來越精準(zhǔn)。所以,這在很大程度上取決于你投入的時間和實踐的數(shù)量,構(gòu)建大量的應(yīng)用,然后觀察結(jié)果。
轉(zhuǎn)載原創(chuàng)文章請?zhí)砑游⑿牛篺ounderparker
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.