Reikalavimai: Naudokite didelius modelius, kad gautumėte informaciją realiuoju laiku, pvz., dabartinį laiką, šiandienos orus, patikrinkite greitąjį pristatymą ir kt., arba naudokite didelius modelius verslo duomenims analizuoti, turite naudoti funkciją Iškvietimas. Daugelis straipsnių internete apie funkciją skambinimas yra labai neaiškus ir nepaaiškina aiškiai, ir aš suprantu šią funkciją remiantis užklausos informacija.
Pirmiausia pažvelkime į atvaizdus ir panaudokime didelį modelįGaukite dabartinį laiką, orą Šanchajuje ir skaičiuotuvą, kuris padėjo man įjungti kompiuterį, kaip parodyta toliau pateiktame paveikslėlyje:
OpenAI sąsajos dokumentacija:Hipersaito prisijungimas matomas., kaip parodyta toliau pateiktame paveikslėlyje:
Funkcijos iškvietimas
Dideli modeliai gali būti neveiksmingi, kai susiduriama su realiojo laiko problemomis, matematiniais skaičiavimais ir kitomis problemomis. Galite naudoti funkciją Function Calling, kad dideli modeliai galėtų sąveikauti su išoriniu pasauliu, naudodami išorinius įrankius.
"Function Calling" yra nauja funkcija, sujungianti didelius modelius su išoriniais įrankiais ir API, kad padėtų dideliems modeliams pereiti prie faktinio pramoninio įgyvendinimo. Funkcijų iškvietimas leidžia kūrėjams patikimiau gauti struktūrizuotus duomenis iš modelių, vartotojams nereikia įvesti sudėtingų raginimų.
Kai naudojate, galite aprašyti modelio funkcijų rinkinio funkcijas ir apibrėžimus natūralia kalba; Pokalbio metu, kai didelis modelis pajus, kad jam reikia naudoti funkciją, jis protingai pasirinks funkciją ir grįš iškviesti reikiamus parametrus, kad atitiktų konkrečius vartotojo poreikius. Kitais atvejais didelis modelis negrąžins funkcijos ir tęs pokalbį. Didelis modelis tiesiogiai neiškviečia funkcijos, bet grąžina atitinkamus įvesties parametrus, o funkciją / API sąsają galite iškviesti patys.
Paprasčiau tariant, "Function Calling" yra "vertėjas" tarp natūralios kalbos ir informacinių sąsajų
Išverskite natūralią kalbą į reikiamas funkcijas ir parametrus ir grąžinkite ją dideliam modelio skambintojui Kai didelis modelio iškvietėjas vykdo funkciją, rezultatas grąžinamas į didelį modelį, o didelį modelį galima apibendrinti natūralia kalba arba toliau planuoti antrines užduotis
Darbo eigos diagrama parodyta žemiau:
Semantinis branduolys
Semantinis branduolys yra lengvas atvirojo kodo kūrimo rinkinys, kurį galima naudoti norint lengvai generuoti AI agentus ir integruoti naujausius AI modelius į C#, Python arba Java kodų bazes. Ji veikia kaip efektyvi tarpinė programinė įranga, leidžianti greitai pristatyti įmonės lygio sprendimus.
Dokumentacija:Hipersaito prisijungimas matomas. Šaltinis:Hipersaito prisijungimas matomas.
C# kviečia "Alibaba Cloud Tongyi Qianwen" vykdyti funkcijos iškvietimą
Sukurkite naują .NET 8 konsolės projektą su šiomis nuorodomis:
Kodas yra toks:
Paleiskite programą, kuri yra atvaizdavimas pradžioje, gaukite dabartinį laiką ir Šanchajaus orą ir atidarykite skaičiuotuvą.
Vykdymo žurnalas:
=============================================================================
Request:
Method: POST
Uri: Hipersaito prisijungimas matomas. Užklausos turinys: {"tools":[{"function":{"description":"Labai naudinga, kai norite sužinoti, koks yra laikas." ,"name":"itsvse-get_current_time","strict":false,"parameters":{"type":"object","required":[],"properties":{}}},"type":"function"},{"function":{"description":" Tai naudinga, kai šiandien norite patikrinti tam tikro miesto orus. ","name":"itsvse-get_current_weather","strict":false,"parameters":{"type":"object","required":["location"],"properties":{"location":{"description":"Miestas arba apskritis, pvz., Pekinas, Šanchajus, Hangzhou miestas, Yuhang rajonas ir kt. ","type":"string"}}}},"type":"function"},{"function":{"description":"Tai labai naudinga, kai norite pateikti užklausą dėl nurodytos skubios logistikos informacijos." ","name":"itsvse-get_current_test","strict":false,"parameters":{"type":"object","required":["no"],"properties":{"no":{"description":"Priimtini kurjerio sekimo numeriai, pvz., SF, ZTO ir pašto kurjerių sekimo numeriai." ","type":"string"}}}},"type":"function"},{"function":{"description":"Labai naudinga, kai norite atidaryti skaičiuotuvą." ,"name":"itsvse-open_calculator","strict":false,"parameters":{"type":"object","required":[],"properties":{}}},"type":"function"}],"messages":[{"role":"user","content" "Sveiki, prašau padėti man patikrinti dabartinį laiką ir šiandienos orus Šanchajuje." Tada padėkite man su laikrodžio skaičiuokle, noriu apskaičiuoti šiandienos pajamas. "}],"model":"qwen-max","tool_choice":"auto","parallel_tool_calls":true}
Response: Būsenos kodas: OK
Body: {"choices":[{"message":{"content":"","role":"assistant","tool_calls":[{"function":{"name":"itsvse-get_current_time","arguments":"{}"},"index":0,"id":"call_6e6cade782f54c9ca87186","type":"function"},{"function":{"name":"itsvse-get_current_weather","arguments":"{\"location\": \"上海市\"}"},"index":1,"id":"call_cc957be34f5741f4b2a969","type":"function"},{"function":{"name":"itsvse-open_calculator","arguments":"{}"},"index":2,"id":"call_6023df74d7bd48c789e876","type":"function"}]},"finish_reason":"tool_calls","index":0,"logprobs":null}],"object":"chat.completion","usage":{"prompt_tokens":500,"completion_tokens":53,"total_tokens":553,"prompt_tokens_details":{"cached_tokens":256}},"created":1742980780,"system_fingerprint":null,"model":"qwen-max","id":"chatcmpl-1761acb9-717a-997c-9f17-7284e82fd121"} ============================================================================= ----------------------- vadiname laiko gavimo metodu----------------------- ---------------------------------------------------------------- ----------------------- vadinti orų gavimo metodu----------------------- Parametras: Šanchajus ---------------------------------------------------------------- ----------------------- Atidarykite kompiuterio skaičiuotuvą----------------------- =============================================================================
Request:
Method: POST
Uri: Hipersaito prisijungimas matomas. Užklausos turinys: {"tools":[{"function":{"description":"Labai naudinga, kai norite sužinoti, koks yra laikas." ,"name":"itsvse-get_current_time","strict":false,"parameters":{"type":"object","required":[],"properties":{}}},"type":"function"},{"function":{"description":" Tai naudinga, kai šiandien norite patikrinti tam tikro miesto orus. ","name":"itsvse-get_current_weather","strict":false,"parameters":{"type":"object","required":["location"],"properties":{"location":{"description":"Miestas arba apskritis, pvz., Pekinas, Šanchajus, Hangzhou miestas, Yuhang rajonas ir kt. ","type":"string"}}}},"type":"function"},{"function":{"description":"Tai labai naudinga, kai norite pateikti užklausą dėl nurodytos skubios logistikos informacijos." ","name":"itsvse-get_current_test","strict":false,"parameters":{"type":"object","required":["no"],"properties":{"no":{"description":"Priimtini kurjerio sekimo numeriai, pvz., SF, ZTO ir pašto kurjerių sekimo numeriai." ","type":"string"}}}},"type":"function"},{"function":{"description":"Labai naudinga, kai norite atidaryti skaičiuotuvą." ,"name":"itsvse-open_calculator","strict":false,"parameters":{"type":"object","required":[],"properties":{}}},"type":"function"}],"messages":[{"role":"user","content" "Sveiki, prašau padėti man patikrinti dabartinį laiką ir šiandienos orus Šanchajuje." Tada padėkite man su laikrodžio skaičiuokle, noriu apskaičiuoti šiandienos pajamas. "},{"role":"assistant","content":"","tool_calls":[{"id":"call_6e6cade782f54c9ca87186","function":{"name":"itsvse-get_current_time","arguments":"{}"},"type":"function" ","index":0},{"id":"call_cc957be34f5741f4b2a969","function":{"name":"itsvse-get_current_weather","arguments":"{\"location\": \"Šanchajus\"}"},"type":"function","index":1},{" id":"call_6023df74d7bd48c789e876","function":{"name":"itsvse-open_calculator","arguments":"{}"},"type":"function","index":2}]},{"role":"tool","tool_call_id":"call_ 6e6cade782f54c9ca87186","content":"2025/3/26 17:19:40"},{"role":"tool","tool_call_id":"call_cc957be34f5741f4b2a969","content":"Oro sąlygos Šanchajuje yra tokios: debesuota su perkūnija, temperatūra nuo 10°C iki 20°C"},{" role":"įrankis","tool_call_id":"call_6023df74d7bd48c789e876","content":"Skaičiuotuvas atidarytas." }],"model":"qwen-max","tool_choice":"auto","parallel_tool_calls":true}
Response: Būsenos kodas: OK
Body: {"choices":[{"message":{"content":"现在的时间是2025年3月26日17点19分40秒。\n\n今天上海市的天气情况如下:多云转雷阵雨,气温介于10°C到20°C之间,请记得带伞哦。\n\n我已经 帮你打开了计算器,你可以开始计算今天的收入了。","role":"assistant"},"finish_reason":"stop","index":0,"logprobs":null}],"object":"chat.completion","usage":{"prompt_tokens":621,"completion_tokens":70,"total_tokens":691,"prompt_tokens_details":{"cached_tokens":0}},"created":1742980783,"system_fingerprint":null,"model":"qwen-max","id":"chatcmpl-b0bd149e-3f5b-9a53-91d7-7bb26487d822"} ============================================================================= Asistentas > dabar yra 17:19:40, 26 kovo 2025 (UTC)
Oro sąlygos Šanchajuje šiandien yra tokios: debesuota iki perkūnijos, temperatūra nuo 10°C iki 20°C, nepamirškite pasiimti skėčio.
Atidariau jums skaičiuoklę ir šiandien galite pradėti skaičiuoti savo uždarbį. Nuoroda:
Hipersaito prisijungimas matomas.
Hipersaito prisijungimas matomas.
Hipersaito prisijungimas matomas.
Hipersaito prisijungimas matomas.
Hipersaito prisijungimas matomas. |