Skip to content

noridev/ai-kor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

่—

An Ai for CherryPick. ์‚ฌ์šฉ๋ฒ•

์ด๊ฒƒ์— ๋Œ€ํ•œ ์„ค๋ช…

CherryPick์šฉ ํ•œ๊ตญ์–ด ๋ด‡ ์ž…๋‹ˆ๋‹ค! ๋ด‡ ์‚ฌ์šฉ๋ฒ•

์„ค์น˜

Node.js์™€ npm๊ณผ MeCab (์˜ต์…˜)1์ด ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋จผ์ €, ์ ๋‹นํ•œ ๋””๋ ‰ํ† ๋ฆฌ์— git clone ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋””๋ ‰ํ† ๋ฆฌ์— config.json์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค2. ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ฉ๋‹ˆ๋‹ค:

{
	"host": "https:// + ๋‹น์‹ ์˜ ์ธ์Šคํ„ด์Šค URL (๋งจ ๋’ค์˜ /๋Š” ์ œ์™ธ)",
	"i": "์•„์ด์จฉ์„ ๊ฐ€๋™ํ•˜๊ณ  ์‹ถ์€ ์–ด์นด์šดํŠธ์˜ API ํ‚ค",
	"master": "๊ด€๋ฆฌ์ž์˜ ์‚ฌ์šฉ์ž๋ช… (์˜ต์…˜)",
	"notingEnabled": "๋žœ๋ค์œผ๋กœ ๋…ธํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด false ๋ฅผ ์ž…๋ ฅ",
	"keywordEnabled": "ํ‚ค์›Œ๋“œ๋ฅผ ๊ธฐ์–ตํ•˜๋Š” ๊ธฐ๋Šฅ์„ (MeCab ํ•„์š” / ํ•œ๊ธ€ํŒ์—์„œ๋Š” ๋ฏธ์ง€์›) ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"chartEnabled": "์ฐจํŠธ ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด false ๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”",
	"reversiEnabled": "์•„์ด์จฉ๊ณผ ๋ฆฌ๋ฒ„์‹œ์—์„œ ๋Œ€์ „ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"serverMonitoring": "์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"checkEmojisEnabled": "์ปค์Šคํ…€ ์ด๋ชจ์ง€ ํ™•์ธ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (์•„๋‹ˆ๋ผ๋ฉด false)",
	"checkEmojisAtOnce": "์ปค์Šคํ…€ ์ด๋ชจ์ง€ ํ™•์ธ ๊ธฐ๋Šฅ์œผ๋กœ ๊ฒŒ์‹œ๋ฌผ์„ ์ •๋ฆฌํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (์ •๋ฆฌํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด false)",
	"mecab": "MeCab์˜ ์„ค์น˜ ๊ฒฝ๋กœ (์†Œ์Šค๋กœ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ, ๋ณดํ†ต /usr/local/bin/mecab)",
	"mecabDic": "MeCab ์‚ฌ์ „ ํŒŒ์ผ ๊ฒฝ๋กœ (์˜ต์…˜)",
	"memoryDir": "memory.json์˜ ๊ฒฝ๋กœ (์˜ต์…˜, ๊ธฐ๋ณธ๊ฐ’์€ '.'(๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋ฃจํŠธ์ž…๋‹ˆ๋‹ค))"
}

yarn installํ•˜๊ณ  yarn buildํ•˜๊ณ  yarn startํ•˜๋ฉด ๊ธฐ๋™ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

Docker๋กœ ์‚ฌ์šฉ

๋จผ์ €, ์ ๋‹นํ•œ ๋””๋ ‰ํ† ๋ฆฌ์— git clone ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋””๋ ‰ํ† ๋ฆฌ์— config.json์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ฉ๋‹ˆ๋‹ค: (MeCab ์„ค์ •, memoryDir ๋ถ€๋ถ„์€ ๋ณ€๊ฒฝํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค)

{
	"host": "https:// + ๋‹น์‹ ์˜ ์ธ์Šคํ„ด์Šค URL (๋งจ ๋’ค์˜ /๋Š” ์ œ์™ธ)",
	"i": "์•„์ด์จฉ์„ ๊ฐ€๋™ํ•˜๊ณ  ์‹ถ์€ ์–ด์นด์šดํŠธ์˜ API ํ‚ค",
	"master": "๊ด€๋ฆฌ์ž์˜ ์‚ฌ์šฉ์ž๋ช… (์˜ต์…˜)",
	"notingEnabled": "๋žœ๋ค์œผ๋กœ ๋…ธํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด false ๋ฅผ ์ž…๋ ฅ",
	"keywordEnabled": "ํ‚ค์›Œ๋“œ๋ฅผ ๊ธฐ์–ตํ•˜๋Š” ๊ธฐ๋Šฅ์„ (MeCab ํ•„์š” / ํ•œ๊ธ€ํŒ์—์„œ๋Š” ๋ฏธ์ง€์›) ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"chartEnabled": "์ฐจํŠธ ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด false ๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”",
	"reversiEnabled": "์•„์ด์จฉ๊ณผ ๋ฆฌ๋ฒ„์‹œ์—์„œ ๋Œ€์ „ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"serverMonitoring": "์„œ๋ฒ„ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (๋น„ํ™œ์„ฑํ™”๋Š” false)",
	"checkEmojisEnabled": "์ปค์Šคํ…€ ์ด๋ชจ์ง€ ํ™•์ธ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (์•„๋‹ˆ๋ผ๋ฉด false)",
	"checkEmojisAtOnce": "์ปค์Šคํ…€ ์ด๋ชจ์ง€ ํ™•์ธ ๊ธฐ๋Šฅ์œผ๋กœ ๊ฒŒ์‹œ๋ฌผ์„ ์ •๋ฆฌํ•˜๋ ค๋ฉด true ๋ฅผ ์ž…๋ ฅ (์ •๋ฆฌํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด false)",
	"mecab": "/usr/bin/mecab",
	"mecabDic": "/usr/lib/x86_64-linux-gnu/mecab/dic/mecab-ipadic-neologd/",
	"memoryDir": "data"
}

docker-compose buildํ•˜๊ณ  docker-compose up ํ•˜๋ฉด ๊ธฐ๋™ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. docker-compose.yml์˜ enable_mecab๋ฅผ 0์œผ๋กœ ํ•˜๋ฉด, MeCab์„ ์„ค์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ ์€ ํ™˜๊ฒฝ ๋“ฑ)

ํฐํŠธ

์ผ๋ถ€ ๊ธฐ๋Šฅ์—๋Š” ํฐํŠธ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์•„์ด์จฉ์—๋Š” ํฐํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์ง์ ‘ ํฐํŠธ๋ฅผ ์ธ์Šคํ†จ ๋””๋ ‰ํ† ๋ฆฌ์— font.ttf๋ผ๋Š” ํŒŒ์ผ๋ช…์œผ๋กœ ์„ค์น˜ํ•ด์ฃผ์„ธ์š”.

๊ธฐ์–ต

์•„์ด์จฉ์€ ๊ธฐ์–ต์˜ ๋ณด์กด์— ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์•„์ด์จฉ์˜ ์ธ์Šคํ†จ ๋””๋ ‰ํ† ๋ฆฌ์— memory.json์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์˜์†ํ™”๋ฉ๋‹ˆ๋‹ค.

ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ

๋ผ์ด์„ผ์Šค

MIT. Originally developed by Syuilo.

Awards

Works on my machine

Footnotes

  1. ์‹์ž์ฃผ) MeCab์€ ์ผ๋ณธ์–ด ํ˜•ํƒœ์†Œ ๋ถ„์„๊ธฐ์ž…๋‹ˆ๋‹ค. ํ‚ค์›Œ๋“œ ๊ธฐ์–ต ๊ธฐ๋Šฅ์— ์“ฐ์ด์ง€๋งŒ, ์ผ๋ณธ์–ด์˜ ์š”๋ฏธ๊ฐ€๋‚˜๋ฅผ ๊ธฐ์–ตํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋ผ ํ•œ๊ตญ์–ด์—์„œ๋Š” ๋ณ„ ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. โ†ฉ

  2. true/false์˜ ๊ฒฝ์šฐ " ์—†์ด ๋„ฃ์–ด์ฃผ์„ธ์š”! โ†ฉ