{"id":5912,"date":"2025-12-28T21:23:32","date_gmt":"2025-12-28T12:23:32","guid":{"rendered":"https:\/\/secondlife.lol\/?p=5912"},"modified":"2025-12-28T21:27:25","modified_gmt":"2025-12-28T12:27:25","slug":"functiongemma-ollama-smartphone-agent-1","status":"publish","type":"post","link":"https:\/\/secondlife.lol\/ja\/functiongemma-ollama-smartphone-agent-1\/","title":{"rendered":"\ub0b4 \ub9e5\ubd81\uc744 \u201c\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8\u201d\ub85c! &#8211; FunctionGemma Ollama \uc870\ud569 (1\ud3b8)"},"content":{"rendered":"<style>.kb-image5912_2d80b2-28 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5912_2d80b2-28\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"512\" height=\"304\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-74.png\" alt=\"FunctionGemma Ollama \uc870\ud569 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8 \uc774\ubbf8\uc9c0\" class=\"kb-img wp-image-5950\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-74.png 512w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-74-300x178.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-74-18x12.png 18w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\uc9c0\ub09c \ud3b8\uc5d0\uc11c <a href=\"https:\/\/secondlife.lol\/ja\/functiongemma-edge-function-calling\/\">FunctionGemma<\/a>\ub97c \uc18c\uac1c\ub97c \ud588\ub294\ub370\uc694. \uc774\ubc88\uc5d4 \ubaa9\ud45c\ub97c \ud558\ub098 \uc124\uc815\ud574\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201c\ub9e5\ubd81\uc5d0 \uc62c\ub824\ub454 \ub85c\uceec LLM, FunctionGemma Ollama \uc870\ud569\uc73c\ub85c<br><strong>\ub0b4 \uc2a4\ub9c8\ud2b8\ud3f0\uc5d0\uc11c \ud560 \uc77c\uc744 \ub300\uc2e0 \uacc4\ud68d\ud558\uace0 \uc2e4\ud589\uae4c\uc9c0 \ub3c4\uc640\uc8fc\ub294 \uc791\uc740 \uc5d0\uc774\uc804\ud2b8<\/strong>\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ub97c \uc704\ud574\uc11c \uc774\ubc88 \uc2dc\ub9ac\uc988 \uc804\uccb4 \ud750\ub984\uc740 \uc774\ub807\uac8c \uac00\ub824\uace0 \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>1\ud3b8(\uc9c0\uae08)<\/strong>\uc5d0\uc11c\ub294 \ub2e4\uc74c\uc758 \ub0b4\uc6a9\uc744 \uc0b4\ud3b4\ubd05\ub2c8\ub2e4.\n<ul class=\"wp-block-list\">\n<li>FunctionGemma\uac00 \ubb54\uc9c0, \uc65c Ollama\ub791 \uac19\uc774 \uc4f0\ub294\uc9c0 \uac1c\ub150 \uc815\ub9ac<\/li>\n\n\n\n<li>\u201c\ub0b4 \uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8\u201d \uc804\uccb4 \uad6c\uc870(\uc544\ud0a4\ud14d\ucc98) \uadf8\ub9bc \uc7a1\uae30<\/li>\n\n\n\n<li>MacBook \ud658\uacbd \uc810\uac80 + \uc900\ube44 \uccb4\ud06c\ub9ac\uc2a4\ud2b8<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>2\ud3b8<\/strong>\uc5d0\uc11c\ub294 \uc544\ub798\uc758 \ub0b4\uc6a9\uc744 \ub2e4\ub904\ubd05\ub2c8\ub2e4.\n<ul class=\"wp-block-list\">\n<li>Mac\uc5d0 Ollama \uc124\uce58<\/li>\n\n\n\n<li>Hugging Face\uc5d0\uc11c FunctionGemma \ubaa8\ub378 \ubc1b\ub294 \ud750\ub984 \uc774\ud574<\/li>\n\n\n\n<li>FunctionGemma\ub97c GGUF\ub85c \ubcc0\ud658\ud574\uc11c Ollama\uc5d0 \uac00\uc838\uc624\ub294 \uc804\uccb4 \uacfc\uc815 \uac1c\ub150 \uc815\ub9ac<\/li>\n\n\n\n<li>\uac04\ub2e8\ud55c Python \uc2a4\ud06c\ub9bd\ud2b8\ub85c FunctionGemma + \ud234 \ucf5c\ub9c1 \ub9db\ubcf4\uae30<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>3\ud3b8<\/strong>\uc5d0\uc11c\ub294 \ub2e4\uc74c \ub0b4\uc6a9\uc744 \ub9d0\ud574\ubcf4\ub824\uace0 \ud569\ub2c8\ub2e4.\n<ul class=\"wp-block-list\">\n<li>Django \ubc31\uc5d4\ub4dc\uc5d0\uc11c\n<ul class=\"wp-block-list\">\n<li>Ollama HTTP API\ub85c FunctionGemma \ud638\ucd9c<\/li>\n\n\n\n<li>\u201c\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158\u201d\uc744 \ud749\ub0b4 \ub0b4\ub294 Python \ud568\uc218 \uc138\ud2b8(\uc608: <code>send_message<\/code>, <code>open_app<\/code>)\ub97c \ub9cc\ub4e4\uc5b4<\/li>\n\n\n\n<li>FunctionGemma\uac00 \uc790\ub3d9\uc73c\ub85c \uc801\uc808\ud55c \ud568\uc218\ub97c \uace0\ub974\uace0 \ud638\ucd9c\ud558\uac8c \ub9cc\ub4dc\ub294<\/li>\n\n\n\n<li><strong>\u201c\ub0b4 \uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8\u201d API &amp; \uac04\ub2e8\ud55c \uc6f9 UI<\/strong> \uad6c\ud604<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">3\ud3b8\uae4c\uc9c0 \ub530\ub77c\uac00\uba74,<br>\u201c<em>\uc624\ub298 \uc77c\uc815 \uc694\uc57d\ud574\uc11c \uce74\ud1a1\uc73c\ub85c \ubcf4\ub0b4\uc918<\/em>\u201d \uac19\uc740 \uc790\uc5f0\uc5b4 \uba85\ub839\uc744 \uc8fc\uba74<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\uc0ac\uc6a9\uc790\uac00 \uc6f9 UI(\ub610\ub294 \uac04\ub2e8 \ud3f0 \ube0c\ub77c\uc6b0\uc800)\uc5d0\uc11c \uc785\ub825 \u2192<\/li>\n\n\n\n<li>Django API \u2192 Ollama \u2192 FunctionGemma\uac00 \u201c\uc5b4\ub5a4 \ud568\uc218\ub97c \uc5b4\ub5a4 \uc778\uc790\ub85c \ubd80\ub97c\uc9c0\u201d\ub97c \uacb0\uc815 \u2192<\/li>\n\n\n\n<li>\ud30c\uc774\uc36c \ucabd\uc5d0\uc11c \uc2e4\uc81c \ud568\uc218 \uc2e4\ud589(\ucc98\uc74c\uc5d0\ub294 <strong>\ubaa8\uc758(Mock) \uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158<\/strong>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uae4c\uc9c0 \ud55c \ubc88\uc758 \ud50c\ub85c\uc6b0\ub85c \uad74\ub7ec\uac00\ub294 \uadf8\ub9bc\uc744 \ub9cc\ub4e4 \uc218 \uc788\uc5b4\uc694. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FunctionGemma Ollama \uc870\ud569, \ud55c \ubc88\uc5d0 \uac10 \uc7a1\uae30<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. FunctionGemma\uac00 \ubb50\uae38\ub798?<\/h3>\n\n\n<style>.kb-image5912_e72cda-73 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5912_e72cda-73\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"600\" height=\"343\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76-600x343.png\" alt=\"FunctionGemma \ud65c\uc6a9 \uc774\ubbf8\uc9c0\" class=\"kb-img wp-image-5955\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76-600x343.png 600w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76-300x171.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76-768x438.png 768w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76-18x10.png 18w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-76.png 1200w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><a href=\"https:\/\/blog.google\/technology\/developers\/functiongemma\/\" target=\"_blank\" rel=\"noopener\">FunctionGemma<\/a><\/strong>\ub294 \uad6c\uae00\uc774 \ucd5c\uadfc \uacf5\uac1c\ud55c,<br><strong>\ud568\uc218 \ud638\ucd9c(Function Calling)\uc5d0\ub9cc \uaf49 \uc9d1\uc911\ud574\uc11c \ud29c\ub2dd\ub41c \uc791\uc740 LLM<\/strong>\u3067\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\uae30\ubc18 \ubaa8\ub378<\/strong>: Gemma 3 270M (\uc57d 2\uc5b5 7\ucc9c\ub9cc \ud30c\ub77c\ubbf8\ud130)<\/li>\n\n\n\n<li><strong>\uc5ed\ud560<\/strong>:\n<ul class=\"wp-block-list\">\n<li>\uc7a1\ub2f4\uc6a9 \ucc57\ubd07\uc774 \uc544\ub2c8\ub77c<\/li>\n\n\n\n<li>\u201c\uc790\uc5f0\uc5b4 \u2192 API\/\ud568\uc218 \ucf5c \uad6c\uc870\u201d\ub85c \ubc14\uafd4\uc8fc\ub294 <strong>\ud1b5\uc5ed\uc0ac<\/strong>\uc5d0 \uac00\uae5d\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\u7279\u5fb4<\/strong>:\n<ul class=\"wp-block-list\">\n<li>\ud14d\uc2a4\ud2b8 \uc804\uc6a9, \ucd5c\ub300 32k \ud1a0\ud070 \ucee8\ud14d\uc2a4\ud2b8(\uc785\ub825+\ucd9c\ub825 \ud569) \uc9c0\uc6d0<\/li>\n\n\n\n<li>\u201c\uc774\ub7f0 JSON \uc2a4\ud0a4\ub9c8\uc758 \ud568\uc218\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc5b4\u201d\ub77c\uace0 \uc54c\ub824\uc8fc\uba74<br>\u2192 \uac70\uae30\uc5d0 \ub9de\ub294 \ud568\uc218 \uc774\ub984\uacfc \ud30c\ub77c\ubbf8\ud130\ub97c <strong>\uc815\ud655\ud558\uac8c \uace8\ub77c\uc11c<\/strong> \uc81c\uc548\ud558\ub294 \ub370 \ud2b9\ud654\ub428<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uc989, FunctionGemma\ub294 <strong>\u201c\uc0dd\uac01\uc740 \uc2dc\ud0a4\ub418 \uc2e4\uc81c \ud589\ub3d9\uc740 \ud30c\uc774\uc36c \ud568\uc218\uc5d0\uac8c \uc2dc\ud0a4\ub294\u201d \uad6c\uc870<\/strong>\ub97c \ub9cc\ub4e4 \ub54c \ub531 \ub9de\ub294 \ubaa8\ub378\uc774\uc5d0\uc694.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ubc88 \uc2dc\ub9ac\uc988\uc5d0\uc11c\ub294 \uc704\uc5d0\uc11c \uc0b4\uc9dd \uc5b8\uae09\ud55c\ub300\ub85c\uc774 FunctionGemma\ub97c<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MacBook \uc548\uc5d0\uc11c<\/li>\n\n\n\n<li><strong>\ub85c\uceec\ub85c<\/strong>,<\/li>\n\n\n\n<li><strong>Ollama<\/strong>\ub97c \ud1b5\ud574 \ud638\ucd9c\ud558\uba74\uc11c,<\/li>\n\n\n\n<li>\uc2a4\ub9c8\ud2b8\ud3f0 \uad00\ub828 \ud568\uc218\ub4e4\uc744 \uc2e4\ud589\ud558\ub294 \uc5d0\uc774\uc804\ud2b8\ub85c \uc368\ubcfc \uac81\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. Ollama\ub294 \ubb50 \ud558\ub294 \uc560\uc9c0?<\/h3>\n\n\n<style>.kb-image5912_0f5606-e4 .kb-image-has-overlay:after{opacity:0.3;border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;}.kb-image5912_0f5606-e4 img.kb-img, .kb-image5912_0f5606-e4 .kb-img img{border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}<\/style>\n<div class=\"wp-block-kadence-image kb-image5912_0f5606-e4\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"600\" height=\"347\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-600x347.jpg\" alt=\"Ollama webpage image\" class=\"kb-img wp-image-5951\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-600x347.jpg 600w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-300x174.jpg 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-768x444.jpg 768w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-18x10.jpg 18w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75.jpg 1200w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><figcaption>(\ucd9c\ucc98: \uc62c\ub77c\ub9c8)<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><a href=\"https:\/\/ollama.com\/\" target=\"_blank\" rel=\"noopener\">Ollama<\/a><\/strong>\ub294 \ub85c\uceec\uc5d0\uc11c LLM\uc744 \uc27d\uac8c \ub3cc\ub9ac\uac8c \ud574\uc8fc\ub294 \ub7f0\ud0c0\uc784\/\uc11c\ubc84 \ud50c\ub7ab\ud3fc\uc774\uc5d0\uc694.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ollama run llama3<\/code> \uac19\uc740 \ubc29\uc2dd\uc73c\ub85c \ud130\ubbf8\ub110\uc5d0\uc11c \ubc14\ub85c \ubaa8\ub378 \uc2e4\ud589<\/li>\n\n\n\n<li>HTTP API\ub3c4 \uc81c\uacf5 \u2192 Python, Django, Node \ub4f1 \uc5b4\ub514\uc11c\ub4e0 \uc27d\uac8c \ud638\ucd9c<\/li>\n\n\n\n<li><strong>GGUF \ud3ec\ub9f7 \ubaa8\ub378<\/strong>\uc744 \uac00\uc838\ub2e4 \u201cOllama \ubaa8\ub378\u201d\ub85c \ub9cc\ub4e4 \uc218 \uc788\uc74c (<a href=\"https:\/\/docs.ollama.com\/import\" target=\"_blank\" rel=\"noopener\">Ollama Docs<\/a>)<\/li>\n\n\n\n<li>Tool calling(\ud568\uc218 \ud638\ucd9c)\ub3c4 Ollama \ub808\ubca8\uc5d0\uc11c \uc9c0\uc6d0\ud574\uc11c, \ubaa8\ub378\uc774 \uc5b4\ub5a4 \ud234\uc744 \uc4f8\uc9c0 \uc81c\uc548\ud558\uba74 \ucf54\ub4dc\uc5d0\uc11c \uadf8 \ud234\uc744 \uc2e4\ud589\ud558\uac8c \uc5f0\uacb0\ud560 \uc218 \uc788\uc5b4\uc694.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ubc88 \uc2dc\ub9ac\uc988\uc5d0\uc11c Ollama\uc758 \uc5ed\ud560\uc740<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u201cFunctionGemma\ub97c \ub9e5\ubd81 \ub85c\uceec\uc5d0\uc11c \uc798 \ub3cc\ub9b4 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 <strong>\uc5d4\uc9c4 + \uac8c\uc774\ud2b8\uc6e8\uc774<\/strong>\u201d<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\ub77c\uace0 \ubcf4\uba74 \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FunctionGemma\ub97c Ollama\uc5d0\uc11c \ub3cc\ub9ac\ub294 \ud070 \uadf8\ub9bc<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">FunctionGemma\ub294 \ud604\uc7ac <strong><a href=\"https:\/\/huggingface.co\/google\/functiongemma-270m-it\" target=\"_blank\" rel=\"noopener\">Hugging Face\uc5d0 \uacf5\uac1c\ub41c \ubaa8\ub378<\/a><\/strong>\ub85c \uc81c\uacf5\ub418\uace0,<br>\uc0ac\uc6a9\ud558\ub824\uba74 \ub77c\uc774\uc120\uc2a4 \ub3d9\uc758\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ollama\uc5d0\uc11c \uc4f0\ub824\uba74 \ubcf4\ud1b5 \uc774\ub7f0 \ub2e8\uacc4\uac00 \ud544\uc694\ud574\uc694.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Hugging Face\uc5d0\uc11c FunctionGemma \ubaa8\ub378 \ud30c\uc77c(safetensors\/weights) \uc811\uadfc\uad8c\ud55c \uc218\ub77d<\/li>\n\n\n\n<li><strong>GGUF \ud3ec\ub9f7\uc73c\ub85c \ubcc0\ud658<\/strong>\n<ul class=\"wp-block-list\">\n<li>Gemma \uacc4\uc5f4 \ubaa8\ub378 \u2192 <code>convert_hf_to_gguf.py<\/code> \uac19\uc740 \uc2a4\ud06c\ub9bd\ud2b8\ub85c \ubcc0\ud658<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\ub9e5\ubd81\uc5d0 \ubcc0\ud658\ub41c <code>functiongemma-270m.gguf<\/code> \uac19\uc740 \ud30c\uc77c\uc744 \ub454\ub2e4.<\/li>\n\n\n\n<li>\uac19\uc740 \ud3f4\ub354\uc5d0 <strong>Modelfile<\/strong> \uc791\uc131:<code> FROM .\/functiongemma-270m.gguf PARAMETER temperature 0.2 PARAMETER num_ctx 8192 SYSTEM \"\"\" You are a function calling specialist model. Always respond using the provided tools schema. \"\"\"<\/code><\/li>\n\n\n\n<li>Ollama\uc5d0 \ubaa8\ub378 \ub4f1\ub85d: <code>ollama create functiongemma-local -f Modelfile<\/code><\/li>\n\n\n\n<li>\uc774\uc81c \uba85\ub839\uc5b4\ub85c \uc2e4\ud589: <code>ollama run functiongemma-local<\/code><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \uc804\uccb4 \uacfc\uc815\uc744 2\ud3b8\uc5d0\uc11c \uc880 \ub354 \uad6c\uccb4\uc801\uc73c\ub85c \uc815\ub9ac\ud560 \uac70\uace0,<br>\ud544\uc694\ud558\uba74 \u201c\uc774\ubbf8 GGUF\ub85c \ubcc0\ud658\ub41c FunctionGemma\u201d\ub97c \uac00\uc838\uc624\ub294 \ubcc0\ud615 \ud750\ub984\ub3c4 \uac19\uc774 \ubcfc \uac70\uc608\uc694.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u201c\ub0b4 \uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8\u201d \uc544\ud0a4\ud14d\ucc98 \ubbf8\ub9ac \ubcf4\uae30<\/h2>\n\n\n<style>.kb-image5912_35bb06-f2 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image5912_35bb06-f2\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"600\" height=\"405\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-600x405.png\" alt=\"FunctionGemma\ub97c Ollama\uc5d0\uc11c \ub3cc\ub9ac\ub294 \ud070 \uadf8\ub9bc \uc774\ubbf8\uc9c0\" class=\"kb-img wp-image-5953\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-600x405.png 600w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-300x202.png 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-768x518.png 768w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75-18x12.png 18w, https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-75.png 1200w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2e4\uc81c \uc6b0\ub9ac\uac00 \ub9cc\ub4e4 \uad6c\uc870\ub97c \uc124\uba85\ud574\ubcf4\uba74 \ub300\ub7b5 \uc774\ub807\uac8c \ub429\ub2c8\ub2e4.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\uc0ac\uc6a9\uc790 (\uc2a4\ub9c8\ud2b8\ud3f0 \ube0c\ub77c\uc6b0\uc800)<\/strong>\n<ul class=\"wp-block-list\">\n<li>\uac04\ub2e8\ud55c \uc6f9 \ud398\uc774\uc9c0\uc5d0\uc11c \uba85\ub839 \uc785\ub825<\/li>\n\n\n\n<li>\uc608: \u201c\uc624\ub298 \uc77c\uc815 \uc694\uc57d\ud574\uc11c \uba54\ubaa8 \uc571\uc5d0 \uc815\ub9ac\ud574\uc918\u201d<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Django \uc6f9 \uc11c\ubc84 (MacBook\uc5d0\uc11c \uc2e4\ud589)<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>\/api\/agent<\/code> \uac19\uc740 \uc5d4\ub4dc\ud3ec\uc778\ud2b8\ub85c \uc694\uccad \uc218\uc2e0<\/li>\n\n\n\n<li>\uc694\uccad \ub0b4\uc6a9\uc744 \uc815\uc81c\ud574\uc11c Ollama API\ub85c \uc804\ub2ec<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Ollama + FunctionGemma (MacBook \ub85c\uceec)<\/strong>\n<ul class=\"wp-block-list\">\n<li>Django\uac00 \ub118\uae34 \ud568\uc218 \uc2a4\ud0a4\ub9c8 (JSON)\uc640 \uc0ac\uc6a9\uc790 \uc694\uccad\uc744 \ubcf4\uace0<\/li>\n\n\n\n<li><code>\"tool\": \"create_note\", \"arguments\": {...}<\/code> \uac19\uc740 \ud615\uc2dd\uc73c\ub85c \u201c\uc5b4\ub5a4 \ud568\uc218\ub97c \uc5b4\ub5bb\uac8c \ubd80\ub974\ub77c\u201d\ub294 \uacc4\ud68d\uc744 \ub9cc\ub4e4\uc5b4 \uc90c<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Django\uc758 \u201c\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \ud568\uc218\u201d\ub4e4<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>create_note<\/code>, <code>send_message<\/code>, <code>open_app<\/code> \uac19\uc740 \ud30c\uc774\uc36c \ud568\uc218<\/li>\n\n\n\n<li>\ucc98\uc74c\uc5d0\ub294 \uc9c4\uc9dc \ud734\ub300\ud3f0 \ub300\uc2e0 <strong>\ub85c\uceec\uc5d0\uc11c \ub85c\uadf8 \ucc0d\uae30 \/ DB\uc5d0 \uc800\uc7a5 \/ Todo \ub9ac\uc2a4\ud2b8 \ucd94\uac00<\/strong>\ub85c \ud749\ub0b4<\/li>\n\n\n\n<li>\ub098\uc911\uc5d0\ub294 iOS Shortcut \/ Android ADB \/ Push \uc11c\ubc84 \ub4f1\uc73c\ub85c \ud655\uc7a5 \uac00\ub2a5<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\uacb0\uacfc \uc751\ub2f5<\/strong>\n<ul class=\"wp-block-list\">\n<li>FunctionGemma\uac00 \u201c\ud568\uc218 \ud638\ucd9c \u2192 \uacb0\uacfc \uc694\uc57d\ubb38\u201d\uae4c\uc9c0 \uc0dd\uc131<\/li>\n\n\n\n<li>Django\uac00 \uc774\uac83\uc744 \ub2e4\uc2dc \uc6f9 UI\ub85c \ubc18\ud658<\/li>\n\n\n\n<li>\uc2a4\ub9c8\ud2b8\ud3f0 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c \uacb0\uacfc \ud655\uc778<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \uad6c\uc870\ub97c \uc0ac\uc6a9\ud558\uba74<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LLM\uc740 \u201c\uc5b4\ub5a4 \ud589\ub3d9\uc744 \ud560\uc9c0 \uacb0\uc815\u201d\uae4c\uc9c0<\/strong><\/li>\n\n\n\n<li><strong>\uc2e4\uc81c \ud589\ub3d9\uc740 \uc804\ubd80 \ub0b4\uac00 \uc9e0 \ud30c\uc774\uc36c \ud568\uc218\uac00 \ub2f4\ub2f9<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud558\ub294 \uc2dd\uc774\uae30 \ub54c\ubb38\uc5d0, \ubcf4\uc548\u00b7\uc548\uc815\uc131 \uba74\uc5d0\uc11c \ud6e8\uc52c \ud1b5\uc81c\uac00 \uc27d\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ub0b4 MacBook \ud658\uacbd\uc774\uba74 \uad1c\ucc2e\uc744\uae4c\uc694?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc81c\uac00 \ud604\uc7ac \uc0ac\uc6a9 \uc911\uc778 \ub9e5\ubd81\uc758 \ud658\uacbd\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">MacBook Pro, \uba54\ubaa8\ub9ac 16GB, SSD 512GB<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">FunctionGemma\ub294 270M\uc9dc\ub9ac <strong>\uad49\uc7a5\ud788 \uc791\uc740 \ubaa8\ub378<\/strong>\uc774\ub77c, MacBook Pro + 16GB RAM\uc774\uba74 <strong>\uc5ec\uc720\ub86d\uac8c<\/strong> \ub3cc\ub9b4 \uc218 \uc788\ub294 \uc0ac\uc774\uc988\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \uc2dc\ub9ac\uc988\uc5d0\uc11c \uc804\uc81c\ub85c \ub450\ub294 \uae30\ubcf8 \uc0ac\uc591\uc740<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CPU<\/strong>: Apple Silicon(M1\/M2\/M3) \ub610\ub294 \ucd5c\uc2e0 Intel Mac<\/li>\n\n\n\n<li><strong>RAM<\/strong>: \ucd5c\uc18c 8GB (\uad8c\uc7a5 16GB \uc774\uc0c1)<\/li>\n\n\n\n<li><strong>OS<\/strong>: macOS 14 Sonoma \uadfc\ucc98 \ubc84\uc804 (Ollama \ucd5c\uc2e0 \ubc84\uc804 \uc9c0\uc6d0 \ubc94\uc704)<\/li>\n\n\n\n<li><strong>\ud544\uc218 \uc124\uce58 \uc608\uc815<\/strong>:\n<ul class=\"wp-block-list\">\n<li>Homebrew <\/li>\n\n\n\n<li>Python 3.11 \uadfc\ucc98 \ubc84\uc804(\uc815\ud655 \ubc84\uc804\uc740 Django\/\ub77c\uc774\ube0c\ub7ec\ub9ac\uc640 \ub9de\ucdb0\uc11c)<\/li>\n\n\n\n<li>Ollama for macOS<\/li>\n\n\n\n<li>Django, requests \ub4f1 Python \ud328\ud0a4\uc9c0<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\uc0ac\uc804 \uc810\uac80\uc6a9 \uac04\ub2e8 \uccb4\ud06c<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\ud130\ubbf8\ub110\uc5d0\uc11c \uc774\ub7f0 \uac83\ub4e4\uc744 \ubbf8\ub9ac \ud655\uc778\ud574\ub450\uba74 \uc88b\uc544\uc694.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \ud30c\uc774\uc36c \ubc84\uc804 \ud655\uc778\npython3 --version\n\n# pip \ubc84\uc804 &amp; \uc704\uce58\npython3 -m pip --version\nwhich python3\nwhich pip3<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\uc774\ubc88 \ud3b8\uc5d0\uc11c \uaf2d \uae30\uc5b5\ud558\uba74 \uc88b\uc740 \ud3ec\uc778\ud2b8<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>FunctionGemma<\/strong>\u306f\n<ul class=\"wp-block-list\">\n<li>\u201c\ub300\ud654 \uc798\ud558\ub294 \uc560\u201d\uac00 \uc544\ub2c8\ub77c<\/li>\n\n\n\n<li>\u201c\uc5b4\ub5a4 \ud568\uc218\ub97c \uc5b4\ub5a4 \uc778\uc790\ub85c \ud638\ucd9c\ud574\uc57c \ud558\ub294\uc9c0 \uc798 \uc815\ud558\ub294 \uc560\u201d\ub2e4.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Ollama<\/strong>\u306f\n<ul class=\"wp-block-list\">\n<li>\ub85c\uceec LLM \uc11c\ubc84 + \ubaa8\ub378 \ub9e4\ub2c8\uc800 \uc5ed\ud560<\/li>\n\n\n\n<li>GGUF \ubaa8\ub378(\uc608: \ubcc0\ud658\ub41c FunctionGemma)\uc744 \uac00\uc838\ub2e4\uac00 <strong>\ud55c \uc904 \uba85\ub839\uc73c\ub85c<\/strong> \ub3cc\ub9ac\uac8c \ud574\uc900\ub2e4. <\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8 \uad6c\uc870<\/strong>\u306f\n<ul class=\"wp-block-list\">\n<li>\u201c\ube0c\ub77c\uc6b0\uc800 \u2192 Django \u2192 Ollama(FunctionGemma) \u2192 Python \ud568\uc218 \u2192 \uacb0\uacfc \uc751\ub2f5\u201d<\/li>\n\n\n\n<li>LLM\uc740 \u201c\uc0dd\uac01 \/ \uacc4\ud68d \/ \ud568\uc218 \ucf5c \uc124\uacc4\u201d,<br>\uc2e4\uc81c \ud589\ub3d9\uc740 Django + Python\uc774 \ub2f4\ub2f9.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>MacBook Pro 16GB \uba54\ubaa8\ub9ac \ud658\uacbd\uc774\uba74\n<ul class=\"wp-block-list\">\n<li>FunctionGemma + Django + \uc57d\uac04\uc758 \ubd80\uac00 \uc791\uc5c5\uae4c\uc9c0 <strong>\ucda9\ubd84\ud788 \uc5ec\uc720\ub85c\uc6b4 \uc218\uc900<\/strong>\uc774\ub2e4. <\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">\uc6a9\uc5b4 \uc815\ub9ac (\ucd08\ubcf4\uc790\uc6a9)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>FunctionGemma<\/strong><br>\uad6c\uae00 Gemma 3 270M \uae30\ubc18\uc758 <strong>\ud568\uc218 \ud638\ucd9c \ud2b9\ud654 LLM<\/strong>.<br>\uc790\uc5f0\uc5b4\ub97c \u201c\uc5b4\ub5a4 \ud568\uc218\ub97c \uc5b4\ub5a4 \uc778\uc790\ub85c \ud638\ucd9c\ud574\uc57c \ud560\uc9c0\u201d JSON \uad6c\uc870\ub85c \ubc14\uafd4\uc8fc\ub294 \ub370 \uac15\ud558\ub2e4. <\/li>\n\n\n\n<li><strong>\ud568\uc218 \ud638\ucd9c(Function Calling \/ Tool Calling)<\/strong><br>LLM\uc774 \u201c\uadf8\ub0e5 \ub2f5\uc744 \ubb38\uc7a5\uc73c\ub85c\u201d \uc8fc\ub294 \ub300\uc2e0,<br><code>{\"tool\": \"send_message\", \"arguments\": {...}}<\/code>\ucc98\ub7fc <strong>\ucf54\ub4dc\uac00 \uc2e4\ud589\ud560 \uc218 \uc788\ub294 \ud615\ud0dc<\/strong>\ub85c \uc694\uccad\uc744 \ub9cc\ub4e4\uc5b4 \uc8fc\ub294 \ubc29\uc2dd.<\/li>\n\n\n\n<li><strong>Ollama<\/strong><br>Mac\/\ub85c\uceec\uc5d0\uc11c \uc5ec\ub7ec LLM\uc744 \uc27d\uace0 \ud3b8\ud558\uac8c \ub3cc\ub9ac\uac8c \ud574\uc8fc\ub294 <strong>\ub85c\uceec LLM \uc11c\ubc84<\/strong>\/\ub3c4\uad6c.<br>CLI\uc640 HTTP API\ub97c \uc81c\uacf5\ud558\uace0, GGUF \ubaa8\ub378\uc744 \uac04\ub2e8\ud788 \ub4f1\ub85d\ud574\uc11c \uc4f8 \uc218 \uc788\ub2e4.<\/li>\n\n\n\n<li><strong>GGUF<\/strong><br>llama.cpp \uacc4\uc5f4\uc5d0\uc11c \uc4f0\ub294 \uacbd\ub7c9 <strong>\uc591\uc790\ud654 \ubaa8\ub378 \ud3ec\ub9f7<\/strong>.<br>\ub300\ud615 LLM\/\uc18c\ud615 LLM\uc744 \ub85c\uceec\uc5d0\uc11c \ub3cc\ub9ac\uae30 \uc88b\uc740 \ud615\ud0dc\ub85c \ub9cc\ub4e0 \u201c\ubaa8\ub378 \ud30c\uc77c \ud3ec\ub9f7\u201d\uc774\ub77c\uace0 \uc0dd\uac01\ud558\uba74 \ud3b8\ud558\ub2e4.<\/li>\n\n\n\n<li><strong>\uc5e3\uc9c0(Edge or On-device) \ubaa8\ub378<\/strong><br>\ud074\ub77c\uc6b0\ub4dc \uc11c\ubc84\uac00 \uc544\ub2c8\ub77c \uc0ac\uc6a9\uc790 \uae30\uae30(\ud3f0, \ub178\ud2b8\ubd81 \ub4f1)\uc5d0\uc11c \uc9c1\uc811 \ub3cc\ub9ac\ub294 AI \ubaa8\ub378.<br>\uac1c\uc778\uc815\ubcf4 \ubcf4\ud638, \uc9c0\uc5f0 \uc2dc\uac04, \uc624\ud504\ub77c\uc778 \uc0ac\uc6a9\uc5d0 \uac15\uc810\uc774 \uc788\ub2e4. FunctionGemma\ub3c4 \uc774\ub7f0 \uc5e3\uc9c0\/\uc628\ub514\ubc14\uc774\uc2a4 \uc0ac\uc6a9\uc744 \uaca8\ub0e5\ud55c \ubaa8\ub378\uc774\ub2e4.<\/li>\n\n\n\n<li><strong>\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8<\/strong><br>\u201c\uc2a4\ub9c8\ud2b8\ud3f0\uc5d0\uc11c \uc2e4\uc81c\ub85c \ud560 \uc77c\uc744 \ub300\uc2e0 \uc0dd\uac01\ud558\uace0 \uc2e4\ud589\ud574\uc8fc\ub294 \uc5d0\uc774\uc804\ud2b8\u201d\ub97c \uc774\ub807\uac8c \uc774\ud574\ud558\uc154\ub3c4 \ubb34\ubc29<br>\uc608: \uc77c\uc815 \uc815\ub9ac, \uba54\uc2dc\uc9c0 \ubcf4\ub0b4\uae30, \uba54\ubaa8 \uc791\uc131, \uc571 \uc5f4\uae30, \uc54c\ub78c \uc138\ud305 \ub4f1.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\ub9c8\ubb34\ub9ac &amp; \ub2e4\uc74c \ud3b8 \uc608\uace0<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc815\ub9ac\ud574\ubcf4\uba74, 1\ud3b8\uc5d0\uc11c\ub294<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\uc65c FunctionGemma Ollama \uc870\ud569\uc774 \u201c\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8\u201d\uc5d0 \ucc30\ub5a1\uc778\uc9c0<\/strong>,<\/li>\n\n\n\n<li><strong>\uc6b0\ub9ac\uac00 \ub9cc\ub4e4 \uc804\uccb4 \uad6c\uc870\uac00 \uc5b4\ub5bb\uac8c \uc0dd\uacbc\ub294\uc9c0<\/strong>,<\/li>\n\n\n\n<li>\u305d\u3057\u3066 <strong>MacBook \ud658\uacbd\uc774 \ucda9\ubd84\ud788 \uc900\ube44\ub41c \uc0c1\ud0dc\uc778\uc9c0<\/strong>\ub97c \ud655\uc778\ud588\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\uc81c 2\ud3b8\uc5d0\uc11c\ub294 \uc9c4\uc9dc\ub85c \uc190\uc744 \uc6c0\uc9c1\uc5ec\uc11c \ub2e4\uc74c\uc744 \ud558\ub824\uace0 \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ollama \uc124\uce58<\/li>\n\n\n\n<li>FunctionGemma \ubaa8\ub378 \ub2e4\uc6b4\ub85c\ub4dc\/\uc811\uadfc \ud750\ub984 \uc815\ub9ac<\/li>\n\n\n\n<li>GGUF \ubcc0\ud658 \uac1c\ub150<\/li>\n\n\n\n<li>\uac04\ub2e8\ud55c <strong>\ud568\uc218 \ud638\ucd9c \uc608\uc81c Python \ucf54\ub4dc<\/strong>\uae4c\uc9c0 \ud55c \ubc88\uc5d0 \uac00\ubcfc\uac8c\uc694.<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>\uc9c0\ub09c \ud3b8\uc5d0\uc11c FunctionGemma\ub97c \uc18c\uac1c\ub97c \ud588\ub294\ub370\uc694. \uc774\ubc88\uc5d4 \ubaa9\ud45c\ub97c \ud558\ub098 \uc124\uc815\ud574\ubcf4\uaca0\uc2b5\ub2c8\ub2e4. \u201c\ub9e5\ubd81\uc5d0&#8230;<\/p>","protected":false},"author":3,"featured_media":5950,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[7],"tags":[1270,1272,1267,1273,1274,918,1269,1265,1275,1271],"class_list":["post-5912","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai-coding","tag-django-ai-","tag-functiongemma-ollama","tag-gemma-3","tag-macbook-ai-","tag-ollama-","tag--llm","tag-1269","tag--ai","tag-1275","tag-1271"],"taxonomy_info":{"category":[{"value":7,"label":"\uc778\uacf5\uc9c0\ub2a5(AI)"}],"post_tag":[{"value":1270,"label":"Django AI \uc5f0\ub3d9"},{"value":1272,"label":"FunctionGemma Ollama"},{"value":1267,"label":"Gemma 3"},{"value":1273,"label":"MacBook AI \uac1c\ubc1c"},{"value":1274,"label":"Ollama \ud29c\ud1a0\ub9ac\uc5bc"},{"value":918,"label":"\ub85c\uceec LLM"},{"value":1269,"label":"\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8"},{"value":1265,"label":"\uc628\ub514\ubc14\uc774\uc2a4 AI"},{"value":1275,"label":"\ud30c\uc774\uc36c \ud568\uc218 \ud638\ucd9c"},{"value":1271,"label":"\ud568\uc218 \ud638\ucd9c \ubaa8\ub378"}]},"featured_image_src_large":["https:\/\/secondlife.lol\/wp-content\/uploads\/2025\/12\/image-74.png",512,304,false],"author_info":{"display_name":"TERE","author_link":"https:\/\/secondlife.lol\/ja\/author\/tere\/"},"comment_info":0,"category_info":[{"term_id":7,"name":"\uc778\uacf5\uc9c0\ub2a5(AI)","slug":"ai-coding","term_group":0,"term_taxonomy_id":7,"taxonomy":"category","description":"","parent":20,"count":74,"filter":"raw","cat_ID":7,"category_count":74,"category_description":"","cat_name":"\uc778\uacf5\uc9c0\ub2a5(AI)","category_nicename":"ai-coding","category_parent":20}],"tag_info":[{"term_id":1270,"name":"Django AI \uc5f0\ub3d9","slug":"django-ai-%ec%97%b0%eb%8f%99","term_group":0,"term_taxonomy_id":1270,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1272,"name":"FunctionGemma Ollama","slug":"functiongemma-ollama","term_group":0,"term_taxonomy_id":1272,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1267,"name":"Gemma 3","slug":"gemma-3","term_group":0,"term_taxonomy_id":1267,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":1273,"name":"MacBook AI \uac1c\ubc1c","slug":"macbook-ai-%ea%b0%9c%eb%b0%9c","term_group":0,"term_taxonomy_id":1273,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1274,"name":"Ollama \ud29c\ud1a0\ub9ac\uc5bc","slug":"ollama-%ed%8a%9c%ed%86%a0%eb%a6%ac%ec%96%bc","term_group":0,"term_taxonomy_id":1274,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":918,"name":"\ub85c\uceec LLM","slug":"%eb%a1%9c%ec%bb%ac-llm","term_group":0,"term_taxonomy_id":918,"taxonomy":"post_tag","description":"","parent":0,"count":4,"filter":"raw"},{"term_id":1269,"name":"\uc2a4\ub9c8\ud2b8\ud3f0 \uc561\uc158 \uc5d0\uc774\uc804\ud2b8","slug":"%ec%8a%a4%eb%a7%88%ed%8a%b8%ed%8f%b0-%ec%95%a1%ec%85%98-%ec%97%90%ec%9d%b4%ec%a0%84%ed%8a%b8","term_group":0,"term_taxonomy_id":1269,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1265,"name":"\uc628\ub514\ubc14\uc774\uc2a4 AI","slug":"%ec%98%a8%eb%94%94%eb%b0%94%ec%9d%b4%ec%8a%a4-ai","term_group":0,"term_taxonomy_id":1265,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":1275,"name":"\ud30c\uc774\uc36c \ud568\uc218 \ud638\ucd9c","slug":"%ed%8c%8c%ec%9d%b4%ec%8d%ac-%ed%95%a8%ec%88%98-%ed%98%b8%ec%b6%9c","term_group":0,"term_taxonomy_id":1275,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":1271,"name":"\ud568\uc218 \ud638\ucd9c \ubaa8\ub378","slug":"%ed%95%a8%ec%88%98-%ed%98%b8%ec%b6%9c-%eb%aa%a8%eb%8d%b8","term_group":0,"term_taxonomy_id":1271,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"}],"_links":{"self":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5912","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/comments?post=5912"}],"version-history":[{"count":4,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5912\/revisions"}],"predecessor-version":[{"id":5958,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/posts\/5912\/revisions\/5958"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/media\/5950"}],"wp:attachment":[{"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/media?parent=5912"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/categories?post=5912"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/secondlife.lol\/ja\/wp-json\/wp\/v2\/tags?post=5912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}