{"id":1912,"date":"2024-04-07T09:03:27","date_gmt":"2024-04-07T00:03:27","guid":{"rendered":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/?p=1912"},"modified":"2024-04-07T10:28:32","modified_gmt":"2024-04-07T01:28:32","slug":"gemini-api-generative-ai-dart3-3","status":"publish","type":"post","link":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/2024\/04\/07\/gemini-api-generative-ai-dart3-3\/","title":{"rendered":"Gemini API &#8211; Generative AI (#Dart3.3)"},"content":{"rendered":"\n<p>\uad6c\uae00\uc774 \uc0dd\uc131\ud615 AI\uc778 Gemini\ub97c \ubc1c\ud45c\ud558\uc600\uc2b5\ub2c8\ub2e4. API\ub97c \uacf5\uc2dd \ubc1c\ud45c\ud558\uba74\uc11c, Dart(Flutter)\ub97c \ud3ec\ud568\ud558\uc600\uc2b5\ub2c8\ub2e4. \uc774\uc678\uc758 \uc5b8\uc5b4\ub294 Python, Kotlin, Go, Node.js, JS, Swift \uc785\ub2c8\ub2e4. \uc77c\ub2e8 C++\uac00 \uc5c6\ub2e4\ub294 \ubd80\ubd84\uc774 \uac1c\uc778\uc801\uc73c\ub85c \uac00\uc7a5 \ub180\ub77c\uc6b4 \ubd80\ubd84\uc785\ub2c8\ub2e4. \uc5b8\uc5b4 \uc120\ud0dd\uc758 \uc774\uc720\ub97c \uc120\ud0dd\ud574 \ubcf4\uba74, Kotlin\/Swift\ub294 Native App, Go\uc640 Node.js\ub294 \uc11c\ubc84, Python\uc740 \ub370\uc774\ud130 \ubd84\uc11d, JS\uc640 Dart(Flutter)\ub294 Full-stack \uac1c\ubc1c\ub85c \ubcf4\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<p>\uc0ac\uc6a9 \ubc29\ubc95\uc740 \uc5b4\ub835\uc9c0 \uc54a\uc73c\uba70, \uac1c\ubc1c\uc790 \ub4f1\ub85d \ub4f1\uc744 \ud1b5\ud55c \uc778\uc99d\ud0a4 \ub4f1\uc744 \ubc1b\uc740 \ud6c4, \uc544\ub798\uc758 \uac04\ub2e8\ud55c \ucf54\ub4dc\uc5d0\uc11c \uc2dc\uc791\ud558\ub3c4\ub85d \ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>final model = GenerativeModel(model: \"gemini-pro-vision\", apiKey: apiKey);\n\nfinal response = await model.generateContent(&#91;\n\u2003\u2003Content.multi(&#91;\n\u2003\u2003\u2003\u2003TextPart(\"What's in this photo?\"),\n\u2003\u2003\u2003\u2003DataPart(\"image\/png\", imageBytes),\n\u2003\u2003])\n]);<\/code><\/pre>\n\n\n\n<p>&#8216;Dart \ub610\ub294 Flutter \uc571\uc5d0\uc11c Gemini API \uc2dc\uc791\ud558\uae30&#8217;\uc758 \ud29c\ud1a0\ub9ac\uc5bc\ub3c4 \uc81c\uacf5\ud558\ub2c8, \uc0dd\uc131\ud615 AI\uc5d0 \uad00\uc2ec\uc774 \uc788\ub294 \uac1c\ubc1c\uc790\ub294 \ubc14\ub85c \uc2dc\uc791\ud574 \ubcf4\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/p>\n\n\n\n<p>[\ucd9c\ucc98] <a href=\"https:\/\/ai.google.dev\/?gad_source=1&amp;gclid=Cj0KCQjw5cOwBhCiARIsAJ5njubtIowfdo7mqdwkYUXluHSNn9qKalRX9gnX8OZacSL3Rh_2QKi7nPkaAjpOEALw_wcB\" title=\"\">Build with Gemini<\/a><\/p>\n\n\n\n<p>[\ucd9c\ucc98] <a href=\"https:\/\/ai.google.dev\/tutorials\/get_started_dart?hl=ko&amp;_gl=1*1oz7foz*_up*MQ..&amp;gclid=Cj0KCQjw5cOwBhCiARIsAJ5njubtIowfdo7mqdwkYUXluHSNn9qKalRX9gnX8OZacSL3Rh_2QKi7nPkaAjpOEALw_wcB\" title=\"\">Dart \ub610\ub294 Flutter \uc571\uc5d0\uc11c Gemini API \uc2dc\uc791\ud558\uae30<\/a><\/p>\n\n\n\n<p> <\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uad6c\uae00\uc774 \uc0dd\uc131\ud615 AI\uc778 Gemini\ub97c \ubc1c\ud45c\ud558\uc600\uc2b5\ub2c8\ub2e4. API\ub97c \uacf5\uc2dd \ubc1c\ud45c\ud558\uba74\uc11c, Dart(Flutter)\ub97c \ud3ec\ud568\ud558\uc600\uc2b5\ub2c8\ub2e4. \uc774\uc678\uc758 \uc5b8\uc5b4\ub294 Python, Kotlin, Go, Node.js, JS, Swift \uc785\ub2c8\ub2e4. \uc77c\ub2e8 C++\uac00 \uc5c6\ub2e4\ub294 \ubd80\ubd84\uc774 \uac1c\uc778\uc801\uc73c\ub85c \uac00\uc7a5 \ub180\ub77c\uc6b4 \ubd80\ubd84\uc785\ub2c8\ub2e4. \uc5b8\uc5b4 \uc120\ud0dd\uc758 \uc774\uc720\ub97c &#8230;<\/p>\n","protected":false},"author":1,"featured_media":1748,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[3],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/1912"}],"collection":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/comments?post=1912"}],"version-history":[{"count":1,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/1912\/revisions"}],"predecessor-version":[{"id":1913,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/posts\/1912\/revisions\/1913"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/media\/1748"}],"wp:attachment":[{"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/media?parent=1912"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/categories?post=1912"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/mobilelab.khu.ac.kr\/wordpress\/wp-json\/wp\/v2\/tags?post=1912"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}