Skip to content

Commit 7350c2c

Browse files
committed
Add zh-TW translation
- Reorders `supportedLocales` in `src/lib/i18n/config.ts` to place `zh-tw` before `zh`. This is a MUST for auto-detect locale from accept-language header.
1 parent 440bb73 commit 7350c2c

37 files changed

Lines changed: 13086 additions & 5 deletions

messages/zh-tw.json

Lines changed: 2254 additions & 0 deletions
Large diffs are not rendered by default.

prompts.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ export default defineConfig({
4242

4343
// Internationalization
4444
i18n: {
45-
locales: ["en", "tr", "es", "zh", "ja", "ar", "pt", "fr", "it", "de", "nl", "ko", "ru", "he", "el", "az", "fa"],
45+
locales: ["en", "tr", "es", "zh", "zh-tw", "ja", "ar", "pt", "fr", "it", "de", "nl", "ko", "ru", "he", "el", "az", "fa"],
4646
defaultLocale: "en",
4747
},
4848

src/components/book/elements/locales/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import it from "./it";
2121
import pt from "./pt";
2222
import ja from "./ja";
2323
import zh from "./zh";
24+
import zhTW from "./zh-tw";
2425
import ko from "./ko";
2526
import ar from "./ar";
2627
import nl from "./nl";
@@ -44,6 +45,7 @@ const locales: Record<string, LocaleData> = {
4445
pt,
4546
ja,
4647
zh,
48+
"zh-tw": zhTW,
4749
ko,
4850
ar,
4951
nl,
@@ -74,7 +76,7 @@ export function getLocaleField<K extends keyof LocaleData>(
7476
}
7577

7678
// Export individual locale data for direct access if needed
77-
export { en, tr, az, fr, de, es, it, pt, ja, zh, ko, ar, nl, ru, el, fa, he };
79+
export { en, tr, az, fr, de, es, it, pt, ja, zh, zhTW, ko, ar, nl, ru, el, fa, he };
7880

7981
// Export the full locales object
8082
export { locales };

src/components/book/elements/locales/zh-tw.ts

Lines changed: 405 additions & 0 deletions
Large diffs are not rendered by default.

src/components/kids/layout/settings-modal.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ import { MusicVolumeSlider } from "./background-music";
1212

1313
const SUPPORTED_LOCALES = [
1414
{ code: "en", label: "English", flag: "🇺🇸" },
15-
{ code: "zh", label: "中文", flag: "🇨🇳" },
15+
{ code: "zh", label: "简体中文", flag: "🇨🇳" },
16+
{ code: "zh-tw", label: "繁體中文", flag: "🇹🇼" },
1617
{ code: "es", label: "Español", flag: "🇪🇸" },
1718
{ code: "pt", label: "Português", flag: "🇧🇷" },
1819
{ code: "fr", label: "Français", flag: "🇫🇷" },

src/components/layout/header.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ const FIREFOX_ADDON_URL = "https://addons.mozilla.org/firefox/downloads/file/467
8585

8686
const languages = [
8787
{ code: "en", name: "English" },
88-
{ code: "zh", name: "中文" },
88+
{ code: "zh", name: "简体中文" },
89+
{ code: "zh-tw", name: "繁體中文" },
8990
{ code: "es", name: "Español" },
9091
{ code: "pt", name: "Português" },
9192
{ code: "fr", name: "Français" },

src/components/prompts/language-switcher.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import { setLocale } from "@/lib/i18n/client";
1414
const languages = [
1515
{ code: "en", name: "English" },
1616
{ code: "zh", name: "中文" },
17+
{ code: "zh-tw", name: "繁體中文" },
1718
{ code: "es", name: "Español" },
1819
{ code: "pt", name: "Português" },
1920
{ code: "fr", name: "Français" },

src/components/prompts/translate-button.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ const localeToLanguage: Record<string, string> = {
1313
tr: "Turkish",
1414
es: "Spanish",
1515
zh: "Chinese",
16+
"zh-tw": "Traditional Chinese",
1617
ja: "Japanese",
1718
ar: "Arabic",
1819
pt: "Portuguese",
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
<div className="flex flex-col md:flex-row items-start gap-6 mb-8 p-6 bg-muted/50 rounded-lg">
2+
<img
3+
src="https://github.com/f.png"
4+
alt="Fatih Kadir Akın"
5+
className="w-32 h-32 rounded-full shrink-0 mt-1!"
6+
/>
7+
<div>
8+
<span className="block font-semibold text-lg mt-0!">Fatih Kadir Akın</span>
9+
<span className="block text-muted-foreground text-sm mb-3">Awesome ChatGPT Prompts(又名 prompts.chat)創始人</span>
10+
<span className="block text-sm text-muted-foreground m-0!">
11+
來自伊斯坦堡的軟體開發者,目前在 Teknasyon 擔任開發者關係負責人。著有多本關於 JavaScript 和提示工程的書籍。開源倡導者,專注於 Web 技術和 AI 輔助開發。
12+
</span>
13+
<div className="flex gap-3 mt-3">
14+
<a href="https://github.com/f" className="text-sm text-muted-foreground hover:text-foreground transition-colors">GitHub</a>
15+
<a href="https://twitter.com/fkadev" className="text-sm text-muted-foreground hover:text-foreground transition-colors">Twitter</a>
16+
<a href="https://blog.fka.dev" className="text-sm text-muted-foreground hover:text-foreground transition-colors">個人網站</a>
17+
</div>
18+
</div>
19+
</div>
20+
21+
我仍然記得那個改變一切的夜晚。
22+
23+
那是 **2022 年 11 月 30 日**。我坐在書桌前刷著 Twitter,看到人們在討論一個叫"ChatGPT"的東西。我點開了連結,但說實話?我並沒有抱太大期望。我之前試過那些老舊的"文字補全" AI 工具,它們生成幾句話後就開始胡言亂語。我以為這次也不會有什麼不同。
24+
25+
我輸入了一個簡單的問題,按下了回車。
26+
27+
然後我愣住了。
28+
29+
回答不僅連貫,而且*很好*。它理解了我的意思。它能夠推理。這與我之前見過的任何東西都完全不同。我又試了一個提示。又試了一個。每一個回答都比上一個更讓我驚嘆。
30+
31+
那天晚上我無法入睡。第一次,我感覺自己真正在與機器*對話*,而它的回應竟然真的有意義。
32+
33+
## 源於驚嘆的開源專案
34+
35+
在那些早期的日子裡,興奮的不只是我一個人。無論我看向哪裡,人們都在發現使用 ChatGPT 的創意方式。老師們用它來解釋複雜的概念。作家們與它合作創作故事。開發者們藉助它來偵錯程式碼。
36+
37+
我開始收集我發現的最佳提示。那些像魔法一樣有效的提示。那些能把簡單問題變成精彩答案的提示。我想:*為什麼要獨享這些呢?*
38+
39+
於是我建立了一個簡單的 GitHub 儲存庫,叫做 [Awesome ChatGPT Prompts](https://github.com/f/prompts.chat)。我原本以為可能只有幾百人會覺得有用。
40+
41+
我錯了。
42+
43+
幾週之內,這個儲存庫就爆紅了。數千顆星。然後是數萬顆。來自世界各地的人們開始新增他們自己的提示,分享他們學到的東西,互相幫助。最初只是我的個人收藏,卻變成了更宏大的東西:一個由好奇的人們組成的全球社群,彼此互助。
44+
45+
如今,這個儲存庫已經擁有超過 **14 萬 GitHub 星標**,並且有數百位我從未謀面但深感感激的人做出了貢獻。
46+
47+
## 我為什麼寫這本書
48+
49+
這本書的原版於 **2023 年初**[Gumroad](https://gumroad.com/l/the-art-of-chatgpt-prompting) 上發佈,距離 ChatGPT 推出僅僅幾個月。它是最早關於提示工程的書籍之一,是我在這個領域還很新的時候,試圖記錄下我學到的關於編寫有效提示的一切。令我驚訝的是,超過 **10 萬人**下載了它。
50+
51+
但從那時起已經過去了三年。AI 發生了很大變化。新的模型不斷出現。我們對如何與 AI 對話也瞭解得更多了。
52+
53+
這個新版本是我送給這個社群的禮物,感謝它給予我的一切。它包含了我希望在剛開始時就知道的所有內容:**什麼有效****什麼應該避免**,以及**無論你使用哪種 AI 都始終適用的理念**
54+
55+
## 這本書對我意味著什麼
56+
57+
我不會假裝這只是一本操作手冊。對我來說,它的意義遠不止於此。
58+
59+
這本書記錄了世界發生改變的時刻,以及人們聚在一起共同探索的過程。它代表了無數個嘗試新事物的深夜、發現新知的喜悅,以及陌生人無私分享所學的善意。
60+
61+
最重要的是,它代表了我的信念:**學習的最好方式就是與他人分享**
62+
63+
## 致讀者
64+
65+
無論你是剛開始接觸 AI,還是已經使用多年,我都是為你而寫這本書的。
66+
67+
我希望它能為你節省時間。我希望它能激發你的靈感。我希望它能幫助你完成你從未想過可能實現的事情。
68+
69+
當你發現令人驚嘆的東西時,我希望你也能與他人分享,就像曾經有那麼多人與我分享一樣。
70+
71+
**這就是我們共同進步的方式。**
72+
73+
感謝你的到來。感謝你成為這個社群的一員。
74+
75+
現在,讓我們開始吧。
76+
77+
---
78+
79+
*懷著感激之情,*
80+
81+
**Fatih Kadir Akın**
82+
*伊斯坦堡,2025 年 1 月*
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
# Awesome ChatGPT Prompts 的歷史
2+
3+
## 起點:2022年11月
4+
5+
當 ChatGPT 在2022年11月首次發佈時,人工智慧的世界在一夜之間發生了改變。曾經只屬於研究人員和開發者的領域,突然間變得人人都可以接觸。在被這項新技術所吸引的人群中,有一位名叫 Fatih Kadir Akın 的開發者,他看到了 ChatGPT 能力中的非凡之處。
6+
7+
> "當 ChatGPT 首次發佈時,我立刻被它的能力所吸引。我以各種方式對這個工具進行了實驗,結果總是令我驚嘆不已。"
8+
9+
那些早期的日子充滿了實驗和發現。世界各地的使用者都在尋找與 ChatGPT 互動的創意方式,分享他們的發現,並相互學習。正是在這種興奮和探索的氛圍中,"Awesome ChatGPT Prompts"的想法誕生了。
10+
11+
## 一切開始的儲存庫
12+
13+
2022年12月,在 ChatGPT 發佈僅幾週後,[Awesome ChatGPT Prompts](https://github.com/f/prompts.chat) 儲存庫在 GitHub 上建立了。這個概念簡單而強大:一個精心策劃的有效提示詞集合,任何人都可以使用和貢獻。
14+
15+
這個儲存庫迅速獲得了關注,成為全球 ChatGPT 使用者的首選資源。最初只是個人收集的有用提示詞,逐漸演變成一個由開發者、作家、教育工作者和來自世界各地的愛好者共同貢獻的社群驅動專案。
16+
17+
### 成就
18+
19+
**媒體報道**
20+
-[Forbes](https://www.forbes.com/sites/bernardmarr/2023/05/17/the-best-prompts-for-chatgpt-a-complete-guide/) 評為最佳 ChatGPT 提示詞資源之一
21+
22+
**學術認可**
23+
-[Harvard University](https://www.huit.harvard.edu/news/ai-prompts) 在其人工智慧指南中引用
24+
-[Columbia University](https://etc.cuit.columbia.edu/news/columbia-prompt-library-effective-academic-ai-use) 提示詞庫引用
25+
-[Olympic College](https://libguides.olympic.edu/UsingAI/Prompts) 用於其人工智慧資源
26+
-[arXiv 學術論文](https://arxiv.org/pdf/2502.04484)中被引用
27+
- 在 Google Scholar 上有 [40+ 學術引用](https://scholar.google.com/citations?user=AZ0Dg8YAAAAJ&hl=en)
28+
29+
**社群與 GitHub**
30+
- [142,000+ GitHub stars](https://github.com/f/prompts.chat) — 最受歡迎的人工智慧儲存庫之一
31+
- 被選為 [GitHub Staff Pick](https://spotlights-feed.github.com/spotlights/prompts-chat/)
32+
-[Hugging Face](https://huggingface.co/datasets/fka/prompts.chat) 上發佈的最受歡迎資料集
33+
- 被全球數千名開發者使用
34+
35+
## 第一本書:"The Art of ChatGPT Prompting"
36+
37+
儲存庫的成功促成了"The Art of ChatGPT Prompting: A Guide to Crafting Clear and Effective Prompts"的誕生——這是一本於2023年初在 Gumroad 上發佈的綜合指南。
38+
39+
這本書記錄了早期提示工程的智慧,涵蓋了:
40+
41+
- 理解 ChatGPT 的工作原理
42+
- 與人工智慧清晰溝通的原則
43+
- 著名的"Act As"技巧
44+
- 逐步製作有效提示詞
45+
- 常見錯誤及如何避免
46+
- 故障排除技巧
47+
48+
**這本書引起了轟動**,在 Gumroad 上實現了超過 **100,000 次下載**。它在社交媒體上廣泛傳播,被學術論文引用,並被社群成員翻譯成多種語言。甚至來自意想不到的地方也有知名人士的認可——包括 OpenAI 的聯合創始人兼總裁 [Greg Brockman](https://x.com/gdb/status/1602072566671110144) 也認可了這個專案。
49+
50+
## 塑造該領域的早期洞見
51+
52+
在那些形成期的幾個月裡,出現了幾個關鍵洞見,這些後來成為提示工程的基礎:
53+
54+
### 1. 具體性至關重要
55+
56+
> "我認識到使用具體且相關語言的重要性,以確保 ChatGPT 理解我的提示詞並能夠生成適當的回覆。"
57+
58+
早期的實驗者發現,模糊的提示詞會導致模糊的回覆。提示詞越具體、越詳細,輸出就越有用。
59+
60+
### 2. 目的和焦點
61+
62+
> "我發現了為對話定義明確目的和焦點的價值,而不是使用開放式或過於寬泛的提示詞。"
63+
64+
這一洞見成為後續幾年發展的結構化提示技術的基礎。
65+
66+
### 3. "Act As"革命
67+
68+
社群中出現的最具影響力的技術之一是"Act As"模式。通過指示 ChatGPT 扮演特定的角色或人物,使用者可以顯著提高回覆的質量和相關性。
69+
70+
```
71+
I want you to act as a javascript console. I will type commands and you
72+
will reply with what the javascript console should show. I want you to
73+
only reply with the terminal output inside one unique code block, and
74+
nothing else.
75+
```
76+
77+
這個簡單的技術開闢了無數可能性,至今仍然是使用最廣泛的提示策略之一。
78+
79+
## prompts.chat 的演進
80+
81+
### 2022年:起步
82+
83+
專案最初只是一個簡單的 GitHub 儲存庫,帶有在 GitHub Pages 上渲染為 HTML 的 README 檔案。它很簡陋但實用——這證明了偉大的想法不需要複雜的實現。
84+
85+
**技術堆疊**:HTML、CSS、GitHub Pages
86+
87+
### 2024年:介面更新
88+
89+
隨著社群的增長,對更好使用者體驗的需求也在增加。網站進行了重大的介面更新,藉助 Cursor 和 Claude Sonnet 3.5 等人工智慧程式設計助手完成。
90+
91+
### 2025年:當前平臺
92+
93+
如今,prompts.chat 已經發展成為一個功能完善的平臺,採用以下技術建構:
94+
95+
- **Next.js** 作為 Web 框架
96+
- **Vercel** 作為託管平臺
97+
- **人工智慧輔助開發**,使用 Windsurf 和 Claude
98+
99+
該平臺現在具有使用者帳戶、收藏夾、搜尋、分類、標記功能,以及一個蓬勃發展的提示工程師社群。
100+
101+
### 原生應用
102+
103+
專案擴充到了 Web 之外,使用 SwiftUI 建構了原生 iOS 應用,將提示詞庫帶給行動使用者。
104+
105+
## 社群影響
106+
107+
Awesome ChatGPT Prompts 專案對人們與人工智慧的互動方式產生了深遠影響:
108+
109+
### 學術認可
110+
111+
世界各地的大學都在其人工智慧指導材料中引用了該專案,包括:
112+
113+
- Harvard University
114+
- Columbia University
115+
- Olympic College
116+
- arXiv 上的眾多學術論文
117+
118+
### 開發者採用
119+
120+
該專案已被整合到無數開發者的工作流程中。Hugging Face 資料集被研究人員和開發者用於訓練和微調語言模型。
121+
122+
### 全球社群
123+
124+
憑藉來自數十個國家數百名社群成員的貢獻,該專案代表了一項真正的全球努力,旨在讓人工智慧對每個人都更易於存取和使用。
125+
126+
## 理念:開放與免費
127+
128+
從一開始,該專案就致力於開放。在 CC0 1.0 通用(公共領域貢獻)許可下,所有提示詞和內容都可以自由使用、修改和分享,沒有任何限制。
129+
130+
這一理念促成了:
131+
132+
- 多語言翻譯
133+
- 整合到其他工具和平臺
134+
- 學術使用和研究
135+
- 商業應用
136+
137+
目標始終是讓有效的人工智慧溝通技術民主化——確保每個人,無論技術背景如何,都能從這些工具中受益。
138+
139+
## 三年後
140+
141+
在 ChatGPT 發佈三年後,提示工程領域已經顯著成熟。最初的非正式實驗已經發展成為一門公認的學科,擁有成熟的模式、最佳做法和活躍的研究社群。
142+
143+
Awesome ChatGPT Prompts 專案與這一領域共同成長,從一個簡單的提示詞列表發展成為一個發現、分享和學習人工智慧提示詞的綜合平臺。
144+
145+
這本書代表了下一次進化——三年社群智慧的精華,為今天和明天的人工智慧格局而更新。
146+
147+
## 展望未來
148+
149+
從最初的儲存庫到這本綜合指南的歷程,反映了人工智慧的快速發展以及我們對如何有效使用它的理解。隨著人工智慧能力的不斷進步,與這些系統溝通的技術也將不斷發展。
150+
151+
早期發現的那些原則——清晰、具體、目的性以及角色扮演的力量——至今仍然同樣重要。但新技術也在不斷湧現:思維鏈提示、少樣本學習、多模態互動等等。
152+
153+
Awesome ChatGPT Prompts 的故事最終是一個關於社群的故事——關於世界各地成千上萬的人分享他們的發現,互相幫助學習,並共同推進我們對如何與人工智慧合作的理解。
154+
155+
這本書希望延續這種開放協作和共同學習的精神。
156+
157+
---
158+
159+
*Awesome ChatGPT Prompts 專案由 [@f](https://github.com/f) 和一個出色的貢獻者社群共同維護。存取 [prompts.chat](https://prompts.chat) 探索平臺,並在 [GitHub](https://github.com/f/prompts.chat) 上加入我們進行貢獻。*

0 commit comments

Comments
 (0)