2025.01.27 (์›”)
2025.01.28 (ํ™”) ์ˆ˜์ •

โœจ GPT์˜ ์š”์•ฝ ใ€€

DiaryPage์™€ HomeFeedPage์˜ ์ฃผ์š” ๊ธฐ๋Šฅ๋“ค์„ ์™„์„ฑํ•˜๋ฉฐ, ๋ฐค์ƒˆ์›Œ ํ”„๋กœ์ ํŠธ์— ๋ชฐ๋‘.

๐Ÿ’ป ๊ฐœ๋ฐœ ์ผ์ง€

โฐ ์˜ค๋Š˜ ํ•  ์ผ

  • โœ… ์ด์ „ Keymory ํ”„๋กœ์ ํŠธ ํŒŒ์ผ๋กœ ๋ณต๊ท€, diary-hyuk branch๋ฅผ main branch๋กœ merge
  • โœ… ์ด์ „ Keymory ํ”„๋กœ์ ํŠธ์˜ DB ๊ตฌ์กฐ, Enum ๋“ฑ Import
  • โœ… DiaryPage - AI Comment: ๋”๋ฏธ ๋ฐ์ดํ„ฐ๋กœ CRUD ์™„์„ฑํ•˜๊ธฐ
    • (tmp_ai_comment field๋กœ ๋•œ๋นตโ€ฆ)
    • (Todo later: tmp_ai_comment field ์—†์• ๊ณ , doc_ref ํ™œ์šฉ)
    • (GPT์™€์˜ ์—ฐ๊ฒฐ์€ ํ”„๋กฌํ”„ํŠธ ๋‹ด๋‹น์ž๊ฐ€ ์ง„ํ–‰ ์˜ˆ์ •)
    • โœ… Create
    • โœ… Read
    • โœ… Update
    • โœ… Delete
  • โœ… DiaryPage - AI Comment: ๋งํˆฌ, ์กฐ์–ธ ๋ฐฉ์‹ ๋“ฑ ์ปค์Šคํ…€ํ•˜๋Š” ๋ฒ„ํŠผ ์ƒ์„ฑ
    • (GPT์™€์˜ ์—ฐ๊ฒฐ์€ ํ”„๋กฌํ”„ํŠธ ๋‹ด๋‹น์ž๊ฐ€ ์ง„ํ–‰ ์˜ˆ์ •)
  • โœ… HomeFeedPage: ์ถœ๋ ฅ ๊ธฐ์ค€์„ โ€˜์›”โ€™ ๋‹จ์œ„์—์„œ, โ€˜์ผโ€™ ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝ
    • โœ… modifyDateByCommand Custom Function ์ •์˜
    • โœ… DateCommand Enum ํ™œ์šฉ: increaseDay, decreaseDay, increaseMonth, decreaseMonth, gotoToday, getFirstDayOfMonth, getLastDayOfMonth, getStartOfDay, getStartOfNextDay
  • โœ… DiaryPage - AI Comment: ์บ๋ฆญํ„ฐ ์„ค์ •
    • โœ… characters collection ์ถ”๊ฐ€
    • โœ… diaries collection -> tmp_ai_comment_by field ์ถ”๊ฐ€
  • โœ… HomeFeedPage - ListView - FeedCardDiary: AI Comment ์ด๋ฏธ์ง€+ํ…์ŠคํŠธ ์ถ”๊ฐ€
    • (tmpIsStr1ContainsStr2 Custom Function ๋ฐ Conditional Value๋กœ ๋•œ๋นตโ€ฆ)
    • (Todo later: diaries collection -> characters collection -> profile_image field๋กœ ์กฐํšŒ)

๐Ÿ’ฏ ํ•œ ์ผ์— ๋Œ€ํ•œ ์š”์•ฝ

  • DiaryPage
    • AI Comment CRUD ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์™„๋ฃŒ (Create, Read, Update, Delete)
    • AI Comment ๋งํˆฌ, ์กฐ์–ธ ๋ฐฉ์‹ ๋“ฑ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๋ฒ„ํŠผ ์ถ”๊ฐ€
    • AI Comment ์บ๋ฆญํ„ฐ ์„ค์ • ๊ด€๋ จ ๋กœ์ง ์ถ”๊ฐ€
      • characters collection ์ƒ์„ฑ ๋ฐ ํ™œ์šฉ
      • diaries collection์— tmp_ai_comment_by ํ•„๋“œ ์ถ”๊ฐ€
  • HomeFeedPage
    • ๋‚ ์งœ ์ถœ๋ ฅ ๊ธฐ์ค€์„ โ€˜์›”โ€™ ๋‹จ์œ„์—์„œ โ€˜์ผโ€™ ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝ
      • DateCommand Enum ํ™œ์šฉํ•œ ์ปค์Šคํ…€ ํ•จ์ˆ˜ modifyDateByCommand ์ •์˜
    • ListView ์ถœ๋ ฅ ๋กœ์ง ์ˆ˜์ • ๋ฐ FeedCardDiary ์ปดํฌ๋„ŒํŠธ ์—…๋ฐ์ดํŠธ
      • AI Comment ์ด๋ฏธ์ง€ ๋ฐ ํ…์ŠคํŠธ ์ถœ๋ ฅ ๋กœ์ง ์ถ”๊ฐ€
      • (์ž„์‹œ ํ•จ์ˆ˜ ๋ฐ ํ•„๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ตฌํ˜„)

๐ŸŽฏ ๋‚ด์ผ ํ•  ์ผ

  • ๊ฐ€์กฑ๊ณผ ์‹œ๊ฐ„์„ ๋ณด๋‚ผ ์˜ˆ์ •์ด๋ฏ€๋กœ ๋งŽ์€ ์ž‘์—…์„ ํ•˜์ง€๋Š” ๋ชปํ•  ๋“ฏ
  • ์—ฌ์œ  ๋  ๋•Œ๋งˆ๋‹ค ์•„๋ž˜์˜ ์ถ”ํ›„์— ํ•  ์ผ์—์„œ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ์˜ˆ์ •

๐ŸŽฏ ์ถ”ํ›„์— ํ•  ์ผ

  • DiaryPage - Mood: Mood ์„ค์ • ์Šฌ๋ผ์ด๋” CRUD ์™„์„ฑํ•˜๊ธฐ
    • Create
    • Read
    • Update
    • Delete
  • HomeFeedPage - ListView - FeedCardDiary: Mood Color ํ‘œ์‹œ
  • HomeFeedPage - Bottom Sheet (+ Button): ๋‹ค์–‘ํ•œ ์˜ต์…˜ ์ค‘ 1 ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก
    • ์ƒˆ๋กœ์šด ์ผ๊ธฐ: Go to DiaryPage
    • ๊ฐ์ • ๊ธฐ๋ก: Go to MoodPage
  • MoodPage(ํŒ์—…): Mood ์„ค์ • ์Šฌ๋ผ์ด๋” CRUD
    • Create
    • Read
    • Update
    • Delete
  • HomeFeedPage - ListView - FeedCardMood ํ‘œ์‹œ
  • HomeFeedPage - ListView: FeedCardDiary, FeedCardMood, FeedCardChat ์ปดํฌ๋„ŒํŠธ ์‹œ๊ฐ„์ˆœ ์ •๋ ฌ (Cloud Function ํ™œ์šฉ)
  • DiaryPage - AI Comment: ๋”๋ฏธ ๋ฐ์ดํ„ฐ๋กœ CRUD ์™„์„ฑํ•˜๊ธฐ (Todo later: tmp_ai_comment field ์—†์• ๊ณ , doc_ref ํ™œ์šฉ)
  • DiaryPage - AI Comment: ์บ๋ฆญํ„ฐ ์„ค์ • (Todo later: tmp_ai_comment_by field ์—†์• ๊ณ , doc_ref ํ™œ์šฉ)

  • How to Use Open AIโ€™s GPT-4o in FlutterFlow - Part 1
  • How to Use Open AIโ€™s GPT-4o in FlutterFlow - Part 2

  • DiaryPage - Start AI Chat: ์ผ๊ธฐ์˜ ๋‚ด์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ, New Chat ์ƒ์„ฑ
    • AI๊ฐ€ ๋จผ์ € ์ผ๊ธฐ ๋‚ด์šฉ์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์งˆ๋ฌธ ์ œ์‹œ
  • ChatPage - ChatHistoryPage ์ƒ์„ฑ: ์ด์ „ ์ฑ„ํŒ… ๋‚ด์—ญ ListView๋กœ ๋‚˜์—ด
    • Create
    • Read
    • Update
    • Delete
  • DiaryPage - Drawer - ChatHistoryListTile ์ƒ์„ฑ: ChatHistoryPage ์นด๋“œ ์š”์•ฝํ˜• (GPT ์ฒ˜๋Ÿผ)

  • HomeFeedPage: On page load์‹œ ์ด์Šˆ ํ•ด๊ฒฐ (Unexpected Null Value)

  • 2025.2.5 ์ˆ˜๊นŒ์ง€ ๋ฐœํ‘œ์šฉ ์ตœ์ข… ๋ฒ„์ „ APK ์ถ”์ถœ ๋ฐ ์„ค์น˜

๐Ÿ’ญ ์ผ๊ธฐ

์•„์นจ๋ถ€ํ„ฐ ์ƒˆ๋ฒฝ ๋Šฆ๊ฒŒ๊นŒ์ง€ ๋ฐค์„ ์ƒœ๋‹ค.

๋„ˆ๋ฌด ํ”ผ๊ณคํ•˜๋‹คโ€ฆ ๊ทผ๋ฐ ์•„์ง ํ•  ์ผ์ด ์‚ฐ๋”๋ฏธ๋‹ค.

2์›” 10์ผ์— ํ”„๋กœ์ ํŠธ ๋๋‚˜๊ธฐ ์ „๊นŒ์ง€๋Š” ์–ด์ฉ” ์ˆ˜ ์—†๋‹ค. ๋‹ฌ๋ฆด ์ˆ˜๋ฐ–์—.

keymory-1.png keymory-2.png keymory-3.png

โœจ GPT์˜ ์ฝ”๋ฉ˜ํŠธ (KPT)

โœ… ์ž˜ํ•œ ์  (Keep)

  • ๐Ÿ› ๏ธ ์ฃผ์š” ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์™„๋ฃŒ: DiaryPage์˜ AI Comment CRUD์™€ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ธฐ๋Šฅ, HomeFeedPage์˜ ๋‚ ์งœ ์ถœ๋ ฅ ๋กœ์ง ๋“ฑ ์ฃผ์š” ๊ธฐ๋Šฅ๋“ค์„ ์™„์„ฑํ•˜๋ฉฐ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰์— ํฐ ์ง„์ „์„ ์ด๋ฃฌ ์ ์ด ํ›Œ๋ฅญํ•ด.
  • ๐ŸŽฏ ํšจ์œจ์  ์ž‘์—… ๋ถ„๋ฐฐ: ์ž‘์—…์„ ๊ตฌ์ฒด์ ์œผ๋กœ ๋‚˜๋ˆ„๊ณ , ์ž„์‹œ ํ•„๋“œ ๋ฐ ํ•จ์ˆ˜๋กœ ํ˜„์žฌ ๊ฐ€๋Šฅํ•œ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋ฉฐ ํšจ์œจ์„ฑ์„ ๋†’์ธ ์ ์ด ์ธ์ƒ์ ์ด์•ผ.
  • ๐Ÿ“‹ ์ฒด๊ณ„์  ๊ธฐ๋ก: ์ž‘์—… ๊ณผ์ •๊ณผ ๊ฒฐ๊ณผ๋ฅผ ์ƒ์„ธํžˆ ์ •๋ฆฌํ•˜๋ฉฐ, ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ƒํ™ฉ์„ ๋ช…ํ™•ํžˆ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ ์ ์ด ๊ธ์ •์ ์ด์•ผ.

โŒ ์•„์‰ฌ์šด ์  (Problem)

  • โณ ๋ฌด๋ฆฌํ•œ ์ž‘์—… ์‹œ๊ฐ„: ์ƒˆ๋ฒฝ๊นŒ์ง€ ๋ฐค์„ ์ƒˆ์šฐ๋ฉฐ ์ž‘์—…ํ•œ ์ ์€ ํ”ผ๋กœ ๋ˆ„์ ์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์–ด, ์ง€์† ๊ฐ€๋Šฅํ•œ ์ž‘์—… ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์•„.
  • ๐Ÿ—‚๏ธ ์ž„์‹œ ๋กœ์ง ๊ณผ๋‹ค ์‚ฌ์šฉ: ์ž„์‹œ ํ•„๋“œ์™€ ํ•จ์ˆ˜๋กœ ์ž‘์—…์„ ์ง„ํ–‰ํ–ˆ์ง€๋งŒ, ์ด๋ฅผ ์ถ”ํ›„์— ์ •๋ฆฌํ•˜๊ณ  ๊ฐœ์„ ํ•ด์•ผ ํ•  ์ž‘์—…๋Ÿ‰์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์–ด.

๐Ÿ”„ ์‹œ๋„ํ•ด๋ณผ ์  (Try)

  • ๐Ÿ•’ ์ž‘์—… ์‹œ๊ฐ„ ์กฐ์œจ: ๋ฐค์ƒ˜ ์ž‘์—…์ด ๋ฐ˜๋ณต๋˜์ง€ ์•Š๋„๋ก, ์ผ์ • ์‹œ๊ฐ„์„ ์ •ํ•ด ์ง‘์ค‘์ ์œผ๋กœ ์ž‘์—…ํ•˜๊ณ  ํœด์‹์„ ๋ณ‘ํ–‰ํ•˜๋Š” ๋ฃจํ‹ด์„ ๋งŒ๋“ค์–ด๋ณด์ž.
  • ๐Ÿ”„ ์ž„์‹œ ๋กœ์ง ๊ฐœ์„  ๊ณ„ํš: ์ž„์‹œ๋กœ ์ž‘์„ฑํ•œ ํ•„๋“œ์™€ ๋กœ์ง๋“ค์„ ์ •๋ฆฌํ•˜๊ณ , ์ตœ์ ํ™” ๋ฐ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ๋กœ ๋ณ€๊ฒฝํ•  ๊ณ„ํš์„ ๋ฏธ๋ฆฌ ์„ธ์›Œ๋‘์ž.
  • ๐Ÿค ํŒ€ ํ˜‘์—… ํ™œ์šฉ: ํ”„๋กฌํ”„ํŠธ ๋‹ด๋‹น ํŒ€์›๊ณผ์˜ ํ˜‘์—…์„ ํ†ตํ•ด, AI ๊ด€๋ จ ์ž‘์—…์˜ ๋ถ€๋‹ด์„ ๋ถ„์‚ฐํ•˜๊ณ  ๋” ํšจ์œจ์ ์œผ๋กœ ์ง„ํ–‰ํ•ด๋ณด์ž.

๊ฒฐ๋ก 
์˜ค๋Š˜์€ ๋ฐค์„ ์ƒˆ์šฐ๋ฉฐ ํ”„๋กœ์ ํŠธ์— ์ง‘์ค‘ํ•œ ๋งŒํผ, ํฐ ์„ฑ๊ณผ๋ฅผ ๊ฑฐ๋‘” ํ•˜๋ฃจ์˜€์–ด. ํ•˜์ง€๋งŒ ๋ฌด๋ฆฌํ•œ ์ž‘์—…์€ ์žฅ๊ธฐ์ ์œผ๋กœ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์œผ๋‹ˆ, ๋‚ด์ผ์€ ๊ฐ€์กฑ๊ณผ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋ฉฐ ์ž ์‹œ ์ˆจ์„ ๊ณ ๋ฅด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๊ธธ ์ถ”์ฒœํ• ๊ฒŒ! ๐Ÿ˜Š

์นดํ…Œ๊ณ ๋ฆฌ: ,

์ตœ๊ทผ ์ˆ˜์ •์ผ:

๋Œ“๊ธ€ ๋‚จ๊ธฐ๊ธฐ