精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

從入門到精通:如何在React中構建人工智能驅動的梗圖生成器

譯文 精選
人工智能
?本文將介紹如何使用OpenAI、React、Fabric.js和DALL-E 3構建人工智能梗圖生成器,并創建配文,設計梗圖畫布,以及優化成本和性能。

譯者 | 李睿

審校 | 重樓

為什么要構建人工智能梗圖生成器?

梗圖(Meme)堪稱互聯網時代的“全民語言”。無論是想調侃朋友,還是想表達編程讓人崩潰的無奈,梗圖總能精準地表達其意境。然而,人工制作一張梗圖需要花費很長時間。首先需要找到合適的圖片,然后構思出幽默并且貼合情境的配文,還要巧妙地將圖片與文字融為一體,并且看起來不能像孩子的隨意涂鴉。

不過好在已經有了OpenAI和DeepSeek等工具,不僅可以自動化創作幽默內容,還能自動化生成當前流行的格式,讓用戶幾秒鐘內就能創作出梗圖。以下是生成梗圖的方法:

  • 為了從梗圖中生成引人入勝的配文,采用了一種特定于情境的方法。
  • 構建了一個超級簡單直觀的拖放式設計界面。
  • 找到降低API費用的新方法,能夠有效地控制預算。
  • 允許用戶保存他們最喜歡的梗圖,并添加了文本轉圖片的功能。

用戶喜歡使用的工具

在深入研究代碼的細節之前,首先探討技術堆棧。在不知道需要使用什么工具的情況下就開始制造是不切實際的行為。

  • React + TypeScript。React為用戶帶來了流暢、響應迅速的用戶界面,而TypeScript 可以幫助制作者捕捉到許多以前可能會出現的錯誤。
  • OpenAI/DeepSeek API。只要有預算,其他問題就不足為慮,因為Division-04能夠使用GPT-4 Turbo隨心所欲地生成犀利而有趣的配文。當預算有限時,DeepSeek就能發揮重要的作用。
  • Fabric.js。使用Fabric.js庫,可以輕松地拖動包含文本的圖像,而不是感覺難以掌控。
  • Vercel。在部署項目時,即使處在業務高峰時段,Vercel的邊緣緩存功能也能很好地緩解壓力。
  • Redis。Redis的入門門檻較低,實現過程簡便易行,同時還能有效防范API濫用現象,避免觸發速率限制 。

步驟1:設置自己的人工智能大腦

顯然,人工智能從互聯網上復制的短語并不適用于梗圖。梗圖需要將態度、措辭和一定程度的克制相結合。這就引出了一個更根本的問題——究竟該如何引導人工智能學會講笑話。其答案或許在于調整人工智能本身的提示。

以下是用于創建字幕的代碼片段:

1 // src/services/aiService.ts 
2 type MemePrompt = { 
3 template: string; // e.g., "Distracted Soul" 
4 context: string; // e.g., "When your code works on the first try" 
5 }; 
6
7 const generateMemeCaption = async ({ template, context }: MemePrompt) => { 
8 const prompt = ` 
9 Generate a sarcastic meme caption for the "${template}" template about "${context}". 
10 Rules: 
11 - Use Gen-Z slang (e.g., "rizz", "sigma") 
12 - Max 12 words 
13 - Add emojis related to the context 
14 `; 
15
16 const response = await openai.chat.completions.create({ 
17 model: "gpt-4-turbo", 
18 messages: [{ role: "user", content: prompt }], 
19 temperature: 0.9, // Higher = riskier jokes 
20 max_tokens: 50, 
21 }); 
22
23 return stripEmojis(response.choices[0].message.content); // No NSFW stuff allowed 
24 };

專業提示:如果為了營造幽默效果,可將相關參數值設定在0.7至0.9的范圍內,但出于安全考慮,需要確保始終通過OpenAI的調節端點來調節反應。

步驟2:構建梗圖畫布

如果使用過 HTML5 Canvas API,就會明白處理它們并非易事。幸運的是,Fabric.js可以實現這一功能。它直接在React中提供了類似photoshop的控件,并額外附帶了拖放功能。

以下是簡化版的Canvas組件:

1 // src/components/MemeCanvas.tsx 
2 import { FabricJSCanvas, useFabricJSEditor } from "fabricjs-react"; 
3
4 export default function MemeCanvas() { 
5 const { editor, onReady } = useFabricJSEditor(); 
6 const [textColor, setTextColor] = useState("#FFFFFF"); 
7
8 const addTextLayer = (text: string) => { 
9 editor?.addText(text, { 
10 fill: textColor, 
11 fontFamily: "Impact", 
12 fontSize: 40, 
13 stroke: "#000000", 
14 strokeWidth: 2, 
15 shadow: "rgba(0,0,0,0.5) 2px 2px 2px", 
16 }); 
17 }; 
18
19 return ( 
20 <> 
21 <button onClick={() => addTextLayer("Why React, why?!")}>Add Default Text</button> 
22 <input type="color" onChange={(e) => setTextColor(e.target.value)} /> 
23 <FabricJSCanvas className="canvas" onReady={onReady} /> 
24 </> 
25 ); 
26 }

該功能有以下一些優勢:

  • 釋放文本圖層,以便在文檔的任何位置拖動。
  • 使用高級顏色選擇器添加描邊和陰影效果。
  • 雙擊可以編輯文本,以簡化編輯過程。

步驟3:速率限制

試想一下這樣的場景:在應用程序發布之后,很多人也萌生了制作梗圖的想法,這聽起來是不是很有趣?然而,當看到 OpenAI 的賬單竟超過比特幣價格時,或許就不會這么認為。

為了解決這個問題,在Redis中設置了滑動窗口速率限制。以下介紹在Vercel Edge Functions上的具體實現方法:

1 // src/app/api/generate-caption/route.ts 
2 import { Ratelimit } from "@upstash/ratelimit"; 
3 import { Redis } from "@upstash/redis"; 
4
5 const ratelimit = new Ratelimit({ 
6 redis: Redis.fromEnv(), 
7 limiter: Ratelimit.slidingWindow(15, "86400s"), // 15 requests/day per IP 
8 }); 
9
10 export async function POST(request: Request) { 
11 const ip = request.headers.get("x-forwarded-for") ?? "127.0.0.1"; 
12 const { success } = await ratelimit.limit(ip); 
13
14 if (!success) { 
15 return new Response("Slow down, meme lord! Daily limit reached.", { 
16 status: 429, 
17 }); 
18 } 
19
20 // Proceed with OpenAI call 
21 }

節省成本的妙招

  • 緩存流行的提示,例如“熱線來電”以及“拉取請求獲得批準”等。
  • 使用CloudFlare緩存生成的圖像。

由DALL-E 3生成的人工智能梗圖

有時候,人們會認識到選擇完美的梗圖模板是一項不可能完成的任務。

1 // src/services/aiService.ts 
2 const generateCustomMemeImage = async (prompt: string) => { 
3 const response = await openai.images.generate({ 
4 model: "dall-e-3", 
5 prompt: ` 
6 A meme template about "${prompt}". 
7 Style: Flat vector, bold outlines, no text. 
8 Background: Solid pastel color. 
9 `, 
10 size: "1024x1024", 
11 quality: "hd", 
12 }); 
13
14 return response.data[0].url; 
15 }

更改輸出

  • 提示:“兩個開發人員就采用Redux和Zustand框架進行爭辯。”
  • 最終產品:將Redux和Zustand這兩個卡通人物的爭論,以兩個在紫色背景上動態呈現的圖標形式進行展示。

梗圖的歷史記錄功能(Zustad + LocalStorage)

為了讓用戶能夠保存梗圖,在Zustand的幫助下添加了梗圖的歷史記錄功能。

1 // src/stores/memeHistory.ts 
2 import { create } from "zustand"; 
3 import { persist } from "zustand/middleware"; 
4
5 type Meme = { 
6 id: string; 
7 imageUrl: string; 
8 caption: string; 
9 timestamp: number; 
10 }; 
11
12 interface MemeHistoryState { 
13 memes: Meme[]; 
14 saveMeme: (meme: Omit<Meme, "id" | "timestamp">) => void; 
15 } 
16
17 export const useMemeHistory = create<MemeHistoryState>()( 
18 persist( 
19 (set, get) => ({ 
20 memes: [], 
21 saveMeme: (meme) => { 
22 const newMeme = { 
23 ...meme, 
24 id: crypto.randomUUID(), 
25 timestamp: Date.now(), 
26 }; 
27 set({ memes: [newMeme, ...get().memes].slice(0, 100) }); 
28 }, 
29 }), 
30 { name: "meme-history" } 
31 ) 
32);

用戶操作指引

  • 首先創建一個梗圖,然后點擊保存。
  • 梗圖將在本地保存,并將以網絡格式呈現。
  • 已經保存的梗圖可以通過點擊在編輯器中重新加載。

結束語

構建人工智能梗圖生成器,不僅可以幫助開發人員加深對編程的理解,還可以幫助他們掌握應對各類突發狀況的技巧。然而,從實施嚴格的速率限制到承受Reddit網站的流量激增,這一過程并不輕松。

因此,開發人員可以從零基礎起步,根據收到的反饋不斷改進人工智能梗圖生成器。也許他們制作的梗圖會大受歡迎,并從中獲得令人滿意的回報。

原文標題From Zero to Meme Hero: How I Built an AI-Powered Meme Generator in React,作者:Mohit Menghnani

責任編輯:姜華 來源: 51CTO內容精選
相關推薦

2025-11-11 09:54:38

2023-08-04 09:00:00

人工智能GPT-4語言模型

2023-12-05 14:31:17

人工智能

2022-06-20 11:28:20

人工智能數據生成器

2024-03-28 14:29:52

人工智能

2021-12-16 10:59:52

云計算人工智能云應用

2022-06-04 14:46:27

人工智能醫療保健數據

2023-08-07 07:48:47

2022-12-15 08:49:58

ReactQR生成器

2024-02-28 08:00:00

人工智能Slackbot

2025-04-02 08:55:13

人工智能帖子生成器事件驅動

2024-12-23 08:00:00

2011-10-26 20:47:36

ssh 安全

2009-03-19 13:36:53

SSH安全通道遠程

2023-08-14 10:38:39

2021-01-04 11:10:08

人工智能存儲云計算

2024-01-09 13:34:35

2023-05-05 14:02:59

人工智能聊天機器人

2025-03-27 10:59:12

2023-12-25 22:27:38

點贊
收藏

51CTO技術棧公眾號

午夜精品123| 高清国产一区二区三区| 自拍亚洲一区欧美另类| 永久看看免费大片| 色综合亚洲图丝熟| 亚洲三级理论片| 久久久精彩视频| 91丨porny丨在线中文 | 日韩av有码在线| 中文字幕国产传媒| 波多野结依一区| 国产精品久久久久影院老司| 国产欧美一区二区视频| 手机在线国产视频| 综合一区中文字幕| 精品国产xxx| 欧美一区视频| 尤物九九久久国产精品的特点| 日韩欧美色视频| av在线不卡精品| 亚洲成年人影院| 在线观看一区二区三区三州| 五月婷婷久久久| 国产精品自在在线| 国产欧美韩国高清| 无码人妻精品一区二区三区不卡 | 亚洲天堂狠狠干| 一区二区三区福利| 欧美二区乱c黑人| 欧美a级片免费看| 国产精品午夜一区二区三区| 亚洲国产精品va在线看黑人| 国内av免费观看| 91久久久久久白丝白浆欲热蜜臀| 午夜亚洲福利老司机| 中文字幕在线中文| a天堂中文在线官网在线| 欧美国产一区二区| 日韩精品资源| 国产午夜在线观看| 日韩一级片av| 九九视频免费观看视频精品 | 三级性生活视频| 成人黄色视屏网站| 色哦色哦哦色天天综合| 欧美 日韩 国产在线观看| 国精产品一区一区三区mba下载| 亚洲色图清纯唯美| 四虎永久免费网站| bestiality新另类大全| 亚洲精品视频在线观看免费| 色中文字幕在线观看| 欧美一级二级三级区| 国产精品人人做人人爽人人添 | 在线中文字幕第一区| 久久韩剧网电视剧| 91精品国产闺蜜国产在线闺蜜| 亚洲91视频| 欧美高清无遮挡| 国产午夜精品无码| 亚洲国内欧美| 欧美有码在线视频| 精品久久久久久久久久久久久久久久久久| 美日韩精品视频| 国产精品久久久久久久电影| 亚洲在线观看av| 激情综合色丁香一区二区| 91久久久久久久久| 国产成人自拍一区| 久久女同精品一区二区| 日韩片电影在线免费观看| 日本www在线观看视频| 尤物在线观看一区| 丰满爆乳一区二区三区| 蜜桃成人精品| 在线不卡一区二区| 亚洲色图欧美另类| 亚洲精品3区| 日韩在线观看精品| 久久无码精品丰满人妻| 国产亚洲毛片在线| 成人久久久久久| 一区国产精品| 亚洲手机在线观看| 国产盗摄精品一区二区三区在线| 成人片在线免费看| 你懂的在线视频| 亚洲欧洲日本在线| 水蜜桃色314在线观看| 桃花岛成人影院| 制服丝袜成人动漫| 亚洲中文字幕一区| 日韩免费久久| 国内精品久久影院| 羞羞色院91蜜桃| 国产99久久久久| 美日韩免费视频| av色综合久久天堂av色综合在| 性欧美疯狂xxxxbbbb| 天堂在线资源视频| 成人知道污网站| 欧美精品一区在线观看| 黄色三级生活片| 国产精品v一区二区三区| 热草久综合在线| 精品人妻一区二区三区蜜桃 | 99热最新在线| 国产h视频在线观看| 亚洲黄色片在线观看| 一级黄色香蕉视频| 红杏aⅴ成人免费视频| 日韩在线视频一区| caoporn国产| 国产a区久久久| 亚洲一区高清| 成人香蕉视频| 欧美精品一区男女天堂| 暗呦丨小u女国产精品| 日韩精品免费视频人成| 国内一区在线| 日本色护士高潮视频在线观看| 欧美网站大全在线观看| 国产 中文 字幕 日韩 在线| 欧美黄在线观看| 国产日韩在线看片| 色一情一区二区三区四区 | 豆国产97在线 | 亚洲| 美女性感视频久久| 麻豆精品传媒视频| 国产99re66在线视频| 6080yy午夜一二三区久久| 欧美激情久久久久久久| 久久天堂精品| 欧美激情国产日韩| 国产一二三在线| 亚洲精品av在线播放| 免费中文字幕在线观看| 国产成人免费视频网站| 超碰人人爱人人| 精品国产伦一区二区三区观看说明 | 国产精品偷伦视频免费观看国产| 飘雪影院手机免费高清版在线观看| 亚洲综合一二区| wwwxxxx在线观看| 女生裸体视频一区二区三区| 91在线精品视频| 二区在线播放| 日韩一级片在线观看| 看免费黄色录像| 国产大陆精品国产| 屁屁影院ccyy国产第一页| 中文字幕久久精品一区二区 | 亚洲欧美日韩中文在线| 亚洲第一在线播放| 久久精品人人做| 日本久久精品一区二区| 色一区二区三区四区| 国产女人精品视频| 成人高清免费在线| 欧美不卡一区二区| 可以免费在线观看的av| 久久久一区二区三区| 波多野结衣天堂| 欧美h版在线| 91九色露脸| 国产精品99久久久精品无码| 18加网站在线| 精品国产免费一区二区三区香蕉| 国产无遮挡又黄又爽又色| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美日韩性生活片| 国产精品羞羞答答在线观看| 国产女人精品视频| 日本资源在线| 日韩精品在线第一页| av首页在线观看| 亚洲人成伊人成综合网小说| 无码人妻一区二区三区一| 亚洲在线网站| 在线视频一区观看| 国产精品超碰| 国产精品视频地址| 国模雨婷捆绑高清在线| 亚洲欧美第一页| 国产乱人乱偷精品视频a人人澡 | 日韩成人免费在线视频| 国产午夜精品美女毛片视频| 天天久久综合网| 国产亚洲综合精品| 中文字幕不卡每日更新1区2区| 中文字幕一区二区三区中文字幕| 欧美一级bbbbb性bbbb喷潮片| 无遮挡的视频在线观看| 精品国产区一区| 在线免费观看中文字幕| 亚洲香蕉伊在人在线观| 一级肉体全黄裸片| 成人性生交大片| 一区二区三区视频网| 极品尤物久久久av免费看| 亚洲精品中文字幕在线| 久久香蕉网站| 147欧美人体大胆444| 亚洲精品粉嫩美女一区| 久久久久久69| 免费在线看黄| 亚洲图片在区色| 免费观看的毛片| 欧美人与性动xxxx| 天天干天天干天天| 亚洲综合一区在线| 97精品在线播放| 久久久www成人免费无遮挡大片| 午夜视频在线网站| 三级一区在线视频先锋| 亚洲无人区一区| 午夜视频在线观| 日韩在线一区二区三区| 久久久久久免费看| 国内揄拍国内精品久久| 伊人色综合影院| 精品一区电影| 久久久久久久久久码影片| 亚洲精品高潮| 91亚洲精品一区| 美女视频一区| 国产精品一区二区3区| 自由日本语热亚洲人| 久久久久日韩精品久久久男男| fc2ppv国产精品久久| 日韩网站在线观看| av播放在线| 亚洲午夜久久久影院| 邻居大乳一区二区三区| 国产网站欧美日韩免费精品在线观看| 亚洲精品视频91| 日韩视频在线你懂得| 国产ts人妖调教重口男| 这里只有精品视频在线观看| 91好色先生tv| 欧美日韩小视频| 在线观看毛片网站| 欧美视频你懂的| 中文字幕一区二区在线视频| 在线观看一区日韩| 成人黄色片在线观看| 在线观看日韩高清av| 精品成人无码久久久久久| 91传媒视频在线播放| 久久久成人免费视频| 精品久久久久久久久久久久| 久久精品视频1| 色88888久久久久久影院野外| 波多野结衣电车| 欧美日本在线一区| 国产女人高潮时对白| 日韩欧美在线网站| 黄色美女一级片| 日韩精品欧美激情| 丁香婷婷在线观看| 精品国产欧美一区二区三区成人| 精品视频在线一区二区| 久久91亚洲精品中文字幕| 国产丝袜在线观看视频| 欧美在线视频观看| 精品久久毛片| 91九色露脸| 青青草这里只有精品| 日韩久久不卡| 中文字幕人成人乱码| 日韩一级片免费视频| 性欧美一区二区三区| 久久综合九色综合97婷婷| 无码人妻aⅴ一区二区三区69岛| 欧美国产日韩a欧美在线观看 | 日本国产一级片| 国产成人免费在线观看| 双性尿奴穿贞c带憋尿| 中文字幕第一页久久| 九九在线观看视频| 欧美午夜女人视频在线| 亚洲一区 中文字幕| 精品久久久三级丝袜| 黄网在线免费| 超碰97人人做人人爱少妇| 无码小电影在线观看网站免费| 国产精品久久不能| 97品白浆高清久久久久久| 欧美在线播放一区二区| 午夜久久99| 日韩欧美xxxx| 国产91精品久久久久久久网曝门| 无遮挡aaaaa大片免费看| 亚洲婷婷综合久久一本伊一区| 久久久精品一区| 国产系列在线观看| 九九热精品视频在线播放| 美女福利一区二区| 91久久久一线二线三线品牌| 国产欧美日韩| 国产一线二线三线女| 青青草国产精品97视觉盛宴| 在线观看亚洲免费视频| 国产精品狼人久久影院观看方式| 日韩av免费网址| 欧美日韩国产大片| 视频二区在线| 欧美大秀在线观看| **精品中文字幕一区二区三区| 久久久久久久久四区三区| 午夜久久黄色| 手机av在线免费| 国产亚洲综合av| www.国产高清| 亚洲第一视频网| 在线观看电影av| 国产拍精品一二三| 欧美一级精品| av无码精品一区二区三区| av激情综合网| 久久久久人妻一区精品色欧美| 欧美日韩一级片在线观看| 美女欧美视频在线观看免费| 午夜精品久久17c| 8x国产一区二区三区精品推荐| 伊人狠狠色丁香综合尤物| 轻轻草成人在线| 欧美偷拍一区二区三区| 狠狠色狠狠色综合日日五| 少妇高潮一区二区三区99小说| 久久91亚洲人成电影网站| 爱情电影网av一区二区| 伊人狠狠色丁香综合尤物| 蜜桃久久精品一区二区| 国产午夜精品久久久久久久久| 一本一道波多野结衣一区二区| 五月婷婷丁香网| 欧美影院在线播放| 在线视频亚洲专区| 久久久久久久久久久久久久国产| 91免费看`日韩一区二区| 国产精品500部| 亚洲精品国产精品乱码不99按摩 | 久久久久中文字幕亚洲精品 | 日本熟女毛茸茸| 亚洲精品自拍第一页| 亚洲永久av| 任我爽在线视频精品一| 欧美a一区二区| 精品在线观看一区| 欧美一区二区二区| 欧美xxx黑人xxx水蜜桃| 国产亚洲一区在线播放| 亚洲欧洲午夜| 国产精品815.cc红桃| 日本韩国欧美在线| h视频在线免费| 91精品久久久久久| 亚洲色图88| 亚洲麻豆一区二区三区| 欧美日韩一区免费| av大片在线观看| 成人欧美一区二区三区视频| 亚洲国产网站| b站大片免费直播| 欧美日本在线播放| 性欧美1819sex性高清大胸| 国产视频不卡| 亚洲欧美日韩一区在线观看| 色一情一交一乱一区二区三区| 欧美日韩精品二区第二页| 羞羞视频在线免费国产| 国产一区在线观| 奇米精品一区二区三区四区 | 91久久国产自产拍夜夜嗨| 黄色综合网站| xxx在线播放| 欧美一区二区三区在线视频| 国产精品69xx| 日本精品一区二区三区不卡无字幕| 理论电影国产精品| 久久久精品国产sm调教| 亚洲男人的天堂在线播放| 亚洲aⅴ网站| 免费av手机在线观看| 日本一区二区三区在线不卡| 超碰免费在线97| 热久久美女精品天天吊色| 久久久久久久久久久久久久| 日韩成人av一区二区| 欧美日精品一区视频| av色在线观看| 一级做a爰片久久| 99免费精品视频| 国产又爽又黄免费软件| 日本成人激情视频| 欧美日韩久久| 毛片视频免费播放| 日韩av综合网站| 免费观看在线一区二区三区|