{"id":39,"date":"2024-08-04T22:49:09","date_gmt":"2024-08-04T13:49:09","guid":{"rendered":"https:\/\/monkeybear.kr\/?p=39"},"modified":"2024-08-04T22:55:43","modified_gmt":"2024-08-04T13:55:43","slug":"ollama-curl%ed%86%b5%ec%8b%a0-next-js%ec%97%90%ec%84%9c-api%eb%a1%9c%eb%a7%8c%eb%93%a4%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/monkeybear.kr\/?p=39","title":{"rendered":"ollama curl\ud1b5\uc2e0 Next.js\uc5d0\uc11c API\ub85c\ub9cc\ub4e4\uae30"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"862\" height=\"592\" src=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.26.34.png\" alt=\"\" class=\"wp-image-41\" style=\"width:417px;height:auto\" srcset=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.26.34.png 862w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.26.34-300x206.png 300w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.26.34-768x527.png 768w\" sizes=\"auto, (max-width: 862px) 100vw, 862px\" \/><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">1.ollama\uc774\uc6a9\ud574\uc11c curl\ubc29\uc2dd\uc73c\ub85c \uc9c8\ubb38\ud558\uae30<\/h3>\n\n\n\n<p>ollama\ub97c \uc124\uce58\ud574\uc11c \uc0ac\uc6a9\ud558\uba74 \uae30\ubcf8\uc801\uc73c\ub85c \uc544\ub798\uc640 \uac19\uc774 \uc2e4\ud589\ud6c4 \ubc14\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <\/p>\n\n\n\n<p>\ud558\uc9c0\ub9cc \uc774\ub807\uac8c \ub9d0\uace0 curl\ubc29\uc2dd\uc73c\ub85c \uc0c8\ub85c\uc6b4 \ucee4\ub9e8\ub4dc\ucc3d\uc5d0\uc11c \uc9c8\ubb38\uc744 \ud560 \uc218 \ub3c4 \uc788\uc8e0<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"635\" src=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-1024x635.png\" alt=\"\" class=\"wp-image-42\" srcset=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-1024x635.png 1024w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-300x186.png 300w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-768x477.png 768w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-1536x953.png 1536w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.27.59-2048x1271.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><a href=\"https:\/\/github.com\/ollama\/ollama\/blob\/main\/docs\/api.md\">https:\/\/github.com\/ollama\/ollama\/blob\/main\/docs\/api.md<\/a><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/localhost:11434\/api\/generate -d '{\n  \"model\": \"llama3\",\n  \"prompt\": \"Why is the sky blue?\",\n  \"stream\": false\n}'<\/code><\/pre>\n\n\n\n<p>\uc704\uc5d0 ollama \uac00\uc774\ub4dc\uc5d0 \uc788\ub294 curl \ud1b5\uc2e0\ubc29\uc2dd\uc778\ub370 \uc704\uc640\uac19\uc774 \uadf8\ub300\ub85c \ubcf5\uc0ac\ud574\uc11c \ucee4\ub9e8\ub4dc \ucc3d\uc5d0 \ub123\uc73c\uba74 \uc544\ub798\uc640 \uac19\uc774 \ubc18\uc751\uc774 \ub098\uc628\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"759\" src=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.30.32-1024x759.png\" alt=\"\" class=\"wp-image-43\" srcset=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.30.32-1024x759.png 1024w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.30.32-300x222.png 300w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.30.32-768x569.png 768w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2024-08-04-\uc624\ud6c4-10.30.32.png 1144w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2.Next.js\uc5d0\uc11c API\ud654 \ud574\uc11c \uc0ac\uc6a9\ud558\uae30<\/h3>\n\n\n\n<p>\ud558\uc9c0\ub9cc \ub0b4\uac00 \ud558\uace0\uc2f6\uc740\uac70\ub294 API\ud654\ud574\uc11c \ub9cc\ub4e4\uc5b4\uc11c \ub370\uc774\ud130\ub97c fetch\ud574\uc11c \uc6f9 \ud654\uba74\uc5d0\uc11c \uc9c8\ubb38\uc744 \uc8fc\uace0\ubc1b\uace0 \uc2f6\uc740\uac70\uae30 \ub54c\ubb38\uc5d0 \uc774\uac78<\/p>\n\n\n\n<p>\ub2e4\uc2dc \ub9cc\ub4e4\uc5b4\uc904 \ud544\uc694\uac00 \uc788\ub2e4. 2\uac00\uc9c0 \ubc29\uc2dd\uc73c\ub85c \ub2e4 \ub9cc\ub4e4 \uc218 \uc788\ub2e4. page router, app router\uc5d0 api\ub97c \ub9cc\ub4e4\uc5b4\uc57c\ud558\ub294\ub370 \ub450\uac1c\ub294<\/p>\n\n\n\n<p>\uc5b4\ucc28\ud53c \ud3f4\ub354 \uad6c\uc870\uc0c1\uc758 \ucc28\uc774\uac00 \uc880 \uc788\uc9c0 \uae30\ubcf8 \uc801\uc778 \ucf54\ub4dc\ub294 \ube44\uc2b7\ud560\uac70\ub77c\uace0 \uc0dd\uac01\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><strong>pages\/api\/generatellama.js<\/strong>\n\nexport default async function handler(req, res) {\n  if (req.method !== 'POST') {\n    res.setHeader('Allow', &#91;'POST']);\n    return res.status(405).end(`Method ${req.method} Not Allowed`);\n  }\n\n  const { prompt } = req.body;\n\n  const response = await fetch('http:\/\/localhost:11434\/api\/generate', {\n    method: 'POST',\n    headers: {\n      'Content-Type': 'application\/json',\n    },\n    body: JSON.stringify({\n      model: 'llama3', \/\/llama3, eeve_gguf\n      prompt:prompt,\/\/ 'Why is the sky blue?',\n      stream: false\n    }),\n  });\n\n  const data = await response.json();\n  res.status(200).json(data);\n}\n<\/code><\/pre>\n\n\n\n<p>\uc6d0\ub798 curl \ud1b5\uc2e0\uc73c\ub85c \uc8fc\uace0\ubc1b\ub358 \ub140\uc11d\uc744 POST\uc694\uccad\uc744 \ud1b5\ud574 \uc8fc\uace0\ubc1b\uc744 \uc218 \uc788\ub3c4\ub85d \ucf54\ub4dc\ub97c \ub9cc\ub4e4\uc5b4 \uc92c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl http:\/\/localhost:11434\/api\/chat -d '{\n  \"model\": \"llama3\",\n  \"messages\": &#91;\n    {\n      \"role\": \"user\",\n      \"content\": \"why is the sky blue?\"\n    }\n  ],\n  \"stream\": false\n}'<\/code><\/pre>\n\n\n\n<p>\uc704\uc640\uac19\uc774 curl \ud1b5\uc2e0\uc73c\ub85c \uc8fc\uace0\ubc1b\ub358\uac78 api\ud654\ud574\uc11c \ub9cc\ub4e4\uba74 \uc774\uc81c Next.js \ud654\uba74\ub2e8\uc5d0\uc11c\ub3c4 \ub370\uc774\ud130\ub97c \ubd88\ub7ec\uc640 \uc9c8\ubb38\uc744 <\/p>\n\n\n\n<p>\uc8fc\uace0 \ubc1b\uc744 \uc218 \uc788\ub2e4. \ubb3c\ub860 \uc774\ub807\uac8c \ub9cc\ub4e4\uc9c0 \uc54a\uc544\ub3c4 \ubc14\ub85c \ud1b5\uc2e0\ub3c4 \uac00\ub2a5\ud574 \ubcf4\uc778\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import axios from 'axios';\n\nconst data = {\n  model: \"llama3\",\n  messages: &#91;\n    {\n      role: \"user\",\n      content: \"why is the sky blue?\"\n    }\n  ],\n  stream: false\n};\n\naxios.post('http:\/\/localhost:11434\/api\/chat', data, {\n  headers: {\n    'Content-Type': 'application\/json'\n  }\n})\n.then(response => {\n  console.log('Response:', response.data);\n})\n.catch(error => {\n  console.error('Error:', error);\n});\n<\/code><\/pre>\n\n\n\n<p>\ub2e4\ub9cc Next.js \uc11c\ubc84\ucabd\uc5d0\uc11c \uad00\ub9ac\ub97c \ud558\ub294\uac8c \uc88b\uc544\ubcf4\uc778\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"509\" src=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image-1024x509.png\" alt=\"\" class=\"wp-image-44\" srcset=\"https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image-1024x509.png 1024w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image-300x149.png 300w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image-768x382.png 768w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image-1536x764.png 1536w, https:\/\/monkeybear.kr\/wp-content\/uploads\/2024\/08\/image.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\uc774\ub7ec\ub098 \uc800\ub7ec\ub098 \ub85c\uceec\uc774\uac74 \ud2b9\uc815\uc11c\ubc84\uc5d0\uc11c \uc791\ub3d9\ud558\ub294 \ubaa8\ub378\uc744 \uc774\uc640\uac19\uc774 API\ud654\ud574\uc11c \ub9cc\ub4e4 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<p>\uc5b4\ucc28\ud53c \ub370\uc774\ud130 fetch\ud574\uc11c \uc0ac\uc6a9\ud558\ub294\uac83\uc740 \ud504\ub860\ud2b8\uc758 \ubaab\uc774\ub2c8\uae4c..! \ubb54\uac00 \uc810\uc810 \ubaa8\ub378 \uc0ac\uc6a9\ud558\ub294\uac8c \uc26c\uc6cc\uc9c0\ub294 \uc2dc\ub300\ub85c<\/p>\n\n\n\n<p>\ub2e4\uac00\uc624\uace0 \uc788\ub294\uac83 \uac19\ub2e4. \uc810\uc810 \ud68c\uc0ac\ub4e4\ub9c8\ub2e4 \uc0ac\ub0b4\uc5d0\uc11c Private GPT\uac19\uc740\uac70 \uc6b4\uc601\ud558\ub824\ub294 \uc6c0\uc9c1\uc784\ub3c4 \ub9ce\uc774\ubcf4\uc774\uace0 \u314e\u314e..<\/p>\n\n\n\n<p>\uc774\ub7f0\uac78 \uc0ac\uc6a9\uc790\uc6a9\uc73c\ub85c \ud55c\ubc88 \uc11c\ube44\uc2a4 \ucd9c\uc2dc\ud574\ubcf4\uace0 \uc2f6\uc740\ub370 \ub9e4\ubc88 \ubb34\uc0b0\ub418\uc11c \uc544\uc26c\uc6b4 \uc0c1\ud669\uc774\uae34\ud558\ub2e4. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>1.ollama\uc774\uc6a9\ud574\uc11c curl\ubc29\uc2dd\uc73c\ub85c \uc9c8\ubb38\ud558\uae30 ollama\ub97c \uc124\uce58\ud574\uc11c \uc0ac\uc6a9\ud558\uba74 \uae30\ubcf8\uc801\uc73c\ub85c \uc544\ub798\uc640 \uac19\uc774 \uc2e4\ud589\ud6c4 \ubc14\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \uc774\ub807\uac8c \ub9d0\uace0 curl\ubc29\uc2dd\uc73c\ub85c \uc0c8\ub85c\uc6b4 \ucee4\ub9e8\ub4dc\ucc3d\uc5d0\uc11c \uc9c8\ubb38\uc744 \ud560 \uc218 \ub3c4 \uc788\uc8e0 https:\/\/github.com\/ollama\/ollama\/blob\/main\/docs\/api.md \uc704\uc5d0 ollama \uac00\uc774\ub4dc\uc5d0 \uc788\ub294 curl \ud1b5\uc2e0\ubc29\uc2dd\uc778\ub370 \uc704\uc640\uac19\uc774 \uadf8\ub300\ub85c \ubcf5\uc0ac\ud574\uc11c \ucee4\ub9e8\ub4dc \ucc3d\uc5d0 \ub123\uc73c\uba74 \uc544\ub798\uc640 \uac19\uc774 \ubc18\uc751\uc774 \ub098\uc628\ub2e4. 2.Next.js\uc5d0\uc11c API\ud654 \ud574\uc11c \uc0ac\uc6a9\ud558\uae30 \ud558\uc9c0\ub9cc \ub0b4\uac00 \ud558\uace0\uc2f6\uc740\uac70\ub294 API\ud654\ud574\uc11c \ub9cc\ub4e4\uc5b4\uc11c \ub370\uc774\ud130\ub97c fetch\ud574\uc11c \uc6f9 \ud654\uba74\uc5d0\uc11c &#8230; <a title=\"ollama curl\ud1b5\uc2e0 Next.js\uc5d0\uc11c API\ub85c\ub9cc\ub4e4\uae30\" class=\"read-more\" href=\"https:\/\/monkeybear.kr\/?p=39\" aria-label=\"Read more about ollama curl\ud1b5\uc2e0 Next.js\uc5d0\uc11c API\ub85c\ub9cc\ub4e4\uae30\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":44,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[10,9,17,15,16,11,7,6,12,14,13],"class_list":["post-39","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-4","tag-apiroute","tag-curl","tag-gpt","tag-llama3","tag-llama3-1","tag-llm","tag-nextjs","tag-ollama","tag-privategpt","tag-api"],"_links":{"self":[{"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/posts\/39","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=39"}],"version-history":[{"count":1,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/posts\/39\/revisions"}],"predecessor-version":[{"id":45,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/posts\/39\/revisions\/45"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=\/wp\/v2\/media\/44"}],"wp:attachment":[{"href":"https:\/\/monkeybear.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=39"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=39"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/monkeybear.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=39"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}