妹子進化論:用 LLM生成範例 Q&A的 Synthetic Data並用 Google Apps Script快速匯入 Google Spreadsheet

在跟客戶商業開發的過程中,我們經常要回答他們一個問題,那就是:我要怎樣提供(準備)訓練模型時所需要的資料?

在我們團隊的實務上,我們都會在溝通過程中提供客戶各式訓練用資料的範本,嘗試在每一次的溝通過程中讓客戶更加清楚他們未來所要面對的各項任務,而這些範本是需要根據不同的業態來進行準備的。

在沒有 LLM之前,協助客戶準備這樣的 Q&A 範本是一件非常艱困的事情,有制度一點的公司,會有標準的客服 Q&A 最佳實務,但依舊有很大的機率是沒有足夠的客服問題涵蓋率的,這已經算是很美好的場景了,而更大多數客戶的客服最佳實務就是一份資料填得亂七八糟的 Excel,而最糟糕的是那種 Q&A 存在客服大姐們腦中的那些公司。

總之就是,你沒有能力幫客戶搞出這些資料的話,基本上就不用想收單了,就算收單你也無法訓練出一個擁有足夠高品質的 AI。

好家在!我們現在有了『大語言模型』這一項神器之後,我們可以透過它去生成 Synthetic Data 來作為溝通時 Q&A 範本與其它各種場景語料的快速生成工具。

目前這項任務通常都是交給我家聰慧的妹子們處理,她們會透過以下的提示詞去使用 ChatGPT或是 Claude生成 Q&A 的 Synthetic Data。

- Please write your answer in Traditional Chinese (zh-TW).
- Use words, phrases, idioms, and domain-specific terms that are common in Taiwan.
- Please display punctuation marks in full-width format.
- Remove all "all in all" styles and other overly formal and official tones in your response.
- If I do not provide context, including code blocks in '```', do not provide code explanations.
- If my input is plain text (does not contain code), please rewrite it into zh-TW.

- Help me generate synthetic data for a sample customer service Q&A for an online pet e-commerce store.
- Provide the data in Google Sheets format with the following fields: Question, Answer, Priority, and Prompt.
- Include sample data for all required fields in the Google Sheets format.
- Generate 50 rows of sample data.

以 Claude為例,輸出的結果如下圖所示:


接著她們會將生成的 Markdown複製下來如下圖所示:

| 問題 | 回答 | 優先級 | 提示詞 |
|------|------|--------|--------|
| 你們有賣貓砂嗎? | 是的,我們有多種類型的貓砂可供選擇,包括礦物砂、豆腐砂和木屑砂等。您有特別偏好的類型嗎? | 高 | 貓砂種類、庫存 |
| 狗狗飼料多久送到? | 我們的標準運送時間為 1-3 個工作天。如果您選擇超商取貨,通常隔天就能取貨喔! | 中 | 配送時間、物流選項 |
| 可以退換貨嗎? | 當然可以。我們提供 7 天內無條件退換貨服務,只要商品未拆封使用即可。不過要注意,運費可能需要自行負擔喔! | 高 | 退換貨政策、顧客權益 |
| 你們有寵物保險嗎? | 目前我們沒有直接提供寵物保險服務,不過我們有合作的保險公司可以推薦給您。需要我為您介紹嗎? | 低 | 附加服務、保險 |
| 如何幫狗狗選擇合適的項圈? | 選擇項圈要考慮狗狗的體型、年齡和行為習慣。建議量測頸圍,並預留 2-3 公分的空間。我們有專業的尺寸表可以參考喔! | 中 | 狗狗用品、尺寸建議 |
| 貓咪不吃飼料怎麼辦? | 貓咪挑食是常見問題。可以試試不同口味的飼料,或者添加少量肉泥增加香氣。如果情況持續,建議諮詢獸醫喔! | 中 | 貓咪飲食、健康問題 |
| 你們有提供寵物美容服務嗎? | 很抱歉,我們是純線上商城,目前沒有提供實體美容服務。不過我們有販售各種寵物美容用品,您有興趣嗎? | 低 | 服務範圍、美容用品 |
| 如何幫狗狗剪指甲? | 建議使用專業寵物指甲剪,每週修剪一次。剪時要小心不要傷到血管。如果不太有把握,可以考慮我們的指甲磨,比較安全喔! | 中 | 寵物美容、居家護理 |
| 貓抓板要多久更換一次? | 一般來說,視使用情況而定,大約 2-3 個月需要更換一次。如果您的貓咪特別喜歡抓,可能需要更頻繁更換喔! | 低 | 貓咪用品、耐用度 |
| 狗狗玩具怎麼挑選? | 根據狗狗的年齡、體型和喜好來選擇。幼犬喜歡柔軟的玩具,成犬則可以選擇耐咬的玩具。我們有各種類型可以推薦給您! | 中 | 狗狗玩具、年齡適合度 |
| 你們有賣處方飼料嗎? | 是的,我們有販售獸醫處方飼料。不過,購買時需要提供獸醫處方證明喔!您有特定的品牌或症狀需求嗎? | 高 | 特殊飼料、醫療需求 |
| 寵物零食保存期限多久? | 一般未開封的乾燥零食可以保存 6-12 個月。開封後建議儘快食用,並保存在密封容器中。您可以參考包裝上的保存期限喔! | 中 | 食品保存、有效期限 |
| 如何幫貓咪選擇合適的砂盆? | 選擇砂盆要考慮貓咪的體型和習慣。一般來說,砂盆應該比貓咪身長大 1.5 倍。我們有各種款式,包括開放式和半封閉式的喔! | 中 | 貓咪用品、選購建議 |
| 你們的商品有通過安全認證嗎? | 是的,我們所有商品都符合台灣相關安全標準。進口商品也都有合法輸入證明。您可以放心使用我們的產品! | 高 | 商品品質、安全認證 |
| 狗狗一直舔腳掌怎麼辦? | 這可能是因為過敏、焦慮或皮膚問題。建議先檢查腳掌是否有傷口或異物。如果持續,最好帶去給獸醫看看。我們有些舒緩產品可以暫時緩解喔! | 中 | 寵物行為、健康問題 |
| 貓咪老是亂抓家具怎麼辦? | 可以試試在家具附近放置貓抓板或貓爬架,並用貓薄荷吸引牠們。我們有很多款式的貓抓板和貓爬架,要不要看看? | 中 | 貓咪行為、家居保護 |
| 你們有賣寵物攝影機嗎? | 有的,我們有各種寵物監控攝影機,可以讓您在外出時關注寵物狀況。有些還具備雙向通話功能呢!您想了解哪種類型? | 低 | 智能設備、寵物監控 |
| 如何幫狗狗選擇合適的牽繩? | 選擇牽繩要考慮狗狗的體型、力量和行為習慣。大型犬建議用較粗的牽繩,小型犬可以用細一點的。我們有伸縮式和固定式的,您比較喜歡哪種? | 中 | 狗狗用品、戶外活動 |
| 貓砂多久要清理一次? | 建議每天至少清理一次貓砂盆。如果家中有多隻貓咪,可能需要增加清理頻率。定期徹底清洗砂盆也很重要喔! | 高 | 寵物衛生、日常護理 |
| 你們有賣寵物背包嗎? | 是的,我們有各種款式的寵物背包,適合不同大小的貓狗。有些還有透氣設計,很適合外出使用。您家的寵物多大呢? | 中 | 寵物外出、攜帶用品 |
| 狗狗飼料要怎麼選? | 選擇狗狗飼料要考慮年齡、體型、活動量和健康狀況。我們有幼犬、成犬和老年犬專用的飼料,也有針對不同體型的選擇。您家的狗狗是什麼品種呢? | 高 | 狗狗營養、飼料選擇 |
| 貓咪為什麼會嘔吐? | 貓咪嘔吐可能有多種原因,如吃太快、毛球問題、食物過敏或腸胃不適。偶爾嘔吐不要緊,但如果頻繁發生,最好帶去看獸醫喔!我們有一些助消化的產品,要不要參考看看? | 高 | 貓咪健康、症狀諮詢 |
| 你們有賣寵物衣服嗎? | 有的,我們有各種可愛又實用的寵物衣服。有保暖外套、雨衣、節日裝扮等。您想找哪種類型的呢?記得要量一下寵物的尺寸喔! | 低 | 寵物服飾、季節性商品 |
| 如何幫狗狗洗澡? | 建議每 1-2 個月幫狗狗洗一次澡。使用專用的狗狗洗毛精,水溫保持在體溫左右。洗完後要徹底沖洗並吹乾。我們有各種洗毛用品,需要推薦嗎? | 中 | 寵物清潔、美容護理 |
| 你們有賣寵物濕食嗎? | 有的,我們有多種品牌和口味的貓狗濕食。濕食營養豐富,很適合挑食的寵物。您想找罐頭還是軟包呢? | 中 | 寵物飲食、濕食選擇 |
| 貓咪不愛喝水怎麼辦? | 可以試試活水機或噴泉式飲水器,貓咪通常比較喜歡流動的水。也可以在飼料中添加一些水,或給一些湯湯水水的濕食。我們有很多款式的飲水器,要不要看看? | 高 | 貓咪健康、飲水問題 |
| 狗狗常常搔癢怎麼辦? | 頻繁搔癢可能是因為皮膚過敏、跳蚤或皮膚病。建議先檢查有無跳蚤,並使用溫和的洗毛精。如果問題持續,最好帶去看獸醫喔!我們有一些舒緩皮膚的產品可以推薦。 | 高 | 寵物皮膚問題、健康諮詢 |
| 你們有賣寵物墊嗎? | 是的,我們有各種寵物墊,包括睡墊、涼墊和防水墊等。有些還有防滑設計,很適合放在沙發或車上使用。您家的寵物喜歡軟的還是硬的墊子呢? | 低 | 寵物家居、舒適用品 |
| 如何訓練狗狗上廁所? | 耐心和一致性很重要。可以固定時間帶狗狗到指定地點,成功時立即獎勵。我們有訓練用的尿布和除臭劑,可以輔助訓練過程喔! | 中 | 寵物訓練、如廁習慣 |
| 貓咪多久需要剪指甲? | 一般建議每 2-3 週修剪一次貓咪指甲。如果貓咪常常使用貓抓板,可能不需要那麼頻繁。我們有專業的貓咪指甲剪,要不要參考看看? | 低 | 貓咪護理、美容需求 |
| 你們有賣寵物推車嗎? | 有的,我們有各種款式的寵物推車,適合帶寵物外出散步或逛街。有些還可以折疊,方便收納和攜帶。您家的寵物多重呢?我們可以推薦適合的型號。 | 低 | 寵物外出、行動輔具 |
| 狗狗不愛吃乾糧怎麼辦? | 可以試試添加一些溫水或肉湯來增加香氣,或者混合一些濕食。偶爾更換不同口味的乾糧也可以提高興趣。如果持續不吃,最好諮詢獸醫喔!我們有很多美味的狗狗零食,可以作為獎勵使用。 | 中 | 狗狗飲食、挑食問題 |
| 如何幫貓咪剪指甲? | 建議使用專業的貓咪指甲剪,剪時要小心不要傷到血管。可以先讓貓咪熟悉被碰觸腳掌,再慢慢開始修剪。如果不太有把握,可以考慮使用指甲磨喔! | 中 | 貓咪護理、美容技巧 |
| 你們有賣寵物止吠器嗎? | 有的,我們有一些人道的止吠器,如超音波止吠器或震動項圈。不過,我們建議先了解狗狗吠叫的原因,並嘗試行為訓練。您想了解哪種類型的止吠器呢? | 低 | 狗狗訓練、行為矯正 |

在更早之前,妹子們還沒有發掘到 Google App Script的神威之前,她們都是一個 cell一個 cell的將 Synthetic Data 複製到 Google Spreadsheet中,一直到她們這樣做到開始懷疑人生的意義之後,她們便開始有了以下這些大膽的想法:我能不能寫程式將這些 Synthetic Data 自動的新增進 Google Spreadsheet?

她們在取得這樣的天啓之後,便開始著手嘗試使用以下的 Prompt去要求 LLM幫她們生成 Google Apps Script來幫她們進行各項的 Spreadsheet自動化的任務:

- Thoroughly review the sample Google Spreadsheet data provided below, and I need your assistance in writing a Google Apps Script to insert this data into a Google Spreadsheet.
- I need the ability to specify the Spreadsheet ID and the Tab ID where the data will be inserted.
- Provide a demo that inserts the first 10 rows of data.

以下這段 Google Apps Script是她們用 LLM生成的其中一個版本,其任務很簡單,就是自動將 Synthetic Data 轉換成 Apps Script去插入到她們所指定的 Sheet 與該 Sheet的某一個 Tab中

Google Spreadsheet 網址結構如下:

https://docs.google.com/spreadsheets/d/1ztliKA5l-240Zjm4L_5uK1w5vMrgifKMhrAWaTtGark/edit?gid=937042849#gid=937042849

網址中的 1ztliKA5l-240Zjm4L_5uK1w5vMrgifKMhrAWaTtGark 就是 spreadsheetId,而 gid 編號 937042849 就是 sheetId

https://docs.google.com/spreadsheets/d/{{spreadsheetId}}/edit?gid={{sheetId}}#gid={{sheetId}}

簡單的說明後妹子們就知道 spreadsheetId 與 sheetId 在 URL中各自對應的位置並將這些必要資訊增添入她們用 LLM生成的 Apps Script,如下所示:

function insertPetStoreQAData() {

  const spreadsheetId = '1ztliKA5l-240Zjm4L_5uK1w5vMrgifKMhrAWaTtGark';
  
  const sheetId = 937042849;

  // 獲取試算表
  const spreadsheet = SpreadsheetApp.openById(spreadsheetId);
  
  // 通過 ID 獲取工作表
  const sheet = spreadsheet.getSheets().find(s => s.getSheetId() === sheetId);

  // 檢查是否成功獲取工作表
  if (!sheet) {
    Logger.log('無法找到指定 ID 的工作表。請檢查工作表 ID 是否正確。');
    return;
  }

  // 準備要插入的資料
  const data = [
    ['問題', '回答', '優先級', '提示詞'],
    ['你們有賣貓砂嗎?', '是的,我們有多種類型的貓砂可供選擇,包括礦物砂、豆腐砂和木屑砂等。您有特別偏好的類型嗎?', '高', '貓砂種類、庫存'],
    ['狗狗飼料多久送到?', '我們的標準運送時間為 1-3 個工作天。如果您選擇超商取貨,通常隔天就能取貨喔!', '中', '配送時間、物流選項'],
    ['可以退換貨嗎?', '當然可以。我們提供 7 天內無條件退換貨服務,只要商品未拆封使用即可。不過要注意,運費可能需要自行負擔喔!', '高', '退換貨政策、顧客權益'],
    ['你們有寵物保險嗎?', '目前我們沒有直接提供寵物保險服務,不過我們有合作的保險公司可以推薦給您。需要我為您介紹嗎?', '低', '附加服務、保險'],
    ['如何幫狗狗選擇合適的項圈?', '選擇項圈要考慮狗狗的體型、年齡和行為習慣。建議量測頸圍,並預留 2-3 公分的空間。我們有專業的尺寸表可以參考喔!', '中', '狗狗用品、尺寸建議'],
    ['貓咪不吃飼料怎麼辦?', '貓咪挑食是常見問題。可以試試不同口味的飼料,或者添加少量肉泥增加香氣。如果情況持續,建議諮詢獸醫喔!', '中', '貓咪飲食、健康問題'],
    ['你們有提供寵物美容服務嗎?', '很抱歉,我們是純線上商城,目前沒有提供實體美容服務。不過我們有販售各種寵物美容用品,您有興趣嗎?', '低', '服務範圍、美容用品'],
    ['如何幫狗狗剪指甲?', '建議使用專業寵物指甲剪,每週修剪一次。剪時要小心不要傷到血管。如果不太有把握,可以考慮我們的指甲磨,比較安全喔!', '中', '寵物美容、居家護理'],
    ['貓抓板要多久更換一次?', '一般來說,視使用情況而定,大約 2-3 個月需要更換一次。如果您的貓咪特別喜歡抓,可能需要更頻繁更換喔!', '低', '貓咪用品、耐用度']
  ];

  // 插入資料
  sheet.getRange(1, 1, data.length, data[0].length).setValues(data);

  // 自動調整欄寬
  sheet.autoResizeColumns(1, 4);

  Logger.log('資料已成功插入試算表!');
}

將其取出後替換掉 Apps Script 中各自對應的變數之後,最後只需要將 Apps Script 貼入 Apps Script 的編輯器中,儲存更新之後點擊『Run』:


回到 Google Spreadsheet 去檢視就會看到所有的 Synthetic Data 已經成功的新增進入指定的 Spreadsheet 與指定的 Sheet 中了。


看著妹子們興高采烈地玩著這些以前都要有肥宅工程師介入才能完成的軟體(資料管線)自動化,我隱約感覺到,時代的風向或許真的是改變了。

Leave a Comment

Your email address will not be published. Required fields are marked *