{"id":1460,"date":"2023-11-10T17:33:58","date_gmt":"2023-11-10T17:33:58","guid":{"rendered":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/"},"modified":"2023-11-10T17:33:58","modified_gmt":"2023-11-10T17:33:58","slug":"gpt-function-calling-5-underrated-use-cases","status":"publish","type":"post","link":"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/","title":{"rendered":"GPT Function Calling: 5 Underrated Use Cases"},"content":{"rendered":"<div id=\"dev95-3526829869\" class=\"dev95-- dev95-entity-placement\"><script async=\"async\" data-cfasync=\"false\" src=\"https:\/\/pl27862732.profitableratecpmnetwork.com\/2ad7a50e0bbc23ac6801d7b77c501463\/invoke.js\"><\/script>\r\n<div id=\"container-2ad7a50e0bbc23ac6801d7b77c501463\"><\/div><\/div><div>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1024\/1%2AdoghMb44J43LgPYtkUCByw.jpeg?w=1280&#038;ssl=1\"><figcaption>OpenAI\u2019s backend converting messy unstructured data to structured data via functions<\/figcaption><\/figure>\n<p>OpenAI\u2019s \u201cFunction Calling\u201d might be the most groundbreaking yet under appreciated feature released by any software company\u2026\u00a0ever.<\/p>\n<h3>What are GPT Functions<\/h3>\n<p>Functions allow you to <strong>turn unstructured data into structured data<\/strong>. This might not sound all that groundbreaking but when you consider that 90% of data processing and data entry jobs worldwide exist for this exact reason, it\u2019s quite a revolutionary feature that went somewhat unnoticed.<\/p><div id=\"dev95-2458636729\" class=\"dev95- dev95-entity-placement\"><center>\r\n<script>\r\n  atOptions = {\r\n    'key' : '4ba6b6513c00e0ba76511f798ae56401',\r\n    'format' : 'iframe',\r\n    'height' : 50,\r\n    'width' : 320,\r\n    'params' : {}\r\n  };\r\n<\/script>\r\n<script src=\"https:\/\/www.highrevenueformat.com\/4ba6b6513c00e0ba76511f798ae56401\/invoke.js\"><\/script>\r\n\t<\/center><\/div>\n<p>Have you ever found yourself <em>begging<\/em> GPT (3.5 or 4) to spit out the answer you want and absolutely nothing else? No \u201cSure, here is your\u2026\u201d or any other useless fluff surrounding the core answer. GPT Functions are the solution you\u2019ve been looking\u00a0for.<\/p>\n<h4>How are Functions meant to\u00a0work?<\/h4>\n<blockquote><p>OpenAI\u2019s docs on function calling are extremely limited. You\u2019ll find yourself digging through their developer forum for examples of how to use them. I dug around the forum for you and have many example coming\u00a0up.<\/p><\/blockquote>\n<p>Here\u2019s one of the only examples you\u2019ll be able to find in their\u00a0docs:<\/p>\n<pre>functions = [<br>        {<br>            \"name\": \"get_current_weather\",<br>            \"description\": \"Get the current weather in a given location\",<br>            \"parameters\": {<br>                \"type\": \"object\",<br>                \"properties\": {<br>                    \"location\": {<br>                        \"type\": \"string\",<br>                        \"description\": \"The city and state, e.g. San Francisco, CA\",<br>                    },<br>                    \"unit\": {\"type\": \"string\", \"enum\": [\"celsius\", \"fahrenheit\"]},<br>                },<br>                \"required\": [\"location\"],<br>            },<br>        }<br>    ]<\/pre>\n<p>A function definition is a rigid JSON format that defines a function name, description and parameters. In this case, the function is meant to get the current weather. Obviously GPT isn\u2019t able to call this actual API (since it doesn\u2019t exist) but using this structured response you\u2019d be able to connect the real API hypothetically.<\/p>\n<p>At a high level however, functions provide two layers of inference:<\/p>\n<h4>Picking the function\u00a0itself:<\/h4>\n<p>You may notice that functions are passed into the OpenAI API call as an array. The reason you provide a name and description to each function are so GPT can decide which to use based on a given prompt. Providing multiple functions in your API call is like giving GPT a Swiss army knife and asking it to cut a piece of wood in half. It knows that even though it has a pair of pliers, scissors and a knife, it should use the\u00a0saw!<\/p>\n<p><strong>Function definitions contribute towards your token count<\/strong>. Passing in hundreds of functions would not only take up the majority of your token limit but also result in a drop in response quality. I often don\u2019t even use this feature and only pass in 1 function that I force it to use. It is very nice to have in certain use cases\u00a0however.<\/p>\n<h4>Picking the parameter values based on a\u00a0prompt:<\/h4>\n<p>This is the real magic in my opinion. GPT being able to choose the tool in it\u2019s tool kit is amazing and definitely the focus of their feature announcement but I think this applies to more use\u00a0cases.<\/p>\n<p><strong>You can imagine a function like handing GPT a form to fill out<\/strong>. <strong>It uses its reasoning, the context of the situation and field names\/descriptions to decide how it will fill out each field.<\/strong> Designing the form and the additional information you pass in is where you can get creative.<\/p>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1020\/1%2AYZEdqYdzo_LyCSK2YzQDrQ.png?w=1280&#038;ssl=1\"><figcaption>GPT filling out your custom form (function parameters)<\/figcaption><\/figure>\n<h3>5 Useful Applications<\/h3>\n<h3>Data Extraction<\/h3>\n<p>One of the most common things I use functions for to extract specific values from a large chunk of text. The sender\u2019s address from an email, a founders name from a blog post, a phone number from a landing\u00a0page.<\/p>\n<p>I like to imagine I\u2019m searching for a needle in a haystack except the LLM burns the haystack, leaving nothing but the needle(s).<\/p>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1023\/1%2AnycFdIgLvj_RVyQ_J28r9A.png?w=1280&#038;ssl=1\"><figcaption>GPT Data Extraction Personified.<\/figcaption><\/figure>\n<h4>Use case: Processing thousands of contest submissions<\/h4>\n<p>I built an automation that iterated over thousands of contest submissions. Before storing these in a Google sheet I wanted to extract the email associated with the submission. Heres the function call I used for extracting their\u00a0email.<\/p>\n<pre>{<br>   \"name\":\"update_email\",<br>   \"description\":\"Updates email based on the content of their submission.\",<br>   \"parameters\":{<br>      \"type\":\"object\",<br>      \"properties\":{<br>         \"email\":{<br>            \"type\":\"string\",<br>            \"description\":\"The email provided in the submission\"<br>         }<br>      },<br>      \"required\":[<br>         \"email\"<br>      ]<br>   }<br>}<\/pre>\n<h3>Scoring<\/h3>\n<p>Assigning unstructured data a score based on dynamic, natural language criteria is a wonderful use case for functions. You could score comments during sentiment analysis, essays based on a custom grading rubric, a loan application for risk based on key factors. A recent use case I applied scoring to was scoring of sales leads from 0\u2013100 based on their viability.<\/p>\n<h4>Use Case: Scoring Sales\u00a0leads<\/h4>\n<p>We had hundreds of prospective leads in a single google sheet a few months ago that we wanted to tackle from most to least important. Each lead contained info like company size, contact name, position, industry\u00a0etc.<\/p>\n<p>Using the following function we scored each lead from 0\u2013100 based on our needs and then sorted them from best to\u00a0worst.<\/p>\n<pre>{<br>   \"name\":\"update_sales_lead_value_score\",<br>   \"description\":\"Updates the score of a sales lead and provides a justification\",<br>   \"parameters\":{<br>      \"type\":\"object\",<br>      \"properties\":{<br>         \"sales_lead_value_score\":{<br>            \"type\":\"number\",<br>            \"description\":\"An integer value ranging from 0 to 100 that represents the quality of a sales lead based on these criteria. 100 is a perfect lead, 0 is terrible. Ideal Lead Criteria:n- Medium sized companies (300-500 employees is the best range)n- Companies in primary resource heavy industries are best, ex. manufacturing, agriculture, etc. (this is the most important criteria)n- The higher up the contact position, the better. VP or Executive level is preferred.\"<br>         },<br>         \"score_justification\":{<br>            \"type\":\"string\",<br>            \"description\":\"A clear and conscise justification for the score provided based on the custom criteria\"<br>         }<br>      }<br>   },<br>   \"required\":[<br>      \"sales_lead_value_score\", <br>      \"score_justification\"<br>   ]<br>}<\/pre>\n<h3>Categorization:<\/h3>\n<p>Define custom buckets and have GPT thoughtfully consider each piece of data you give it and place it in the correct bucket. This can be used for labelling tasks like selecting the category of youtube videos or for discrete scoring tasks like assigning letter grades to homework assignments.<\/p>\n<h4><strong>Use Case: Labelling news articles.<\/strong><\/h4>\n<p>A very common first step in data processing workflows is separating incoming data into different streams. A recent automation I built did exactly this with news articles scraped from the web. I wanted to sort them based on the topic of the article and include a justification for the decision once again. Here\u2019s the function I\u00a0used:<\/p>\n<pre>{<br>   \"name\":\"categorize\",<br>   \"description\":\"Categorize the input data into user defined buckets.\",<br>   \"parameters\":{<br>      \"type\":\"object\",<br>      \"properties\":{<br>         \"category\":{<br>            \"type\":\"string\",<br>            \"enum\":[<br>               \"US Politics\",<br>               \"Pandemic\",<br>               \"Economy\",<br>               \"Pop culture\",<br>               \"Other\"<br>            ],<br>            \"description\":\"US Politics: Related to US politics or US politicians, Pandemic: Related to the Coronavirus Pandemix, Economy: Related to the economy of a specific country or the world. , Pop culture: Related to pop culture, celebrity media or entertainment., Other: Doesn't fit in any of the defined categories. \"<br>         },<br>         \"justification\":{<br>            \"type\":\"string\",<br>            \"description\":\"A short justification explaining why the input data was categorized into the selected category.\"<br>         }<br>      },<br>      \"required\":[<br>         \"category\",<br>         \"justification\"<br>      ]<br>   }<br>}<\/pre>\n<h3>Option-Selection:<\/h3>\n<p>Often times when processing data, I give GPT many possible options and want it to select the best one based on my needs. I only want the value it selected, no surrounding fluff or additional thoughts. Functions are perfect for\u00a0this.<\/p>\n<h4>Use Case: Finding the \u201cmost interesting AI news story\u201d from hacker\u00a0news<\/h4>\n<blockquote><p>I wrote another <a href=\"https:\/\/medium.com\/better-programming\/building-an-autonomous-twitter-account-with-llms-de53f5e519ba\">medium article here<\/a> about how I automated my entire Twitter account with GPT. Part of that process involves selecting the most relevant posts from the front pages of hacker news. This post selection step leverages functions!<\/p><\/blockquote>\n<p>To summarize the functions portion of the use case, we would scrape the first n pages of hacker news and ask GPT to select the post most relevant to \u201cAI news or tech news\u201d. GPT would return only the headline and the link selected via functions so that I could go on to scrape that website and generate a tweet from\u00a0it.<\/p>\n<p>I would pass in the user defined query as part of the message and use the following function definition:<\/p>\n<pre>{<br>   \"name\":\"find_best_post\",<br>   \"description\":\"Determine the best post that most closely reflects the query.\",<br>   \"parameters\":{<br>      \"type\":\"object\",<br>      \"properties\":{<br>         \"best_post_title\":{<br>            \"type\":\"string\",<br>            \"description\":\"The title of the post that most closely reflects the query, stated exactly as it appears in the list of titles.\"<br>         }<br>      },<br>      \"required\":[<br>         \"best_post_title\"<br>      ]<br>   }<br>}<\/pre>\n<h3>Filtering:<\/h3>\n<p>Filtering is a subset of categorization where you categorize items as either true or false based on a natural language condition. A condition like \u201cis Spanish\u201d will be able to filter out all Spanish comments, articles etc. using a simple function and conditional statement immediately after.<\/p>\n<h4>Use Case: Filtering contest submission<\/h4>\n<p>The same automation that I mentioned in the \u201cData Extraction\u201d section used ai-powered-filtering to weed out contest submissions that didn\u2019t meet the deal-breaking criteria. Things like \u201cmust use typescript\u201d were absolutely mandatory for the coding contest at hand. We used functions to filter out submissions and trim down the total set being processed by 90%. Here is the function definition we\u00a0used.<\/p>\n<pre>{<br>   \"name\":\"apply_condition\",<br>   \"description\":\"Used to decide whether the input meets the user provided condition.\",<br>   \"parameters\":{<br>      \"type\":\"object\",<br>      \"properties\":{<br>         \"decision\":{<br>            \"type\":\"string\",<br>            \"enum\":[<br>               \"True\",<br>               \"False\"<br>            ],<br>            \"description\":\"True if the input meets this condition 'Does submission meet the ALL these requirements (uses typescript, uses tailwindcss, functional demo)', False otherwise.\"<br>         }<br>      },<br>      \"required\":[<br>         \"decision\"<br>      ]<br>   }<br>}<\/pre>\n<p>If you\u2019re curious why I love functions so much or what I\u2019ve built with them you should check out <a href=\"https:\/\/www.agenthub.dev\/\">AgentHub<\/a>!<\/p>\n<p><strong>AgentHub is the <\/strong><a href=\"https:\/\/www.ycombinator.com\/launches\/JcG-agenthub-automate-any-workflow-with-ai\"><strong>Y Combinator-backed startup<\/strong><\/a><strong> I co-founded that let\u2019s you automate any repetitive or complex workflow with AI via a simple drag and drop no-code platform.<\/strong><\/p>\n<blockquote><p>\u201cImagine Zapier but AI-first and on crack.\u201d\u200a\u2014\u200aMe<\/p><\/blockquote>\n<p>Automations are built with individual nodes called \u201cOperators\u201d that are linked together to create power AI pipelines. We have a catalogue of AI powered operators that leverage functions under the\u00a0hood.<\/p>\n<figure><img data-recalc-dims=\"1\" decoding=\"async\" alt=\"\" src=\"https:\/\/i0.wp.com\/cdn-images-1.medium.com\/max\/1024\/1%2AU3Cqe59WNC6mFQn3-3O26A.png?w=1280&#038;ssl=1\"><figcaption>Our current AI-powered operators that use functions!<\/figcaption><\/figure>\n<p>Check out these templates to see examples of function use-cases on AgentHub: <a href=\"https:\/\/www.agenthub.dev\/templates\/sales_crm\/sales_leads_scoring_model\">Scoring<\/a>, <a href=\"https:\/\/www.agenthub.dev\/templates\/media_news\/news_story_categorizer\">Categorization<\/a>, <a href=\"https:\/\/www.agenthub.dev\/templates\/media_news\/autonomous_twitter_bot\">Option-Selection<\/a>,<\/p>\n<p>If you want to start building <a href=\"https:\/\/www.agenthub.dev\/\">AgentHub<\/a> is live and ready to use! We\u2019re very active in our <a href=\"https:\/\/discord.gg\/SyCVmrzhCc\">discord community<\/a> and are happy to help you build your automations if\u00a0needed.<\/p>\n<p>Feel free to follow the <a href=\"https:\/\/twitter.com\/AgentHub_AI\">official AgentHub twitter<\/a> for updates and <a href=\"https:\/\/twitter.com\/MaxBrodeurUrbas\">myself for AI-related content.<\/a><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/medium.com\/_\/stat?event=post.clientViewed&amp;referrerSource=full_rss&amp;postId=ccbd1d3f9fd7\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<hr>\n<p><a href=\"https:\/\/medium.com\/better-programming\/gpt-function-calling-5-underrated-use-cases-ccbd1d3f9fd7\">GPT Function Calling: 5 Underrated Use Cases<\/a> was originally published in <a href=\"https:\/\/betterprogramming.pub\/\">Better Programming<\/a> on Medium, where people are continuing the conversation by highlighting and responding to this story.<\/p>\n<\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1460\" class=\"pvc_stats total_only  \" data-element-id=\"1460\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewBox=\"0 0 502 315\" preserveAspectRatio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/i0.wp.com\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif?resize=16%2C16&#038;ssl=1\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>OpenAI\u2019s backend converting messy unstructured data to structured data via functions OpenAI\u2019s \u201cFunction Calling\u201d might be the most groundbreaking yet under appreciated feature released by any software company\u2026\u00a0ever. What are GPT Functions Functions allow you to turn unstructured data into<\/p>\n<div class=\"hosteria-entry-more\"><a href=\"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/\" class=\"no-underline font-light  group-hover:text-primary-800 dark:group-hover:text-primary-300 py-1\">Read more &gt;&gt;&gt;<\/a><\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1460\" class=\"pvc_stats total_only\" data-element-id=\"1460\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewbox=\"0 0 502 315\" preserveaspectratio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=\"0\" \/><\/p>\n<div class=\"pvc_clear\"><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fp_fajr_begins":"","fp_fajr_iqamah":"","fp_dhuhr_begins":"","fp_dhuhr_iqamah":"","fp_asr_begins":"","fp_asr_iqamah":"","fp_maghrib_begins":"","fp_maghrib_iqamah":"","fp_isha_begins":"","fp_isha_iqamah":"","fp_midnight":"","fp_midnight_name":"","fp_sunrise":"","fp_single_prayer_begins_title":"","fp_single_prayer_iqamah_title":"","fp_prayer_times_for_today":"","fp_hijra_date":"","fp_fajr_name":"","fp_dhuhr_name":"","fp_asr_name":"","fp_maghrib_name":"","fp_isha_name":"","fp_sunrise_name":"","fp_currentDate":"","fp_current_time":"","fp_current_title":"","fp_current_location":"","fp_masjid_name":"","fp_prayer_title":"","fp_next_prayer_iqamah_time":"","fp_next_prayer_iqamah_title":"","fp_next_prayer_begins_time":"","fp_next_prayer_begins_title":"","fp_next_prayer_title":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[37],"tags":[],"class_list":["post-1460","post","type-post","status-publish","format-standard","hentry","category-posts"],"a3_pvc":{"activated":true,"total_views":0,"today_views":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GPT Function Calling: 5 Underrated Use Cases - Dev95<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/\" \/>\n<meta property=\"og:locale\" content=\"ar_AR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GPT Function Calling: 5 Underrated Use Cases - Dev95\" \/>\n<meta property=\"og:description\" content=\"OpenAI\u2019s backend converting messy unstructured data to structured data via functions OpenAI\u2019s \u201cFunction Calling\u201d might be the most groundbreaking yet under appreciated feature released by any software company\u2026\u00a0ever. What are GPT Functions Functions allow you to turn unstructured data intoRead more &gt;&gt;&gt;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/\" \/>\n<meta property=\"og:site_name\" content=\"Dev95\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-10T17:33:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg\" \/>\n<meta name=\"author\" content=\"dev95\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629\" \/>\n\t<meta name=\"twitter:data1\" content=\"dev95\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 \u062f\u0642\u0627\u0626\u0642\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/\"},\"author\":{\"name\":\"dev95\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\"},\"headline\":\"GPT Function Calling: 5 Underrated Use Cases\",\"datePublished\":\"2023-11-10T17:33:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/\"},\"wordCount\":1342,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cdn-images-1.medium.com\\\/max\\\/1024\\\/1*doghMb44J43LgPYtkUCByw.jpeg\",\"articleSection\":[\"Posts\"],\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/\",\"url\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/\",\"name\":\"GPT Function Calling: 5 Underrated Use Cases - Dev95\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/cdn-images-1.medium.com\\\/max\\\/1024\\\/1*doghMb44J43LgPYtkUCByw.jpeg\",\"datePublished\":\"2023-11-10T17:33:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#breadcrumb\"},\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#primaryimage\",\"url\":\"https:\\\/\\\/cdn-images-1.medium.com\\\/max\\\/1024\\\/1*doghMb44J43LgPYtkUCByw.jpeg\",\"contentUrl\":\"https:\\\/\\\/cdn-images-1.medium.com\\\/max\\\/1024\\\/1*doghMb44J43LgPYtkUCByw.jpeg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dev95.site\\\/gpt-function-calling-5-underrated-use-cases\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dev95.site\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GPT Function Calling: 5 Underrated Use Cases\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"name\":\"Dev95\",\"description\":\"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.\",\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dev95.site\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ar\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\",\"name\":\"Dev95\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"width\":512,\"height\":512,\"caption\":\"Dev95\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\",\"name\":\"dev95\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"caption\":\"dev95\"},\"url\":\"https:\\\/\\\/dev95.site\\\/ar\\\/author\\\/mohammad\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GPT Function Calling: 5 Underrated Use Cases - Dev95","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/","og_locale":"ar_AR","og_type":"article","og_title":"GPT Function Calling: 5 Underrated Use Cases - Dev95","og_description":"OpenAI\u2019s backend converting messy unstructured data to structured data via functions OpenAI\u2019s \u201cFunction Calling\u201d might be the most groundbreaking yet under appreciated feature released by any software company\u2026\u00a0ever. What are GPT Functions Functions allow you to turn unstructured data intoRead more &gt;&gt;&gt;","og_url":"https:\/\/dev95.site\/ar\/gpt-function-calling-5-underrated-use-cases\/","og_site_name":"Dev95","article_published_time":"2023-11-10T17:33:58+00:00","og_image":[{"url":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg","type":"","width":"","height":""}],"author":"dev95","twitter_card":"summary_large_image","twitter_misc":{"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629":"dev95","\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631":"9 \u062f\u0642\u0627\u0626\u0642"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#article","isPartOf":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/"},"author":{"name":"dev95","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298"},"headline":"GPT Function Calling: 5 Underrated Use Cases","datePublished":"2023-11-10T17:33:58+00:00","mainEntityOfPage":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/"},"wordCount":1342,"commentCount":0,"publisher":{"@id":"https:\/\/dev95.site\/#organization"},"image":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg","articleSection":["Posts"],"inLanguage":"ar","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/","url":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/","name":"GPT Function Calling: 5 Underrated Use Cases - Dev95","isPartOf":{"@id":"https:\/\/dev95.site\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#primaryimage"},"image":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#primaryimage"},"thumbnailUrl":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg","datePublished":"2023-11-10T17:33:58+00:00","breadcrumb":{"@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#breadcrumb"},"inLanguage":"ar","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/"]}]},{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#primaryimage","url":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg","contentUrl":"https:\/\/cdn-images-1.medium.com\/max\/1024\/1*doghMb44J43LgPYtkUCByw.jpeg"},{"@type":"BreadcrumbList","@id":"https:\/\/dev95.site\/gpt-function-calling-5-underrated-use-cases\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dev95.site\/"},{"@type":"ListItem","position":2,"name":"GPT Function Calling: 5 Underrated Use Cases"}]},{"@type":"WebSite","@id":"https:\/\/dev95.site\/#website","url":"https:\/\/dev95.site\/","name":"Dev95","description":"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.","publisher":{"@id":"https:\/\/dev95.site\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dev95.site\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ar"},{"@type":"Organization","@id":"https:\/\/dev95.site\/#organization","name":"Dev95","url":"https:\/\/dev95.site\/","logo":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","contentUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","width":512,"height":512,"caption":"Dev95"},"image":{"@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298","name":"dev95","image":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","caption":"dev95"},"url":"https:\/\/dev95.site\/ar\/author\/mohammad\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/1460","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/comments?post=1460"}],"version-history":[{"count":0,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/1460\/revisions"}],"wp:attachment":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/media?parent=1460"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/categories?post=1460"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/tags?post=1460"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}