11 માર્ચ, 2025થી, અમે અમારા નવા Agents પ્લેટફોર્મના બિલ્ડિંગ બ્લોક્સ રિલીઝ કર્યા છે. વિગતો માટે, અમારી Responses API, Web Search, File Search, અને Computer Use સહિતના Tools, તેમજ Agents SDK સાથે Tracing માટેના અમારા API દસ્તાવેજો જુઓ.
ફંક્શન કોલિંગ તમને OpenAI મોડલોને બાહ્ય ટૂલ્સ અને સિસ્ટમ્સ સાથે જોડવાની મંજૂરી આપે છે. આ ઘણી બાબતો માટે ઉપયોગી છે, જેમ કે AI સહાયકોને ક્ષમતાઓ આપવી, અથવા તમારી એપ્લિકેશનો અને LLM વચ્ચે ઊંડા ઇન્ટિગ્રેશન્સ બનાવવું.
અમારી ફંક્શન કોલિંગ ડેવલપર માર્ગદર્શિકામાં વધુ જાણો.
જૂન 2024માં, અમે સ્ટ્રક્ચર્ડ આઉટપુટ્સ લોન્ચ કર્યા. જ્યારે તમે તમારી ફંક્શન વ્યાખ્યામાં strict: true સેટ કરીને તેને ચાલુ કરો છો, ત્યારે સ્ટ્રક્ચર્ડ આઉટપુટ્સ ખાતરી આપે છે કે ફંક્શન કોલ માટે મોડલ દ્વારા જનરેટ કરાયેલા આર્ગ્યુમેન્ટ્સ તમારી ફંક્શન વ્યાખ્યામાં આપેલી JSON સ્કીમા સાથે બરાબર મેળ ખાય છે.
ઓક્ટોબર 2024માં, અમે “કંઈપણ જનરેટ કરો” સુવિધા લોન્ચ કરી, જે ડેવલપર્સને ફંક્શનનું વર્ણન કરવાની, તેને સીધું પેસ્ટ કરવાની અથવા પોતાનો કોડ પેસ્ટ કરીને માન્ય ફંક્શન સ્કીમા જનરેટ કરવાની મંજૂરી આપે છે. “કંઈપણ જનરેટ કરો” વિશે વધુ અહીંના સહાય કેન્દ્ર લેખમાં જાણો.
હું ફંક્શન કોલિંગનો ઉપયોગ કેવી રીતે કરી શકું?
ફંક્શન કોલિંગ અનેક ઉપયોગના કિસ્સાઓ માટે ઉપયોગી છે, જેમ કે:
સહાયકોને ડેટા મેળવવામાં સક્ષમ બનાવવું:
સહાયકોને ક્રિયાઓ કરવામાં સક્ષમ બનાવવું:
સહાયકોને ગણતરી કરવામાં સક્ષમ બનાવવું:
સમૃદ્ધ વર્કફ્લો બનાવવું:
એક ડેટા એક્સટ્રેક્શન પાઇપલાઇન જે કાચો ટેક્સ્ટ મેળવે છે, પછી તેને સ્ટ્રક્ચર્ડ ડેટામાં રૂપાંતરિત કરે છે અને ડેટાબેઝમાં સાચવે છે.
ફંક્શન કોલિંગ Responses APIમાં સપોર્ટેડ છે, જે અગાઉ ચેટ કમ્પ્લીશન્સ API અને અસિસ્ટન્ટ્સ APIમાં અલગ રહેલી ક્ષમતાઓને એકીકૃત કરે છે.
હું JSON મોડનો ઉપયોગ કેવી રીતે કરી શકું?
જ્યારે JSON મોડ ચાલુ હોય, ત્યારે કેટલાક વિશેષ કિસ્સાઓ સિવાય, મોડલનું આઉટપુટ માન્ય JSON હોવાનું સુનિશ્ચિત થાય છે; આવા કિસ્સાઓને તમારે ઓળખીને યોગ્ય રીતે સંભાળવા જોઈએ.
ચેટ કમ્પ્લીશન્સ API સાથે JSON મોડની વિનંતી કરવા માટે, સપોર્ટેડ મોડલો પર response_format ને { "type": "json_object" } પર સેટ કરો. Responses API સાથે, જ્યાં લાગુ પડે ત્યાં text.format ને { "type": "json_object" } પર સેટ કરો, ઉદાહરણ તરીકે text: { "format": { "type": "json_object" } }. કોઈપણ APIમાં, JSON મોડ માત્ર ત્યારે જ કાર્ય કરે છે જ્યારે મોડલ/સંદેશ/ટૂલની પૂર્વશરતો પૂરી થાય છે (ઉદાહરણ તરીકે, મોડલ json_object ને સપોર્ટ કરે છે, વાતચીતમાં JSON ઉત્પન્ન કરવાની સૂચનાઓ શામેલ હોય છે, અને કોઈપણ ટૂલ મર્યાદાઓ સુસંગત હોય છે). અસરકારક ઇનપુટ સંદર્ભમાં ઓછામાં ઓછા એક વિનંતી સંદેશ અથવા ઇનપુટ સંદેશમાં કેસ-ઇન્સેન્સિટિવ સ્વરૂપમાં json હોવું જરૂરી છે, જેમ કે JSON, json, અથવા Json; નહિતર, API ભૂલ પરત કરે છે. Responsesમાં, માત્ર ટોચ-સ્તરની instructions ફીલ્ડ આ માન્યતાને સંતોષતી નથી. જ્યારે સુસંગત મોડલો/પાથ પર ફંક્શન કોલિંગનો ઉપયોગ થાય છે, ત્યારે ફંક્શન-કોલ આર્ગ્યુમેન્ટ્સ પર JSON મર્યાદાઓ આપમેળે લાગુ થાય છે; અસુસંગત મોડલો અથવા ટૂલ/રિસ્પોન્સ-ફોર્મેટ સંયોજનો નકારવામાં આવી શકે છે અથવા JSON-મર્યાદિત સેમ્પલિંગનો ઉપયોગ ન કરી શકે.
મહત્વપૂર્ણ નોંધો:
JSON મોડનો ઉપયોગ કરતી વખતે, તમારે હંમેશા વાતચીતમાં કોઈ સંદેશ દ્વારા, ઉદાહરણ તરીકે તમારા સિસ્ટમ સંદેશ દ્વારા, મોડલને JSON ઉત્પન્ન કરવાની સૂચના આપવી આવશ્યક છે. જો તમે JSON જનરેટ કરવાની સ્પષ્ટ સૂચના શામેલ ન કરો, તો મોડલ વ્હાઇટસ્પેસનો અનંત પ્રવાહ જનરેટ કરી શકે છે અને વિનંતી ટોકન મર્યાદા સુધી પહોંચે ત્યાં સુધી સતત ચાલતી રહી શકે છે. તમે ભૂલી ન જાઓ તે સુનિશ્ચિત કરવામાં મદદ કરવા માટે, JSON મોડ વિનંતીઓને નકારે છે જ્યાં સુધી સંબંધિત ઇનપુટ સંદેશાઓ અથવા સૂચનાઓમાં કેસ-ઇન્સેન્સિટિવ રીતે કોઈક સ્વરૂપમાં
jsonશબ્દ ન હોય.JSON મોડ આઉટપુટ કોઈ ચોક્કસ સ્કીમા સાથે મેળ ખાય છે તેની ખાતરી આપશે નહીં, માત્ર એટલું કે તે માન્ય છે અને ભૂલો વિના પાર્સ થાય છે. તે તમારી સ્કીમા સાથે મેળ ખાય તેની ખાતરી કરવા માટે તમારે સ્ટ્રક્ચર્ડ આઉટપુટ્સનો ઉપયોગ કરવો જોઈએ, અથવા જો તે શક્ય ન હોય, તો આઉટપુટ તમારી ઇચ્છિત સ્કીમા સાથે મેળ ખાય તેની ખાતરી કરવા માટે તમારે વેલિડેશન લાઇબ્રેરી અને શક્ય હોય તો રીટ્રાયનો ઉપયોગ કરવો જોઈએ.
તમારી એપ્લિકેશને એવા વિશેષ કિસ્સાઓને ઓળખવા અને સંભાળવા જ જોઈએ જેના પરિણામે મોડલ આઉટપુટ સંપૂર્ણ JSON ઑબ્જેક્ટ ન રહે (નીચે જુઓ).
