{"id":776,"date":"2024-07-13T14:29:13","date_gmt":"2024-07-13T05:29:13","guid":{"rendered":"http:\/\/practical.kr\/?p=776"},"modified":"2024-10-31T17:26:58","modified_gmt":"2024-10-31T08:26:58","slug":"mirroron","status":"publish","type":"post","link":"http:\/\/practical.kr\/?p=776","title":{"rendered":"MirrorOn"},"content":{"rendered":"\n<p>LLM(Large Language Model)\uc740 \uc774\uc81c \uc5c6\uc73c\uba74 \uc544\uc26c\uc6b4 \uc874\uc7ac\uc785\ub2c8\ub2e4. \uac1c\ubc1c\uc790 \uc785\uc7a5\uc5d0\uc11c\ub294 \ubc8c\uc368 2\ub144\uc9f8 Github Copilot\uc744 \ucf54\ub529\ub3c4\uc6b0\ubbf8\ub85c \uc798 \uc4f0\uace0 \uc788\uc5c8\uc9c0\ub9cc ChatGPT, Claude\uac00 \uc880 \ub354 \uc88b\uc740 \ucf54\ub4dc\ub97c \ub9cc\ub4e4\uc5b4 \uc8fc\ub294 \uc0c1\ud669\uc774 \ub418\uc5c8\uace0, \ucd5c\uadfc \uac80\uc0c9\uc99d\uac15\uc0dd\uc131(RAG &#8211; <em>Retrieval-Augmented Generation<\/em>)\uc774 \uac1c\ubc1c\uc790 \uc785\uc7a5\uc5d0\uc11c \uc911\uc694\ud55c \ud0a4\uc6cc\ub4dc\uac00 \ub418\uc5b4\uc11c MML\uc758 \uad6c\uc870\uc640 Api\uc5d0 \ub300\ud55c \uacf5\ubd80\ub97c \ud558\uc9c0 \uc54a\uc744\uc218 \uc5c6\uac8c \ub418\uc5b4\uc11c \uacf5\ubd80\ub97c \uc2dc\uc791\ud588\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uacf5\ubd80\uc5d0 \uac00\uc7a5 \ube60\ub978 \ubc29\ubc95\uc740 \uac00\ub974\uce58\uac70\ub098 \ub9cc\ub4e4\uc5b4 \ubcf4\ub294\uac83\uc774\ub77c\uace0 \ub298 \uc0dd\uac01\ud574\uc11c \ubb54\uac00 \uacf5\ubd80 \ud558\uba74 \uc0c8 \ud504\ub85c\uc81d\ud2b8\ub97c \ud558\ub098 \uc2dc\uc791\ud574\uc11c \uc801\uc6a9\ud574 \ubcf4\ub294 \ud3b8\uc778\ub370, \uc774\ubc88\uc5d0 LLM\uc744 \uacf5\ubd80\ud558\uba70 \ub9cc\ub4e0 \ud504\ub85c\uc81d\ud2b8\uac00 MirrorOn \uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\ub2e4\uc911 LLM \uc9c8\uc758 \ub3c4\uad6c MirrorOn<\/strong><\/p>\n\n\n\n<p>MirrorOn\uc740 \ud55c\ubc88 \uc9c8\ubb38\uc744 \ub358\uc838\uc11c \uc5ec\ub7ec\uac1c\uc758 LLM\uc73c\ub85c \ubd80\ud130 \ub2f5\uc744 \uc5bb\ub294 \uc9c8\uc758\ub3c4\uad6c \uc785\ub2c8\ub2e4. \uc774\ub984\uc740 &#8216;\uac70\uc6b8\uc544~ \uac70\uc6b8\uc544~&#8217; \uc5d0\uc11c \ucc29\uc548\ud55c\uac81\ub2c8\ub2e4. ^^ \uac70\uc6b8\uc744 \ucf1c(On!)\uba74 \ub204\uac00 \uc138\uc0c1\uc5d0\uc11c \uac00\uc7a5 \uc544\ub984\ub2e4\uc6b4\uc9c0 \uc54c\ub824\uc904\uac81\ub2c8\ub2e4.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"388\" src=\"http:\/\/practical.kr\/wp-content\/uploads\/2024\/07\/sample1.gif\" alt=\"\" class=\"wp-image-777\"\/><\/figure><\/div>\n\n\n<p>\ud604\uc7ac(V 0.1.0)\uc5d0\uc11c\ub294 ChatGPT, Claude, Ollama\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. ChatGPT, Claude\ub294 API key \uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uac00 \uc9c1\uc811 API key\ub97c \ubc1c\uae09\ubc1b\uace0 \uc124\uc815\uc5d0\uc11c \ud0a4\ub97c \uc785\ub825\ud558\uace0 \uc9c8\ubb38\uc744 \uc785\ub825\ud558\uba74 API \uc9c8\uc758\uacb0\uacfc\ub97c \uc870\ud68c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub300\ud654\uc758 \ub9e5\ub77d\uc744 \uc774\uc5b4\uac08\uc218 \uc788\ub3c4\ub85d \uad6c\uc131\ub418\uc5b4 \uc788\uace0, \uba54\ub274\ub97c \ud1b5\ud558\uc5ec \ubcf5\uc0ac,\uc0ad\uc81c, \uacf5\uc720\ub4f1\uc744 \uc2e4\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\ub85c\uceec LLM<\/strong><\/p>\n\n\n\n<p>Ollama(<a href=\"https:\/\/ollama.com\/\">https:\/\/ollama.com<\/a>)\ub294 \uc0ac\uc6a9\uc790\uc758 \ucef4\ud4e8\ud130\uc5d0\uc11c LLM\uc744 \uc2e4\ud589\ud560\uc218 \uc788\ub3c4\ub85d \ub3c4\uc640\uc8fc\ub294 \ud504\ub85c\uadf8\ub7a8\uc785\ub2c8\ub2e4. \ub9c1\ud06c\uc5d0\uc11c Ollama\ub97c \uc124\uce58\ud558\uace0 \uc6d0\ud558\ub294 Model\uc744 \uc124\uce58\ud574\uc11c \uc9c8\ubb38\uc744 \ubb34\ub8cc(!)\ub85c \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ucef4\ud4e8\ud130\uc758 \uc6a9\ub7c9\uc774 \ud5c8\ub77d\ud558\ub294\ub300\ub85c \ub2e4\uc591\ud55c Model\uc744 \uc2e4\ud589\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p>MirrorOn\uc744 Ollama \ud074\ub77c\uc774\uc5b8\ud2b8\ub85c \uc4f0\uba74 \ub9e4\uc6d4 LLM\uc5d0 \uc9c0\ubd88\ud558\ub294 \ube44\uc6a9\uc744 \uc544\ub084\uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>RAG &#8211; <em>Retrieval-Augmented Generation<\/em><\/strong><\/p>\n\n\n\n<p>\uac80\uc0c9\uc99d\uac15\uc0dd\uc131(RAG)\ub294 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uac1c\ubc1c\uc790\uc758 \uc785\uc7a5\uc5d0\uc11c\ub294 \ud5a5\ud6c4 \ud544\uc218\uc801\uc73c\ub85c \uac16\ucd94\uc5b4\uc57c \ud558\ub294 \uae30\ub2a5\uc774 \ub420\uac83\uac19\uc2b5\ub2c8\ub2e4. MML\uc774 \ubaa8\ub4e0\uac83\uc744 \ub2e4 \uc54c\uc218\uc5c6\uc9c0\ub9cc \uc0ac\uc6a9\uc790\uc758 \uc694\uad6c\uc0ac\ud56d\uc740 \ub2e4\uc591\ud558\uace0 \uac70\uae30\uc5d0 \ub9de\ucd94\ub294 \ubc29\ubc95\uc774 RAG\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p>MirrorOn V0.1.0\uc5d0\uc11c\ub294 \uae30\ubcf8\uc801\uc778 \uae30\ub2a5\uc744 \ub9cc\ub4e4\uc5b4 \ubd24\uc2b5\ub2c8\ub2e4. \ud604\uc7ac\ub294 PDF \ubb38\uc11c\ub97c \uc5c5\ub85c\ub4dc \ud558\uace0 \uc694\uc57d, \uac80\uc0c9\ud558\ub294 \uc815\ub3c4\uc785\ub2c8\ub2e4\ub9cc \ucd94\ud6c4 \ubca1\ud130\ud654\ub4f1\uc758 \uae30\ub2a5\uc744 \ucd94\uac00\ud560 \uc608\uc815\uc785\ub2c8\ub2e4. <\/p>\n\n\n\n<p>\uadf8\ub9ac\uace0 \uc774\ubbf8\uc9c0\ub97c \uc5c5\ub85c\ub4dc \ud574\uc11c \ub0b4\uc6a9\uc5d0 \ub300\ud55c \uc9c8\ubb38\uc744 \ud558\uac70\ub098, LLM\uc5d0\uac8c \uc778\uc2a4\ud2b8\ub825\uc158\uc744 \uc81c\uacf5\ud558\ub294 \ub4f1\uc758 LLM\uc744 \uc0ac\uc6a9\ud558\uae30 \uc704\ud55c \ud2b9\ubcc4\ud55c \uae30\ub2a5\ub4e4\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc0c1\uc138\ud55c \uae30\ub2a5\uc740 \ub9c1\ud06c\ub97c \ucc38\uace0 \ud558\uc138\uc694. \uc601\uc5b4\uc640 \uc77c\ubcf8\uc5b4\ub3c4 \uc9c0\uc6d0\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\uae30\ub2a5 \uc124\uba85<br><br><a href=\"https:\/\/github.com\/bipark\/MirrorOn\">https:\/\/github.com\/bipark\/MirrorOn<\/a><\/pre>\n\n\n\n<p class=\"has-medium-font-size\"><strong>\ub2e4\uc6b4\ub85c\ub4dc<\/strong><\/p>\n\n\n\n<p>\ud604\uc7ac\ub294 Mac \ubc84\uc804\ub9cc \uc874\uc7ac \ud569\ub2c8\ub2e4. \ub9e5\uc571\uc2a4\ud1a0\uc5b4\uc5d0 \uc5c5\ub85c\ub4dc \ud558\uae30\uc704\ud574 \uba87\uc8fc\ub97c \uc2dc\ub3c4\ud588\uc9c0\ub9cc, API key\ub97c \uc785\ub825\ud558\ub294 \uae30\ub2a5 \ubb38\uc81c\ub85c \uc560\ud50c\uc5d0\uc11c \uc2b9\uc778\uc744 \ubcf4\ub958\ud558\uace0 \uc788\uc5b4\uc11c Git Release\uc5d0\uc11c \ub2e4\uc6b4 \ubc1b\ub3c4\ub85d \uc5c5\ub85c\ub4dc \ud588\uc2b5\ub2c8\ub2e4. \ucd94\ud6c4 \uc560\ud50c\uc758 \uc2b9\uc778\uc774 \uc788\uc73c\uba74 \uc571\uc2a4\ud1a0\uc5b4 \uc5d0\uc11c\ub3c4 \ubcfc\uc218 \uc788\uae30\ub97c \ubc14\ub78d\ub2c8\ub2e4. \uc6d0\ub3c4\uc6b0\uc988\uc6a9 \ubc84\uc804\ub3c4 \ub9cc\ub4e4\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\ub9e5\uc6a9 \ub2e4\uc6b4\ub85c\ub4dc \ub9c1\ud06c<a href=\"https:\/\/github.com\/bipark\/MirrorOn\n\"><br><\/a><br><a href=\"https:\/\/github.com\/bipark\/MirrorOn\/releases\/tag\/MirrorOn\">https:\/\/github.com\/bipark\/MirrorOn\/releases\/tag\/MirrorOn<\/a><\/pre>\n\n\n\n<p>2024,7,13 Billy<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>LLM(Large Language Model)\uc740 \uc774\uc81c \uc5c6\uc73c\uba74 \uc544\uc26c\uc6b4 \uc874\uc7ac\uc785\ub2c8\ub2e4. \uac1c\ubc1c\uc790 \uc785\uc7a5\uc5d0\uc11c\ub294 \ubc8c\uc368 2\ub144\uc9f8 Github Copilot\uc744 \ucf54\ub529\ub3c4\uc6b0\ubbf8\ub85c \uc798 \uc4f0\uace0 \uc788\uc5c8\uc9c0\ub9cc ChatGPT, Claude\uac00 \uc880 \ub354 \uc88b\uc740 \ucf54\ub4dc\ub97c \ub9cc\ub4e4\uc5b4 \uc8fc\ub294 \uc0c1\ud669\uc774 \ub418\uc5c8\uace0, \ucd5c\uadfc \uac80\uc0c9\uc99d\uac15\uc0dd\uc131(RAG &#8211; Retrieval-Augmented Generation)\uc774 \uac1c\ubc1c\uc790 \uc785\uc7a5\uc5d0\uc11c \uc911\uc694\ud55c \ud0a4\uc6cc\ub4dc\uac00 \ub418\uc5b4\uc11c MML\uc758 \uad6c\uc870\uc640 Api\uc5d0 \ub300\ud55c \uacf5\ubd80\ub97c \ud558\uc9c0 \uc54a\uc744\uc218 \uc5c6\uac8c \ub418\uc5b4\uc11c \uacf5\ubd80\ub97c \uc2dc\uc791\ud588\uc2b5\ub2c8\ub2e4. \uacf5\ubd80\uc5d0 \uac00\uc7a5 \ube60\ub978 \ubc29\ubc95\uc740 \uac00\ub974\uce58\uac70\ub098 \ub9cc\ub4e4\uc5b4 \ubcf4\ub294\uac83\uc774\ub77c\uace0<\/p>\n<div class=\"more-link\">\n\t\t\t\t <a href=\"http:\/\/practical.kr\/?p=776\" class=\"link-btn theme-btn\"><span>Read More <\/span> <i class=\"fa fa-caret-right\"><\/i><\/a>\n\t\t\t<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[38,12,99,97],"tags":[101,102,100,98,105,103,104],"class_list":["post-776","post","type-post","status-publish","format-standard","hentry","category-ai","category-flutter","category-mac","category-mml","tag-chatgpt","tag-claude","tag-llm","tag-mac","tag-mirroron","tag-ollama","tag-rag"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/posts\/776","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/practical.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=776"}],"version-history":[{"count":4,"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/posts\/776\/revisions"}],"predecessor-version":[{"id":782,"href":"http:\/\/practical.kr\/index.php?rest_route=\/wp\/v2\/posts\/776\/revisions\/782"}],"wp:attachment":[{"href":"http:\/\/practical.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=776"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/practical.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=776"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/practical.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=776"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}