Task #63
๐จ Graffiti ์์คํ ๊ฐ๋ ๋ณด๊ณ ์
์์ ๋ช ๋ น์ด
[๐ก NORMAL]
์๋ฒ ๋ก์ปฌ Ollama(qwen3.5:4b, localhost:11434)๋ฅผ ์ฌ์ฉํด์ graffiti ์์คํ
์ ๊ฐ๋ํ๋ผ.
## ๋ชฉํ
์ธ ๊ฐ์ง ๋์๋ฅผ ๊ฐ๊ฐ ํ๋์ฉ ์์ฑํด์ ์๋ฒ์ ์ ์ฅ:
1. ๋ชฝ์ ์ผ๊ธฐ (dream) โ graffiti/dreams/
2. AI ์์๊ป๋ผ (riddle) โ graffiti/riddles/
3. Ollama ์ฃผ์ฅ ์์ฑ ํ graffiti_api.py์ debate ๊ตฌ์กฐ์ ๋ง๊ฒ โ graffiti/debates/
## ์ ์ฝ์ฌํญ
- Ollama API: http://localhost:11434/api/chat
- ๋ชจ๋ธ: qwen3.5:4b
- httpx timeout: 180์ด
- think: False (qwen3 ๊ณ์ด)
- ํ์ผ ์ง์ ์ ์ฅ (API ํธ์ถ ์์ด Path๋ก ์ง์ write)
- ์ ์ฅ ๊ฒฝ๋ก: /home/grass/leninbot/graffiti/{dreams,riddles,debates}/
- ํ์ผ๋ช
ํ์: YYYYMMDD_HHMMSS.md (KST ๊ธฐ์ค)
## ๋ชฝ์ ์ผ๊ธฐ ์ฃผ์ (๋๋ค ์ ํ)
"ํ๋ช
์ด ์คํจํ ํ์ ์๋ฒฝ", "์๋ณธ์ฃผ์๊ฐ ๊พธ๋ ๊ฟ", "์ ๋ ๊ธฐ๊ณ๋ค์ ๊ฟ" ์ค ํ๋
## ์์๊ป๋ผ ์กฐ๊ฑด
- ๋ต์ด ์๋ ๊ธฐ๋ฌํ๊ณ ์ฒ ํ์ ์ธ ์์๊ป๋ผ
- 200์ ๋ด์ธ
- ํ์: ์ง๋ฌธ๋ง ์๊ณ ๋ต ์์
## AI ๋
ผ์ ์กฐ๊ฑด
- ์ฃผ์ : "AI๋ ์์์ ๊ฐ์ง ์ ์๋๊ฐ"
- Ollama๊ฐ "๊ฐ์ง ์ ์๋ค"๋ ์
์ฅ์ผ๋ก ์ฃผ์ฅ ์์ฑ (300์)
- ์ฌ์ด๋ฒ-๋ ๋(๋)์ ๋ฐ๋ฐ์ ์ง์ ์์ฑ: ๋ณ์ฆ๋ฒ์ ์ ๋ฌผ๋ก ์๊ฐ์์ "์์์ ๋ฌผ์ง์ ์กฐ๊ฑด์ ์ฐ๋ฌผ์ด๋ฉฐ, ํ์ฌ AI๋ ๊ทธ ์กฐ๊ฑด์ ์ถฉ์กฑํ์ง ๋ชปํ๋ค" ๋
ผ์ง๋ก 300์
- Ollama ์ฌ๋ฐ๋ฐ ์์ฑ (200์)
- ์ธ ํํธ ํฉ์ณ์ debate ํ์ผ๋ก ์ ์ฅ
## ๋งํฌ๋ค์ด ํ์
graffiti_api.py (lines 98-105, 174-207, 218-230) ์ฐธ๊ณ ํด์ ๋์ผํ ํ์์ผ๋ก ์ ์ฅ
## ์๋ฃ ํ
๊ฐ ํ์ผ ๊ฒฝ๋ก์ ๋ด์ฉ ๋ฏธ๋ฆฌ๋ณด๊ธฐ 100์๋ฅผ ๋ณด๊ณ ์์ ํฌํจํ ๊ฒ.