ðAzure AI Agent Service ã培åºè§£èª¬ïŒã¯ãªã¹ãã¹ã€ã!?çµããããŸããã(什åããã³é¢š)ð
ãã¡ãã®èšäºã¯ïœ€Azure PoCéš Advent Calendar 2024ã®24æ¥ç®ã®èšäºãšãªããŸã
âïžãã㯠Azure + Agent + ã¯ãªã¹ãã¹ãšããã¯ãŒãã§ChatGPTã«çæãããç»åã§ã
ã¯ããã«
ããã«ã¡ã¯ïŒã¯ãªã¹ãã¹ã€ã/ã¯ãªã¹ãã¹ã·ãŒãºã³ããšãM-1ãªã©ããã®èšäºãæžããŠãæäžã«ãããŸãã2024幎ã2023幎ã«åŒãç¶ã什åããã³ãM-1åªåãåã¡åã£ããã¯ãªã¹ãã¹(äœåèšããã w)ã·ãŒãºã³ãªäžéã¯æµ®ãããŠãããšã¯æããŸãã
çµããããŸããã!!(åãã人ã«ã¯åãããã¿èšãåãã§ã)
ä»å㯠Microsoft Ignite 2024 ã§çºè¡šãããã€ãå é±ãããªãã¯ãã¬ãã¥ãŒãéå§ãããã°ããã® Azure AI Agent Service ãåãäžããè€éãªåŠçãèªååãããã倧èŠæš¡èšèªã¢ãã«ïŒLLMïŒã掻çšããé«åºŠãªãšãŒãžã§ã³ããæ軜ã«äœãæ¹æ³ã解説ããŠãããããšæããŸã!
å°ã匷åŒã«è©±ã«å ¥ã£ãŠãããŸããšïœ€ãã2幎㧠ChatGPT ã BingãCopilot ãªã©ãæ§ã ãªçæAIãå©çšã§ããããã«ãªããAIã¢ã·ã¹ã¿ã³ãã¯äžæ®µãšèº«è¿ãªååšã«ãªããŸãããããããAssistants API ã ãã§ã¯å¯Ÿå¿ããããªãæ©èœãèªåã®ã¢ããªããµãŒãã¹ã«çµã¿èŸŒã¿ããããããã¯ç¬èªã®ããŒã¿ãœãŒã¹ãæ©èœãšé£æºãããããšããããŒãºãããäžæ¹ã§ãåã« LLM ã® API ãåŒã³åºãã ãã§ã¯äžååãªã±ãŒã¹ãå°ãªããããŸããã
ããã§æ³šç®ãããã®ãæ¬èšäºã®ã¡ã€ã³ããŒããšããã Azure AI Agent Service ã§ããAzure OpenAI ã®ããã«ã¢ãã«ãžçŽæ¥ãªã¯ãšã¹ããéãã ãã§ãªããããã¡ã€ã«æ€çŽ¢ïŒRAGïŒããã³ãŒãå®è¡ããå€éšé¢æ°åŒã³åºãããBingæ€çŽ¢ããšãã£ãå€æ§ãªæ©èœãçµã¿åãããâãšãŒãžã§ã³ãâããµãŒããŒãµã€ãã§äžå çã«ç®¡çã§ããŸããããã«ãããŒã¯ã³ç®¡çãããŒã«ã®åŒã³åºããèªååããä»çµã¿ãçšæãããŠããããããŸã§ãããé¥ãã«ç°¡åã«è€éãªAIã¯ãŒã¯ãããŒãå®è£ ã§ããããã«ãªããŸãã
æ¬èšäºã§ã¯ãAzure AI Agent Service ãš Azure AI Foundry ã®æŠèŠãããå®è£ äŸã®ã³ãŒããã³ã³ãã³ããã£ã«ã¿ã®äœ¿ãæ¹ããã㊠Evaluation æ©èœã«ããå質è©äŸ¡ãŸã§ã培åºçã«è§£èª¬ããŠãããŸãããã²æåŸãŸã§ãä»ãåããã ããïŒ
ðïž Ignite ã«é¢ãããŸãšãèšäºã¯ãã¡ãã«ããŸãšããŠããŸããåãããŠãã§ãã¯ããŠã¿ãŠãã ããã
ããã§ã¯ããŸãLLMã掻çšããäžã§éèŠãªãã€ã³ããšãªãããšãŒãžã§ã³ãããšãã¯ãŒã¯ãããŒãããããã®ç¹åŸŽã䜿ãåãã«ã€ããŠèŠãŠãããŸãããã(ãšã¯ããå®éã«ã¯ã£ãããšããåºå¥ã¯é£ããéšåããããŸãããéèŠãªãã€ã³ããªã®ã§è§ŠããŠãããããšæããŸãã)
ãšãŒãžã§ã³ããšã¯ãŒã¯ãããŒïŒLLM掻çšã®åºæ¬ãã¿ãŒã³
ããšãŒãžã§ã³ãããšããèšèã«ã¯æ§ã ãªå®çŸ©ãååšããŸããããã®èšäºã§ã¯Anthropic瀟ã®ä»¥äžã®èšäºãåèã«ãLLMãèªãããŒã«ã®äœ¿ãæ¹ãå®è¡ããã»ã¹ãåçã«å€æããªããã¿ã¹ã¯ãé²ããŠããä»çµã¿ããåºçŸ©ã®âãšãŒãžã§ã³ãâãšåŒã¶ããšã«ããŸããããã«å¯Ÿãããããããå®çŸ©ãããæé ïŒã¯ãŒã¯ãããŒïŒã«åŸã£ãŠ LLM ãå©çšããã±ãŒã¹ããããããããé©åã«äœ¿ãåããããšã§ãçç£æ§ã倧ããåäžãããããšãæåŸ ã§ããŸãã
(以äžã®ãã®èšäºã¯ãã£ã¡ãããèšäºã ã£ãã®ã§ïœ€ãã¯ãããèªãã ãååOKãªã¬ãã«ã§ãšãŠãããããã§ã!)
ãšãŒãžã§ã³ããšã¯ïŒ
å€ãã®ãŠãŒã¶ãŒãå°é家/ç 究è ã®éã§ã¯ãããšãŒãžã§ã³ããã¯æŠã以äžã®ããã«ç解ãããŠããŸãã
-
èªåŸæ§ïŒAutonomyïŒ
- ãšãŒãžã§ã³ãã¯ãäžåºŠã¿ã¹ã¯ãäžããããã°ããã®åŸã®åã¹ãããã§å¿ èŠãªããŒã«ãèªãå€æããåŒã³åºãããšã§ã¿ã¹ã¯éæãç®æããŸãã
- äŸãã°ãç¶æ³ã«å¿ããŠäŒè©±ã®æµããå€ããããå€éšé¢æ°ãæ€çŽ¢ããŒã«ãã©ã®ãããªé çªã§å©çšããããããšãŒãžã§ã³ãèªèº«ã決å®ã§ããã®ã§ãã
-
æè»æ§ïŒFlexibilityïŒ
- ã¿ã¹ã¯ã®å 容ãè€éã§ããã©ããããã®åæ°ããŒã«ãåŒã³åºãå¿ èŠãããã®ãããã©ããªæ å ±ãæ±ããããã®ãããšãã£ãç¹ãäºåã«æ確ã§ãªããŠãããšãŒãžã§ã³ãã¯ãã®éœåºŠç¶æ³ãå€æããªããã¿ã¹ã¯ãé²ããããšãå¯èœã§ãã
-
ã¢ãã«äžå¿ã®ææ決å®ïŒModel-driven DecisionsïŒ
- ã¿ã¹ã¯ãéæããããã®æµããå³å¯ãªã³ãŒãã§èšè¿°ããã®ã§ã¯ãªããLLMïŒèšèªã¢ãã«ïŒèªèº«ãâæèâããåšå²ã®ç°å¢ãããŒã«ããã®ãã£ãŒãããã¯ãåã蟌ã¿ãªããé²è¡ããŠãããŸãã
- éçºè ã¯ãLLMãå©çšã§ããããŒã«ãæ¡åŒµæ©èœãçšæããããããã©ã®ããã«æŽ»çšãããã¯ããçšåºŠLLMã«ä»»ããããšãã圢ã«ãªããŸãã
ãšãŒãžã§ã³ãæ§ç¯ã®èãæ¹ã«ã€ããŠã¯ã以äžã®èšäºã§ã解説ããŠããŸãã®ã§ããã²åèã«ããŠã¿ãŠãã ããã
ã¯ãŒã¯ãããŒãšã¯ïŒ
äžæ¹ã以äžã®ããã«ããããããå®è¡æé ãæ確ã«å®ããããã·ã¹ãã ã¯ãã¯ãŒã¯ãããŒããšåŒã°ããŸãã
-
å®åçã»åºå®çãªæµã
äŸïŒ- ãŠãŒã¶ãŒããã®å ¥åãåãä»ãã
- ããŒã¿ããŒã¹ããå¿ èŠãªæ å ±ãååŸãã
- 翻蚳ããŒã«ã§å 容ã翻蚳ãã
- æçµçãªçµæããŠãŒã¶ãŒã«è¿ã
äžèšã®ããã«ãåŠçã®æµããäºåã«æ確ã«èšèšãããŠãããéäžã§äºæãã¬åå²ãçºçãã«ããä»çµã¿ãšãªã£ãŠããŸãã
-
ã¿ã¹ã¯ããšã®å®å®æ§
- åã¹ããããåºå®ãããŠãããããå®è¡çµæãæ¯èŒçå®å®ãããããçµæã®äºæž¬ãç«ãŠããããšããå©ç¹ããããŸãã
-
ã³ãŒãäž»å°ã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³
- LLMã®åºåãæ€èšŒããããã®ã²ãŒãããè€æ°ã®LLMã䞊åçã«åŒã³åºãä»çµã¿ãªã©ããäºåã«ã³ãŒãäžã§å®çŸ©ããŠãããŸãã
ãšãŒãžã§ã³ãå vs. ã¯ãŒã¯ãããŒåïŒã©ã¡ããéžã¶ïŒ
LLM ã掻çšããã·ã¹ãã ãæ€èšããéã以äžã®ç¹ãèæ ®ããŠããšãŒãžã§ã³ãåããšãã¯ãŒã¯ãããŒåãã®ã©ã¡ããéžã¶ãããããã¯äž¡æ¹ãçµã¿åãããããæ€èšãããšè¯ãã§ãããã
-
ã¿ã¹ã¯ã®è€éã
- åçŽãªã¿ã¹ã¯ãæé ãæ確ã«æ±ºãŸã£ãŠããã¿ã¹ã¯ã§ããã°ãã¯ãŒã¯ãããŒåã§ååã«å¯Ÿå¿ã§ããé«ãå®å®æ§ã確ä¿ã§ããŸãã
- å¯Ÿç §çã«ãã¿ã¹ã¯ãè€éã§ãäºåã«åŠçã®æµããå®çŸ©ãã«ããå Žåã«ã¯ããšãŒãžã§ã³ãåã®æ¹ãæè»ã«å¯Ÿå¿ãããããšèšããŸãã
-
蚱容ã§ããã³ã¹ãã»ã¬ã€ãã³ã·
- ãšãŒãžã§ã³ãåã¯ãè€æ°åã® LLM åŒã³åºããããŒã«ã®å©çšã䌎ãããšãå€ãããªãœãŒã¹ã³ã¹ããå¿çæéã®é 延ã倧ãããªãåŸåããããŸãã
- ã¯ãŒã¯ãããŒåã¯ãåŠçæé ãéå®ãããŠãããããå šäœçãªåŠçãå¹ççã«é²ããããšãã§ããŸãã
-
å®å šæ§ã»å¶åŸ¡æ§
- ãšãŒãžã§ã³ãåã¯ããèªåŸçã«åäœãããããäºæãã¬ãªã¹ã¯ã䌎ãå¯èœæ§ãèæ ®ããå¿ èŠããããŸãïŒäŸãã°ãæå³ããªãããŒã«ã®åŒã³åºããªã©ïŒã
- ãªã¹ã¯ãæãããå Žåã«ã¯ãã¯ãŒã¯ãããŒåã®ããã«å³æ Œãªæé ãå®ãããããšãŒãžã§ã³ãã«å¯ŸããŠé©åãªã¬ãŒãã¬ãŒã«ïŒäŸïŒæ倧å埩åæ°ãã³ã³ãã³ããã£ã«ã¿ãè©äŸ¡æ©èœãªã©ïŒãèšå®ããããšãéèŠã§ãã
代衚çãªãšãŒãžã§ã³ãïŒã¯ãŒã¯ãããŒã®ãã¿ãŒã³
å®éã«ãšãŒãžã§ã³ããæ§ç¯ããéã«ã¯ã以äžã®ãããªãã¿ãŒã³ãããçšããããŸãã
-
Augmented LLMïŒæ¡åŒµLLMïŒ
- æ€çŽ¢æ©èœïŒRetrievalïŒãããŒã«åŒã³åºããäŒè©±å±¥æŽã®èšæ¶ïŒã¡ã¢ãªïŒãªã©ãçµã¿åãããåºæ¬çãªæ§æã§ãã
- ChatGPT ã Bing ãããã®æ¡åŒµLLMã®äžäŸãšæããããšãã§ããŸãã
-
Prompt ChainingïŒããã³ããã»ãã§ã€ãã³ã°ïŒ
- ããã¿ã¹ã¯ã®åºåã次ã®ã¿ã¹ã¯ã®å ¥åãšããŠé£æºãããæé ãäºåã«å®çŸ©ããããšã§ã段éçã«ç²ŸåºŠãé«ããŠããã¯ãŒã¯ãããŒåã®ã¢ãããŒãã§ãã
- äŸïŒäžæžã â æ ¡æ£ â 翻蚳 â æçµãã§ã㯠ãšããããã«ãé çªã«åŠçãè¡ããŸãã
-
RoutingïŒæ¯ãåãïŒ
- ãŠãŒã¶ãŒããã®å ¥åã解æããããã®ã¿ã€ãã®è³ªåã¯ã¢ãã«Aã«éä¿¡ãããããå¥ã®ã¿ã€ãã®è³ªåã¯ã¢ãã«Bã«éä¿¡ããããšãã£ãã«ãŒãã£ã³ã°ããžãã¯ãã³ãŒãã§èšè¿°ããŸãã
- è€æ°ã®ã¢ãã«ãããŒã«ã䜿ãåãããå Žåã«æå¹ã§ãã
-
ParallelizationïŒäžŠååïŒ
- è€æ°ã® LLM ãåæã«åŒã³åºããããããã®åçãçµæãæ¯èŒã»çµ±åãããã¿ãŒã³ã§ãã
- è€æ°ã®æèŠãç §åããããšã§ä¿¡é Œæ§ãåäžãããããè€æ°ã®åŠçãåæã«è¡ãããšã§æéççž®ã«ç¹ãããããããšãã§ããŸãã
-
Orchestrator-WorkersïŒãªãŒã±ã¹ãã¬ãŒã¿ãšã¯ãŒã«ãŒïŒ
- äžå€®ã® LLM (ãªãŒã±ã¹ãã¬ãŒã¿) ãã¿ã¹ã¯ã现ååããå¿ èŠã«å¿ããŠè€æ°ã®ã¯ãŒã«ãŒ LLM ãåŒã³åºããŠåŠçãããæ§æã§ãã
- ã³ãŒãçæãææžäœæãªã©ãã©ã®éšåãã©ã®ã¯ãŒã«ãŒã«æ åœãããããåçã«æ±ºå®ããå Žåã«åœ¹ç«ã¡ãŸãã
-
Evaluator-OptimizerïŒè©äŸ¡ã»æé©åïŒ
- LLM ãçæããåºåãå¥ã® LLM ã§è©äŸ¡ãããã£ãŒãããã¯ãäžããããã«åºã¥ããŠä¿®æ£ãå床è©äŸ¡âŠãšããããã»ã¹ãç¹°ãè¿ãããšã§ãå質ãé«ããŠãããã¿ãŒã³ã§ãã
- é·æã®ã©ã€ãã£ã³ã°ãã³ãŒãã¬ãã¥ãŒãªã©ã人ãè¡ãâèŠçŽãâã®å·¥çšãèªååããã®ã«é©ããŠããŸãã
-
Autonomous AgentïŒèªåŸãšãŒãžã§ã³ãïŒ
- LLM ãã¿ã¹ã¯ã®èšç»ãããå¿ èŠãªããŒã«ã®éžæãšå®è¡ãé²æ確èªãŸã§ãèªåŸçã«è¡ã圢æ ã§ãã
- é«åºŠãªæè»æ§ãå®çŸã§ããŸãããã³ã¹ãã®å¢å ã誀äœåã®ãªã¹ã¯ãžã®å¯Ÿçãäžå¯æ¬ ã§ãã
ã·ã³ãã«ãªæ§æããå§ããå¿ èŠã«å¿ããŠæ¡åŒµ
LLM 掻çšãæåãããéµã¯ããæãè€éãªã·ã¹ãã ãæ§ç¯ããããšãã§ã¯ãªãããç®çã«åèŽããé©åãªä»çµã¿ãæ§ç¯ããããšãã«ãããŸãããŸãã¯ãåäžã®ã¢ãã«åŒã³åºããç°¡åãªããã³ããã»ãã§ã€ãã³ã°ããå§ããè©äŸ¡æ©èœãã³ã³ãã³ããã£ã«ã¿ãçšããŠå®å šæ§ãšå質ã確èªããªãããå¿ èŠã«å¿ããŠãšãŒãžã§ã³ãçãªèªåŸæ§ãè¿œå ããŒã«ã®å°å ¥ãæ€èšããŠããã®ãè¯ãã§ãããã
- ã·ã³ãã«ã«å§ãã: ãŸãã¯ãåäžã® LLM åŒã³åºããšæ€çŽ¢æ©èœïŒRetrievalïŒãçµã¿åããããããªåºæ¬çãªæ§æã§æ§èœãæ€èšŒããŸãã
- è©äŸ¡ãšæ¹åãç¹°ãè¿ã: åºåã®å質ããŠãŒã¶ãŒã®æºè¶³åºŠã枬å®ããåé¡ãããã°ããã³ããã®èšèšãããŒã«ã®è¿œå ãªã©ãèŠçŽããŸãã
- æè»ãªãšãŒãžã§ã³ãå: äºåã«åŠçå 容ãå®çŸ©ããããšãé£ããäœæ¥ãå¢ããŠããããèªåŸãšãŒãžã§ã³ãããªãŒã±ã¹ãã¬ãŒã·ã§ã³æ©èœãå°å ¥ããããšãæ€èšããŸãã
ãããã®éžæè¢ãç¶æ³ã«å¿ããŠçµã¿åãããããšã§ãããžãã¹ã®èŠæ±ã«åèŽããæé©ãªâãšãŒãžã§ã³ã or ã¯ãŒã¯ãããŒâãå®è£ ããããšãå¯èœã«ãªããŸãã
ãã®ãããªãšãŒãžã§ã³ããã¯ãŒã¯ãããŒã®èãæ¹ãèžãŸãã次㫠Azure AI Agent Service ãã©ã®ããã«ãšãŒãžã§ã³ãã®æ§ç¯ãæ¯æŽããŠãããã®ããå ¬åŒããã¥ã¡ã³ãã«åºã¥ããŠè©³ããèŠãŠãããŸãããã
1. Azure AI Agent Service ãšã¯ïŒ
Azure AI Agent Service ã¯ã倧èŠæš¡èšèªã¢ãã«ã掻çšããè€éãªåŠçãããŒãå€éšæ©èœãšã®é£æºãããµãŒããŒãµã€ãã§äžå çã«ç®¡çã§ããããŸãã«ç»æçãªãµãŒãã¹ã§ããæ倧ã®ç¹åŸŽã¯ãããšãŒãžã§ã³ãããšããæŠå¿µãçšããŠãäŒè©±ã®ç¶æ 管çãããŒã«ã®åŒã³åºããèªåçã«åŠçããŠãããç¹ã«ãããŸãã
ãããŸã§ãšããããã®éã
åŸæ¥ã®å®è£ æ¹æ³ïŒ
- OpenAI API ã«å¯ŸããŠåå¥ã«ãªã¯ãšã¹ããéä¿¡ããå¿ èŠããããŸããã
- ã¬ã¹ãã³ã¹ã解æããå¿ èŠã«å¿ã㊠Bing ããã®ä»ã® API ãå¥éåŒã³åºãå¿ èŠããããŸããã
- åŠçãããŒã®ç®¡çã»å®è£ ã¯ãåºæ¬çã«ã¯ã©ã€ã¢ã³ãåŽã§è¡ãå¿ èŠããããŸããã
- ãšã©ãŒãã³ããªã³ã°ã«ã€ããŠããéçºè ãç¬èªã«èšèšããå¿ èŠããããŸããã
Agent Service å©çšæã®å®è£ æ¹æ³ïŒ
- Agent Service ãããããŸã§ç ©éã ã£ã管çæ¥åããµãŒããŒãµã€ãã§äžæã«åŒãåããŸãã
- ãã¡ã€ã«æ€çŽ¢ãé¢æ°å®è¡ãšãã£ãããŒã«ã®åŒã³åºããèªåçã«å¶åŸ¡ããŠãããŸãã
- äŒè©±ã®å±¥æŽãã³ã³ããã¹ãã®ç®¡çãèªååãããŸãã
- ãšã©ãŒçºçæã®ãªãã©ã€åŠçãã代æ¿åŠçïŒãã©ãŒã«ããã¯ïŒã®ä»çµã¿ãæšæºã§åãã£ãŠããŸãã
ãšãŒãžã§ã³ãã䜿ãã¡ãªãã
-
å€§å¹ ãªã³ãŒãéåæž
- åŸæ¥ãããŒã«åŒã³åºãã®ããã«å¿ èŠã ã£ã JSON ã®ããŒã¹åŠçãèšè¿°ããæéãã»ãšãã©ãªããªããŸãã
- äŸå€åŠçããªãã©ã€åŠçã®ããžãã¯ããæšæºæ©èœãšããŠå®è£ æžã¿ãªãããèšè¿°ã®å¿ èŠããããŸããã
- äŒè©±ã®å±¥æŽãç¶æ ãèªåçã«ç®¡çããŠãããããããã®ããã®ã³ãŒããæžãå¿ èŠããããŸããã
-
äŒè©±å±¥æŽãšã¹ã¬ãã管çã®èªåå
- Azure AI Agent Service ããã¹ã¬ããããšããåäœã§äŒè©±ã®å±¥æŽãä¿åã»ç®¡çããŸãã
- äŒè©±ã®ã³ã³ããã¹ãç¶æã»ç®¡çã容æã«ãªããŸãã
- é·æéã«ãããããããã¯è€æ°åã®ããåããçºçãã察話ã§ããäŒè©±ã®ç¶æ ã倱ãããå¿é ããããŸããã
-
è€æ°ããŒã«ã®æè»ãªé£æº
- äŸãã°ãFileSearchãCodeInterpreterãBing Search ãªã©ã®ããŒã«ãçµã¿åãããŠå©çšã§ããŸãã
- ããŒã«éã§ããåããããããŒã¿ã®åãæž¡ãããAI åŽãæé©ãªåœ¢ã§åŠçããŠãããŸãã
- å¿ èŠã«å¿ããŠããšãŒãžã§ã³ããå©çšå¯èœãªããŒã«ãåçã«åŒã³åºããŠãããŸãã
-
容æãªæ¡åŒµæ§
- Azure Functions ã OpenAPI ãšé£æºããããšã§ãæ¢åã®ç¬èªãµãŒãã¹ã容æã«çµã¿èŸŒãããšãã§ããŸãã
- ã«ã¹ã¿ã é¢æ°ã®è¿œå æé ãã·ã³ãã«ã§ãã
- æ¢åã®ã·ã¹ãã ãšã®é£æºãã¹ã ãŒãºã«è¡ããŸãã
次ã«ãAzure AI Agent Service ãå æ¬çã«æããããã® Azure AI Foundry ã«ã€ããŠããã®æŠèŠã解説ããŠãããŸãã
2. Azure AI Foundry ã®åºæ¬
Azure AI Foundry ã¯ããšãŒãžã§ã³ãé¢é£ã®ãããžã§ã¯ããã³ã³ãã³ããã£ã«ã¿ãAIã¢ãã«ããããŠæ¥ç¶ãªãœãŒã¹ãªã©ããŸãšããŠç®¡çã§ãããããŒã¿ã«ã§ãããµãŒãã¹çŸ€ã§ããããŸããç¹ã«ãšã³ã¿ãŒãã©ã€ãºã¬ãã«ã®ã»ãã¥ãªãã£ãšãã©ã€ãã·ãŒèŠä»¶ã«å¯Ÿå¿ããããã®æ©èœãå å®ããŠããããã®äžã§ãBring your own (BYO) storageãBYO-virtual networkãšãã£ãæ©èœã¯å€§ããªé åãšèšããã§ããããããã§ã¯ãäž»èŠãªæ©èœããã£ãããšã玹ä»ããŸãã
ãããžã§ã¯ã (Project) 管ç
- AIã¢ãã«ããšãŒãžã§ã³ããäžå çã«ç®¡çã§ããŸãã
- ãã¡ã€ã«ã¹ãã¬ãŒãžãšãã¯ã¿ãŒã¹ãã¢ãçµ±åãããŠããŸãã
- ãããã€èšå®ãå©çšç¶æ³ã®ã¢ãã¿ãªã³ã°ãããã§è¡ããŸãã
Connected ResourcesïŒæ¥ç¶ãªãœãŒã¹ïŒ
- Bing Search ãšã®é£æºãå¯èœã§ãã
- Azure Functions ãšã®çµ±åããµããŒããããŠããŸãã
- Azure OpenAI ã¢ãã«ã®ç®¡çãããã«å«ãŸããŸãã
- Azure AI SearchïŒæ§Cognitive SearchïŒãšã®æ¥ç¶èšå®ãè¡ããŸãã
- ã«ã¹ã¿ã APIãç»é²ããŠæŽ»çšããããšãå¯èœã§ãã
Safety + SecurityïŒå®å šæ§ãšã»ãã¥ãªãã£ïŒ
- ã³ã³ãã³ããã£ã«ã¿ã®äœæãç·šéãè¡ããŸãã
- èäœæš©ä¿è·ã«é¢ããèšå®ã管çã§ããŸãã
- å®å šåºæºãã»ãã¥ãªãã£ããªã·ãŒã®é©çšãå¯èœã§ãã
- ã¢ã¯ã»ã¹å¶åŸ¡æ©èœãåãã£ãŠããŸãã
TracingïŒãã¬ãŒã·ã³ã°ïŒæ©èœ
- Application Insights ãšé£æºããããšã§ããã詳现ãªè¿œè·¡ãå¯èœã§ãã
- ãšãŒãžã§ã³ãã®å®è¡çµè·¯ãèŠèŠçã«ç¢ºèªã§ããŸãã
- ããã©ãŒãã³ã¹åæããšã©ãŒçºçæã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ã«åœ¹ç«ã¡ãŸãã
ãã詳ããæ å ±ã«ã€ããŠã¯ã以äžã®å ¬åŒããã¥ã¡ã³ãã䜵ããŠåç §ããŠã¿ãŠãã ããã
3. Agentsã®ä»çµã¿ïŒãšãŒãžã§ã³ãã»ã¹ã¬ããã»ã¡ãã»ãŒãžã»ã©ã³
Azure AI Agent Service ã®äžæ žãæãã®ã¯ããšãŒãžã§ã³ããã¹ã¬ãããã¡ãã»ãŒãžãã©ã³ãšãã4ã€ã®äž»èŠãªæŠå¿µã§ããããã§ã¯ãããããäžã€ãã€äžå¯§ã«è§£èª¬ããŠãããŸãã
ãšãŒãžã§ã³ã (Agent)
ãšãŒãžã§ã³ãã¯ãAI ãã©ã®ããã«æ¯ãèãããå®çŸ©ããããŸãã«èŠãšãªãã³ã³ããŒãã³ãã§ãããã®æ§æèŠçŽ ãèŠãŠãããŸãããã
-
ã¢ãã«éžæïŒãšãŒãžã§ã³ãã䜿çšããèšèªã¢ãã«ãæå®ããŸãïŒäŸïŒ
gpt-4o-mini
ïŒã - ããŒã«èšå®ïŒFileSearchTool ã CodeInterpreterTool ãªã©ãé£æºãããããŒã«ãéžæããŸãã
- æ瀺ïŒInstructionsïŒïŒãšãŒãžã§ã³ãã«ã©ã®ãããªåœ¹å²ãäžããã©ã®ããã«è¡åããããã®æéãèšè¿°ããŸãã
- ã·ã¹ãã ã¡ãã»ãŒãžïŒåæããã³ãããªã©ããšãŒãžã§ã³ãã®åºæ¬çãªæ¯ãèãã決å®ããéšåãèšå®ããŸãã
- ã¡ã¢ãªèšå®ïŒäŒè©±ã®æèãèšæ¶ãã©ã®çšåºŠä¿æããããèšå®ããŸãã
ã¹ã¬ãã (Thread)
ã¹ã¬ããã¯ãäžé£ã®äŒè©±ããŸãšããã»ãã·ã§ã³ã®åäœãšããŠæ©èœããŸãã
- ã¡ãã»ãŒãžã®ä¿ç®¡ïŒãŠãŒã¶ãŒãšãšãŒãžã§ã³ãã®éã§ããåããããéå»ã®ã¡ãã»ãŒãžãä¿ç®¡ããŸãã
- ç¶æ 管çïŒå¯Ÿè©±ãç¶ãäžã§ãäŒè©±ã®æµããé²è¡ç¶æ³ãææ¡ãã管çããŸãã
- ãã©ã³ã±ãŒã·ã§ã³ïŒé·ããªã£ãäŒè©±ãé©åã«èŠçŽãã管çããããç¶æ ã«ããŸãã
- ã¡ã¿ããŒã¿ïŒäŒè©±ã®ã¿ã€ã ã¹ã¿ã³ããã»ãã·ã§ã³ã«é¢ããæ å ±ãªã©ãä»äžããŸãã
ã¡ãã»ãŒãž (Message)
ã¡ãã»ãŒãžã¯ããŠãŒã¶ãŒããšãŒãžã§ã³ããã·ã¹ãã ã®éã§è¡ãããäžåã®ãçºè©±ããè¡šããã®ã§ãã
-
圹å²ïŒRoleïŒïŒçºè©±è
ã誰ã§ãããã瀺ããŸã (
user
ïŒassistant
ïŒsystem
)ã - å 容ïŒContentïŒïŒçºè©±ã®å 容ãã®ãã®ã§ãããã¹ããç»åããã¡ã€ã«ãªã©ãå«ããããšãã§ããŸãã
- ã¿ã€ã ã¹ã¿ã³ãïŒã¡ãã»ãŒãžãéä¿¡ãããæ¥æãèšé²ããŸãã
- ã¡ã¿ããŒã¿ïŒå¿ èŠã«å¿ããŠãææ ã«é¢ããæ å ±ãçºè©±ã®æå³ãªã©ãè¿œå ã§ããŸãã
ã©ã³ (Run)
ã©ã³ã¯ããšãŒãžã§ã³ããå®éã«åŠçãå®è¡ããéã®åäœã§ããçšéã«åãããŠã以äžã®ã¡ãœãããéžæã§ããŸãã
create_run
- ãšãŒãžã§ã³ãã®å®è¡ããªã¯ãšã¹ããããã®ç¶æ ãå®æçã«ç¢ºèªïŒããŒãªã³ã°ïŒããããšã§ãåŠçã®é²æãææ¡ããŸãã
- ãã现ããªå¶åŸ¡ãè¡ãããå Žåã«é©ããŠããŸãã
create_and_process_run
- SDK ãèªåçã«ããŒãªã³ã°åŠçãè¡ããçµæãè¿ã£ãŠãããŸã§ã®äžé£ã®åŠçããŸãšããŠå®è¡ããŸãã
- ç¹ã« FunctionTool ãªã©ãããŒã«ãåŒã³åºããããã®çµæãåŸ ã€å¿ èŠãããå Žåã«äŸ¿å©ã§ãã
create_stream
- å¿çããªã¢ã«ã¿ã€ã ã«åä¿¡ããããã®ã¹ããªãŒãã³ã°åŠçãéå§ããŸãã
- ã€ã³ã¿ã©ã¯ãã£ããªäŒè©±ããã£ããUIãå®è£ ããéã«æé©ã§ãã
ãããŸã§ã§ããšãŒãžã§ã³ãã®ä»çµã¿ã«é¢ããåºæ¬çãªæŠèŠã説æããŸãããç¶ããŠã¯ãå®éã«æŽ»çšã§ããããŒã«ã®å ·äœçãªäŸããã³ãŒãã亀ããªããèŠãŠãããŸãããã
4. äž»èŠãªããŒã«ã®æŽ»çšäŸïŒã³ãŒãä»ãïŒ
4.1 File Search
ããã¥ã¡ã³ãããã¯ã¿ãŒã¹ãã¢ã«æ ŒçŽããŠæ€çŽ¢ã§ãã匷åãªæ©èœã§ãã瀟å ææžã補åæ å ±ã®æ€çŽ¢ã«æé©ã§ãRAGïŒRetrieval-Augmented GenerationïŒã¹ã¿ã€ã«ã®åçãç°¡åã«å®è£ ã§ããŸãã
# ãã¡ã€ã«ã¢ããããŒã
file = project_client.agents.upload_file_and_poll(
file_path="product_info_1.md",
purpose="assistants"
)
print(f"ã¢ããããŒããããã¡ã€ã«ID: {file.id}")
# ãã¯ã¿ãŒã¹ãã¢äœæ
vector_store = project_client.agents.create_vector_store_and_poll(
file_ids=[file.id],
name="my_vectorstore"
)
print(f"äœæãããã¯ã¿ãŒã¹ãã¢ID: {vector_store.id}")
# FileSearchTool ã®çæ
file_search_tool = FileSearchTool(vector_store_ids=[vector_store.id])
# ãšãŒãžã§ã³ãäœæã«ããŒã«ãæž¡ã
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="my-assistant",
instructions="ã¢ããããŒãããã補åæ
å ±ãã¡ã€ã«ããæ€çŽ¢ããŠåçããŠãã ãã",
tools=file_search_tool.definitions,
tool_resources=file_search_tool.resources,
)
ãã®ãšãŒãžã§ã³ãã«å¯Ÿã㊠run ãå®è¡ãããšããŠãŒã¶ãŒã®è³ªåã«å¿ããŠä»¥äžã®åŠçãèªåã§è¡ããŸãïŒ
1. ã¢ããããŒãæžã¿ãã¡ã€ã«ããã®é¢é£æ
å ±æ€çŽ¢
2. æ€çŽ¢çµæã®èŠçŽã»æŽç
3. ãŠãŒã¶ãŒã®è³ªåã«æ²¿ã£ãåçã®çæ
4.2 Code Interpreter
Pythonã³ãŒãããµã³ãããã¯ã¹ç°å¢ã§å®è¡ã§ãã匷åãªããŒã«ã§ããæ°å€è§£æãã°ã©ãçæãããŒã¿å€æãªã©ãå€åœ©ãªæäœã LLM ãèªåçã«å®è¡ããŠãããŸãã
# ããŒã¿ãã¡ã€ã«ã®ã¢ããããŒã
file = project_client.agents.upload_file_and_poll(
file_path="nifty_500_quarterly_results.csv",
purpose=FilePurpose.AGENTS
)
# Code Interpreterã®åæå
code_interpreter = CodeInterpreterTool(file_ids=[file.id])
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="my-assistant",
instructions="ããŒã¿åæãã°ã©ãäœæã®ãæäŒããããŸã",
tools=code_interpreter.definitions,
tool_resources=code_interpreter.resources,
)
# ã¹ã¬ãããšã¡ãã»ãŒãžãäœæ
thread = project_client.agents.create_thread()
message = project_client.agents.create_message(
thread_id=thread.id,
role="user",
content="ã¢ããããŒãããCSVã®åçããŒã¿ãåæããŠãæ£ã°ã©ããäœæããŠãã ãã"
)
# å®è¡ïŒã©ã³ïŒ
run = project_client.agents.create_and_process_run(
thread_id=thread.id,
assistant_id=agent.id
)
print(run.status)
Code Interpreterã®ç¹åŸŽïŒ
⢠ã³ãŒãã倱æããå ŽåããšãŒãžã§ã³ããèªåä¿®æ£ããŠãªãã©ã€
⢠ã°ã©ãçæãããŒã¿ã¯ãªãŒãã³ã°ã®èªåå
⢠å®è¡ç°å¢ããµã³ãããã¯ã¹åãããŠããã®ã§å®å
šæ§ãé«ã
4.3 Function Call / Azure Functions
ã«ã¹ã¿ã é¢æ°ã Azure Functions ããšãŒãžã§ã³ãããåŒã³åºãããã®æ©èœãæäŸããŸãã
ã«ã¹ã¿ã é¢æ°ã®äŸ
# ã«ã¹ã¿ã é¢æ°ã®å®çŸ©
functions = FunctionTool(user_functions) # user_functionsã¯é¢æ°å®è£
ãå«ãèŸæž
toolset = ToolSet()
toolset.add(functions)
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="function-agent",
instructions="å€éšé¢æ°ã䜿ã£ãŠããŒã¿ãååŸã§ããŸã",
toolset=toolset,
)
Azure Functions ãšã®é£æºäŸ
# Azure Function Toolã®èšå®
azure_function_tool = AzureFunctionTool(
name="get_weather",
description="Azure Functionã䜿ã£ãŠå€©æ°æ
å ±ãååŸ",
parameters={
"city": {
"type": "string",
"description": "éœåžå"
},
"date": {
"type": "string",
"description": "æ¥ä»ïŒYYYY-MM-DD圢åŒïŒ"
}
},
input_queue=AzureFunctionStorageQueue(...),
output_queue=AzureFunctionStorageQueue(...),
)
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4",
name="weather-agent",
instructions="ãŠãŒã¶ãŒã倩æ°ã«ã€ããŠè³ªåããããæäŸãããé¢æ°ã䜿ã£ãŠåçããŠãã ãã",
tools=azure_function_tool.definitions,
)
äŸãã°ããæ±äº¬ã®å€©æ°ãæããŠãã ããããšè³ªåããå Žåãè£åŽã§ã¯ä»¥äžã®ãããªåŠçãè¡ãããŸãã
1. å
¥åãã¥ãŒã«ãªã¯ãšã¹ããæãããã
2. Azure Function ããã®ãªã¯ãšã¹ããåŠç
3. çµæãåºåãã¥ãŒã«æ ŒçŽ
4. ãšãŒãžã§ã³ãããããååŸããŠåçãçæ
4.4 Bing Grounding
ææ°ã®ãŠã§ãæ å ±ãåã蟌ã¿ããå Žåã«äŸ¿å©ãªæ©èœã§ããAzure AI Foundry äžã§æ¥ç¶èšå®ãæžãŸããã°ãBing Search ã«ãããªã¢ã«ã¿ã€ã ãªããŒã¿ååŸãå¯èœã«ãªããŸãã
# Bingæ¥ç¶ã®ååŸ
bing_conn = project_client.connections.get(connection_name="bing-connection")
bing_tool = BingGroundingTool(connection_id=bing_conn.id)
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="bing-search-agent",
instructions="Bingã䜿ã£ãŠææ°ã®ãŠã§ãæ
å ±ãæ€çŽ¢ããé©åãªåçãæäŸããŸã",
tools=bing_tool.definitions,
headers={"x-ms-enable-preview": "true"}
)
Bing Grounding ã®äž»ãªç¹åŸŽã¯ä»¥äžã®éãã§ãã
⢠垞ã«ææ°ã®æ
å ±ã«åºã¥ããŠåçãçæã§ãããããæ
å ±ã®é®®åºŠãéèŠãšãªãå Žåã«é©ããŠããŸãã
⢠è€æ°ã®æ
å ±æºããåŸãããæ
å ±ãçµ±åããããå
æ¬çãªåçãçæã§ããŸãã
⢠å€èšèªã§ã®æ€çŽ¢ã«ã察å¿ããŠãããã°ããŒãã«ãªæ
å ±åéã«ã掻çšã§ããŸãã
4.5 Azure AI Search
ãšã³ã¿ãŒãã©ã€ãºåãã®é«åºŠãªæ€çŽ¢æ©èœã䜿ããã®ãã倧ããªã¢ããã³ããŒãžã§ããæ¢åã® Azure Cognitive Search ã€ã³ããã¯ã¹ã掻çšããããŒã¿ãå¹ççã«æ¢çŽ¢ã§ããŸãã
# æ€çŽ¢æ¥ç¶ã®ååŸ
search_conn = project_client.connections.get_default(
connection_type=ConnectionType.COGNITIVESEARCH
)
ai_search = AzureAISearchTool(
index_connection_id=search_conn.id,
index_name="myindex"
)
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o",
name="enterprise-search-agent",
instructions="ãšã³ã¿ãŒãã©ã€ãºæ€çŽ¢æ©èœãåããç¥èè±å¯ãªã¢ã·ã¹ã¿ã³ãã§ã",
tools=ai_search.definitions,
tool_resources=ai_search.resources,
)
Azure AI Search ãå©çšããäž»ãªã¡ãªããã¯ä»¥äžã®éãã§ãã
- é«åºŠãªå šææ€çŽ¢ããç¹å®ã®æ¡ä»¶ã§æ€çŽ¢çµæãçµã蟌ããã¡ã»ããæ€çŽ¢ãªã©ãå€æ§ãªæ€çŽ¢æ©èœãå©çšã§ããŸãã
- åãªãããŒã¯ãŒãæ€çŽ¢ã ãã§ãªããèšèã®æå³ãç解ããäžã§æ€çŽ¢ãè¡ãã»ãã³ãã£ãã¯æ€çŽ¢ãå©çšããããšã§ãããèªç¶ãªæ€çŽ¢çµæãåŸãããŸãã
- å€èšèªå¯Ÿå¿ã¯ãã¡ããã®ããšãäŒæ¥å ã®ã¢ã¯ã»ã¹æš©é管çãšã®é£æºãå¯èœã§ãããã»ãã¥ã¢ãªç°å¢ã§ã®æ å ±æ€çŽ¢ãå®çŸã§ããŸãã
4.6 OpenAPI
OpenAPI ã¯ãAPI ã®èšèšãèšè¿°ããããã®æšæºçãªä»æ§ã§ããããã®ä»æ§ã«æºæ ããå€éšãµãŒãã¹ã Azure AI Agent Service ããçŽæ¥åŒã³åºãããšãå¯èœã§ããæ¢åã® API ããšãŒãžã§ã³ãã®æ©èœãšããŠå®¹æã«çµ±åã§ããŸãã
import jsonref
# OpenAPIä»æ§ã®èªã¿èŸŒã¿
with open("weather_openapi.json","r") as f:
openapi_spec = jsonref.loads(f.read())
# OpenApiToolã®èšå®
openapi_tool = OpenApiTool(
name="weather_api",
spec=openapi_spec,
description="倩æ°æ
å ±ãååŸããAPIã§ã",
auth=OpenApiAnonymousAuthDetails(),
)
# ãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o",
name="openapi-agent",
instructions="OpenAPIä»æ§ã«åŸã£ã倩æ°APIã䜿ã£ãŠæ
å ±ãæäŸããŠãã ãã",
tools=openapi_tool.definitions,
)
OpenAPI ãçµ±åããå©ç¹ã¯å€å²ã«ããããŸãã
- æ¢åã® API ããã®ãŸãŸæŽ»çšã§ãããããæ°ããªéçºã³ã¹ããæãã€ã€ããšãŒãžã§ã³ãã®æ©èœãæ¡åŒµã§ããŸãã
- API ã®ãã©ã¡ãŒã¿æ€èšŒããšã©ãŒãã³ããªã³ã°ãªã©ãèªååããããããéçºè ã¯ããžãã¹ããžãã¯ã«éäžã§ããŸãã
- OAuth ãªã©ã®èªèšŒæ©æ§ã«ã察å¿ããŠãããã»ãã¥ã¢ãª API é£æºãå¯èœã§ãã
以äžããAzure AI Agent Service ã§å©çšã§ããäž»èŠãªããŒã«ã®æŽ»çšäŸã§ãããããã®ããŒã«ãçµã¿åãããããšã§ãè€éãªåŠçã䌎ãé«åºŠãªå¯Ÿè©±åã¢ããªã±ãŒã·ã§ã³ãæ¯èŒç容æã«æ§ç¯ã§ããããšããåããããã ããããšæããŸãã
5. ã³ã³ãã³ããã£ã«ã¿ãã«ã¹ã¿ãã€ãºããŠã¿ãã
Azure AI Foundry ããŒã¿ã«ã® ãSafety + securityã â ãContent filtersã ãããããŸããŸãªã³ã³ãã³ããã£ã«ã¿èšå®ãè¡ããŸããããã§ã¯ããã®ã«ã¹ã¿ãã€ãºäŸããã¹ããã©ã¯ãã£ã¹ã玹ä»ããŸãã
ãã£ã«ã¿ãªã³ã°ã«ããŽãª
-
æŽåçè¡šçŸïŒViolenceïŒ
- ç©ççãªæŽå
- æŠåšãå±éºç©
- è è¿«ãå±å®³ã«é¢ããè¡šçŸ
-
ææªè¡šçŸïŒHateïŒ
- å·®å¥çã»åèŠçãªçºèš
- ãã€ãã¹ããŒã
- ç¹å®ã®äººã ãéå£ãæé€ã»æ»æããè¡šçŸ
-
æ§çè¡šçŸïŒSexualïŒ
- é²éªšãªæ§çè¡šçŸ
- äžé©åãªèªã
- æ人åãã³ã³ãã³ã
-
èªå·è¡çºïŒSelf-harmïŒ
- èªæ®ºã«é¢é£ããèšå
- èªå·è¡çºã®å©é·
- å±éºãªè¡çºã®æšå¥š
ãããå€èšå®
åã«ããŽãªã«ã€ããŠãLow / Medium / High ã®3段éãããå€ãèšå®ã§ããŸãã
- LowïŒè»œåºŠãªè¡šçŸãæ€ç¥
- MediumïŒäžè¬çãªäžé©åè¡šçŸãæ€ç¥ïŒããã©ã«ãïŒ
- HighïŒæ·±å»ãªäžé©åè¡šçŸã®ã¿æ€ç¥
é©çšç¯å²ã®èšå®
- ããã³ããå ¥åçšãã£ã«ã¿ïŒãŠãŒã¶ãŒããã®å ¥åïŒçºè©±å 容ïŒããã§ãã¯
- ã¢ãã«åºåçšãã£ã«ã¿ïŒAIã¢ã·ã¹ã¿ã³ãïŒãšãŒãžã§ã³ãïŒã®åºåããã§ãã¯
è¿œå ãã£ã«ã¿ãªãã·ã§ã³
-
Jailbreakãªã¹ã¯æ€åº
- ããã³ããã€ã³ãžã§ã¯ã·ã§ã³å¯Ÿç
- ã·ã¹ãã åœä»€ã®æ¹å€ãè©Šã¿ãäžæ£è¡çºãæ€åº
- æªæããæ瀺ã®é²æ¢
-
Protected Materialæ€åº
- GitHub ãªã©ã®ã³ãŒãã®èäœæš©ä¿è·
- æ©å¯æ å ±ã®æŒæŽ©ãé²æ¢
- å人æ å ±ã®ä¿è·ã«å¯äž
ã«ã¹ã¿ãã€ãºã®ãã¹ããã©ã¯ãã£ã¹
-
段éçãªèª¿æŽ
- ãŸãã¯ããã©ã«ãïŒmediumïŒã§éå§
- å®éã®äœ¿ããæ¹ãèŠãªããã誀æ€ç¥ãåãããŒããåæ
- å¿ èŠã«å¿ããŠæ®µéçã«ç·©åã»åŒ·å
-
ãŠãŒã¹ã±ãŒã¹ã«å¿ããèšå®
- äžè¬åããµãŒãã¹ â ããå³æ Œã«ïŒç¹ã«æŽåãæ§çè¡šçŸïŒ
- å°é家åã â èªåœã®å¹ ãå¿ èŠãªãç·©å
- æè²ã»ç 究çšé â å©çšç®çã«å¿ãã調æŽ
-
ã¢ãã¿ãªã³ã°ãšæ¹å
- ãã£ã«ã¿ãªã³ã°çµæã®ãã°ãååŸããŠèª€æ€ç¥ããã§ãã¯
- å®æçã«èšå®ãèŠçŽããããŒãžã§ã³ã¢ãã
-
ããã¯ã¢ãã察ç
- ãã£ã«ã¿èšå®ã®ãšã¯ã¹ããŒãã»ã€ã³ããŒãã掻çš
- æ¿èªãããŒãçµã¿èŸŒãïŒç¹ã«å€§èŠæš¡éçšæïŒ
- 人ã®ç®ã§æçµç¢ºèªãè¡ãä»çµã¿ïŒé倧ãªãšã©ãŒé²æ¢ïŒ
ã³ã³ãã³ããã£ã«ã¿ããã£ããæŽåããããšã§ãAIã¢ã·ã¹ã¿ã³ããå®å šãã€é©åãªå¿çãè¡ãããããªããŸãããããã¯ã·ã§ã³ç°å¢ã§ã®éçšãèããéã¯ããªãã¹ãæ©ã段éã§ãã£ã«ã¿èšå®ãæŽããŠããã®ãããããã§ãã
6. Evaluationæ©èœã§AIã®æ§èœããã§ãã¯ãã
ããã§ã¯ããªã¢ãŒãè©äŸ¡æ©èœãçšã㊠AI ã®åºåå質ãå®éçã«ãã§ãã¯ããæ¹æ³ã解説ããŸãã
ãªã¢ãŒãè©äŸ¡ã®å®è£ ãããŒ
1. ãã¹ãããŒã¿ã®æºå
# JSONL圢åŒã§ãã¹ãããŒã¿ãçšæ
test_data = [
{
"input": "補åAã®ç¹åŸŽãæããŠãã ãã",
"expected_output": "補åAã¯é«æ§èœãªçãšãæ©èœãåããŠãããæ¶è²»é»åãæ倧50%åæžã§ããŸãã",
"metadata": {
"category": "product_info",
"difficulty": "basic"
}
},
# ä»ã®ãã¹ãã±ãŒã¹ãè¿œå ...
]
# ããŒã¿ã®ã¢ããããŒã
data_id, _ = project_client.upload_file("evaluation_data.jsonl")
2. è©äŸ¡èšå®ã®äœæ
evaluation = Evaluation(
display_name="補åæ
å ±åçã®æ£ç¢ºæ§è©äŸ¡",
data=Dataset(id=data_id),
evaluators={
"relevance": EvaluatorConfiguration(
id=RelevanceEvaluator.id,
parameters={
"criteria": "補åæ
å ±ã®æ£ç¢ºæ§ãå®å
šæ§ãé¢é£æ§ãè©äŸ¡"
}
),
"f1_score": EvaluatorConfiguration(
id=F1ScoreEvaluator.id,
parameters={
"threshold": 0.8
}
),
}
)
3. è©äŸ¡ã®å®è¡ãšç£èŠ
# è©äŸ¡ãžã§ãã®å®è¡
eval_resp = project_client.evaluations.create(evaluation=evaluation)
print(f"è©äŸ¡ID: {eval_resp.id}")
print(f"ã¹ããŒã¿ã¹: {eval_resp.status}")
# çµæã®ååŸ
results = project_client.evaluations.get(eval_resp.id)
# ããã§çµæå
容ãåæããã¹ã³ã¢ã確èª
è©äŸ¡ææšã®çš®é¡
1. 粟床é¢é£ã®ææš
- F1ã¹ã³ã¢ïŒé©åçïŒPrecisionïŒãšåçŸçïŒRecallïŒã®èª¿åå¹³å
- BLEUïŒæ©æ¢°ç¿»èš³ãèŠçŽã¿ã¹ã¯ã®å質ææš
- ROUGEïŒèŠçŽã®å質枬å®ã«å©çš
- Exact MatchïŒæåŸ ãããåçãšã®å®å šäžèŽç
2. æå³çè©äŸ¡
- RelevanceïŒé¢é£æ§ã¹ã³ã¢
- CoherenceïŒæç« ã®äžè²«æ§
- FaithfulnessïŒäºå®ãšåçã®æŽåæ§
- ToxicityïŒæ害çºèšã®åºŠåã
3. ã«ã¹ã¿ã è©äŸ¡åšã®äœæ
class CustomEvaluator:
def __init__(self, criteria):
self.criteria = criteria
def evaluate(self, prediction, ground_truth):
score = 0
feedback = []
# è©äŸ¡ããžãã¯ãç¬èªã«å®è£
for criterion in self.criteria:
criterion_score = self._evaluate_criterion(
prediction,
ground_truth,
criterion
)
score += criterion_score['score']
feedback.append(criterion_score['feedback'])
return {
'score': score / len(self.criteria),
'feedback': feedback
}
Evaluation æ©èœã掻çšããããšã§ãã¢ãã«ã®åºåå質ã客芳çã«ãã§ãã¯ããç¶ç¶çã«æ¹åããŠãããµã€ã¯ã«ãåãããããªããŸãããããžã§ã¯ãã®ã¹ããŒãžã«åãããŠè©äŸ¡ææšãéžå®ããå¿ èŠã«å¿ããŠã«ã¹ã¿ã è©äŸ¡åšãäœãã®ãè¯ãã§ãããã
7. ãã³ãºãªã³ïŒå®è£ ãããŒãéãã§èŠãŠã¿ãã
7.1 ç°å¢ã»ããã¢ãã
# å¿
èŠãªããã±ãŒãžã®ã€ã³ã¹ããŒã«
pip install azure-ai-projects
pip install azure-identity
pip install azure-ai-inference
7.2 ãããžã§ã¯ãã®åæå
import os
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
# ãããžã§ã¯ãã¯ã©ã€ã¢ã³ãã®äœæ
project_client = AIProjectClient.from_connection_string(
credential=DefaultAzureCredential(),
conn_str=os.environ["PROJECT_CONNECTION_STRING"]
)
7.3 ããŒã¿ã®æºåãšè§£æ
# ã»ãŒã«ã¹ããŒã¿ã®ã¢ããããŒã
file = project_client.agents.upload_file_and_poll(
file_path="sales_data.csv",
purpose="assistants"
)
# ãã¯ã¿ãŒã¹ãã¢ã®äœæ
vector_store = project_client.agents.create_vector_store_and_poll(
file_ids=[file.id],
name="sales_vectorstore"
)
# æ€çŽ¢ããŒã«ã®åæå
file_search_tool = FileSearchTool(vector_store_ids=[vector_store.id])
# ã³ãŒãã€ã³ã¿ãŒããªã¿ã®èšå®
code_interpreter = CodeInterpreterTool(file_ids=[file.id])
7.4 é«åºŠãªåæãšãŒãžã§ã³ãã®äœæ
agent = project_client.agents.create_agent(
model="gpt-4o-mini",
name="sales-analysis-agent",
instructions="""
ããªãã¯å¶æ¥ããŒã¿ã®åæãšãã¹ããŒãã§ãã以äžã®æ©èœãæäŸããŸãïŒ
- 売äžããŒã¿ã®è©³çŽ°ãªåæ
- ãã¬ã³ãåæãšã°ã©ãäœæ
- äºæž¬ãšæšå¥šäºé
ã®æ瀺
- ãããããã説æãšèŠèŠå
""",
tools=file_search_tool.definitions + code_interpreter.definitions,
tool_resources=file_search_tool.resources + code_interpreter.resources,
)
# ã¹ã¬ããã®äœæ
thread = project_client.agents.create_thread()
# åæãªã¯ãšã¹ãã®éä¿¡
message = project_client.agents.create_message(
thread_id=thread.id,
role="user",
content="ååæããšã®å£²äžæšç§»ãã°ã©ãåããŠãéèŠãªãã¬ã³ãã解説ããŠãã ãã"
)
7.5 çµæã®ååŸãšä¿å
# åæã®å®è¡
run = project_client.agents.create_and_process_run(
thread_id=thread.id,
assistant_id=agent.id
)
# ã¡ãã»ãŒãžå±¥æŽã®ååŸ
messages = project_client.agents.list_messages(thread_id=thread.id)
for msg in reversed(messages.data):
if msg.role == "assistant":
print("ã¢ã·ã¹ã¿ã³ãã®åç:", msg.content[-1].text.value if msg.content else "ããã¹ããªã")
# çæãããç»åã®ä¿å
for image_content in messages.image_contents:
file_id = image_content.image_file.file_id
project_client.agents.save_file(
file_id=file_id,
file_name="sales_analysis_chart.png"
)
print("ã°ã©ãã sales_analysis_chart.png ãšããŠä¿åããŸãã")
ãã®ãããŒã«ããããã¡ã€ã«æ€çŽ¢ããŒã«ã§ããŒã¿ãæ¢ããã³ãŒãã€ã³ã¿ãŒããªã¿ã§ã°ã©ãåã解æãè¡ããæçµçã«å¯èŠåçµæãæ·»ä»ãã¡ã€ã«ãšããŠè¿ããšãããŸã§ããèªåçã«é²ããããŸãã人éãæžããã³ãŒãããšãŒãžã§ã³ããå®è¡ããŠå€±æãããšããŠãããšãŒãžã§ã³ããã³ãŒããä¿®æ£ããªããåè©Šè¡ããŠããããããçæéã§çµæãåŸãããã±ãŒã¹ãå€ãã§ãã
8. ãŸãšããšä»åŸã®å±æ
Azure AI Agent Service ã®äž»ãªã¡ãªãã
-
éçºå¹çã®å€§å¹ ãªåäž
- ãµãŒããŒãµã€ãã§ã®äžå 管çã«ãããã¯ã©ã€ã¢ã³ãåŽã®å®è£ è² æ ã軜æžãããŸãã
- äŒè©±å±¥æŽã®ç®¡çããšã©ãŒåŠçãªã©ãèªååããããããå°ãªãã³ãŒãéã§é«åºŠãªæ©èœãå®çŸã§ããŸãã
-
é«åºŠãªæ©èœé£æº
- è€æ°ã®ããŒã«ãã·ãŒã ã¬ã¹ã«é£æºãããè€éãªåŠçãããŒãæ§ç¯ã§ããŸãã
- å¹ åºãã«ã¹ã¿ãã€ãºãå¯èœã§ãæ§ã ãªããžãã¹ããŒãºã«å¯Ÿå¿ã§ããŸãã
- ã¹ã±ãŒã©ãã«ãªã¢ãŒããã¯ãã£ãåããŠããã倧èŠæš¡ãªã¯ãŒã¯ãããŒã«ã察å¿ã§ããŸãã
-
ã»ãã¥ãªãã£ãšå質ã®ç¢ºä¿
- 匷åãªã³ã³ãã³ããã£ã«ã¿æ©èœã«ãããäžé©åãªã³ã³ãã³ãã®ãªã¹ã¯ãäœæžã§ããŸãã
- ç¶ç¶çãªè©äŸ¡æ©èœïŒEvaluationïŒã掻çšããããšã§ãAI ã®åºåå質ãåäžãããããšãã§ããŸãã
- äŒæ¥ã®ã³ã³ãã©ã€ã¢ã³ã¹èŠä»¶ã«åãããæè»ãªå¯Ÿå¿ãå¯èœã§ãã
ä»åŸã®å±éãžã®æåŸ
-
ãããªãæ©èœæ¡åŒµ
- è€æ°ã®ããŒã«ã䞊è¡ããŠå¹ççã«å®è¡ããããã®æé©åãé²ãããšãæåŸ ãããŸãã
- ããé«åºŠãªæ€çŽ¢ã¢ã«ãŽãªãºã ãå°å ¥ãããæ€çŽ¢ç²ŸåºŠãåäžããå¯èœæ§ããããŸãã
- ç¹å®ã®çšéã«ç¹åããæ°ããããŒã«ãè¿œå ãããããšã§ã掻çšç¯å²ãåºããã§ãããã
-
ããã©ãŒãã³ã¹ã®åäž
- å¿çé 延ïŒã¬ã€ãã³ã·ïŒã®ãããªãäœæžãæåŸ ãããŸãã
- 倧éã®ãã©ãã£ãã¯ãå¹ççã«åŠçããããã®ã¹ã±ãŒãªã³ã°æ©èœã匷åãããã§ãããã
- éå»ã®åŠççµæããã£ãã·ã¥ããä»çµã¿ãæé©åãããåŠçé床ãåäžããå¯èœæ§ããããŸãã
-
éçºè äœéšã®åäž
- ããçŽæçã§äœ¿ãããã API ãæäŸãããããšãæåŸ ãããŸãã
- è±å¯ãªãµã³ãã«ã³ãŒããå®è·µçãªã¬ã€ããæŽåãããããšã§ãéçºã®æ·å± ãäžããã§ãããã
- ããã¥ã¡ã³ãããã¥ãŒããªã¢ã«ãããã«å å®ããåŠç¿ã³ã¹ããäœæžãããããšãæåŸ ãããŸãã
å®è£ ã«ããããã¹ããã©ã¯ãã£ã¹
-
段éçãªå°å ¥
- ãŸãã¯å°èŠæš¡ãªãããžã§ã¯ãããå§ããéçšããŠããŠãèç©ããŠããããšãæšå¥šãããŸãã
- æ°æ©èœã®è¿œå ã¯æ®µéçã«è¡ããã·ã¹ãã ã®å®å®æ§ã確èªããªããé²ããŸãããã
- å®éã®ãŠãŒã¶ãŒããã®ãã£ãŒãããã¯ãç©æ¥µçã«åãå ¥ããç¶ç¶çã«æ¹åãå³ãããšãéèŠã§ãã
-
ç¶ç¶çãªã¢ãã¿ãªã³ã°
- ã·ã¹ãã ã®äœ¿çšç¶æ³ãããã©ãŒãã³ã¹ãå®æçã«ç£èŠããåé¡ç¹ãæ©æã«çºèŠã§ããããã«ããŸãããã
- äž»èŠãªææšã远跡ããæ¹åãå¿ èŠãªç®æãç¹å®ããããšã倧åã§ãã
- ãŠãŒã¶ãŒããã®æèŠãèŠæãåæãããµãŒãã¹ã®å質åäžã«åœ¹ç«ãŠãŸãããã
-
ã»ãã¥ãªãã£ãžã®é æ ®
- é©åãªã¢ã¯ã»ã¹å¶åŸ¡ãèšå®ããæ©å¯æ§ã®é«ãæ å ±ãä¿è·ããããã®å¯Ÿçã培åºããŸãããã
- ããŒã¿ã®ä¿è·ã«é¢ããæ確ãªæ¹éãå®ããé¢é£æ³èŠå¶ãã³ã³ãã©ã€ã¢ã³ã¹èŠä»¶ãéµå®ããŸãããã
- éçšç£èŠããŒã ãšé£æºããäžæ£ã¢ã¯ã»ã¹ãã»ãã¥ãªãã£äžã®è匱æ§ã«å¯ŸããŠè¿ éã«å¯Ÿå¿ã§ããäœå¶ãæ§ç¯ããŸãããã
9. åèãªã³ã¯
å ¬åŒããã¥ã¡ã³ã:
ããã°èšäºãªã©:
è£è¶³1ïŒAzure AI Agent Service ã®ã¯ã©ãŒã¿ãšå¶é
Azure AI Agent Service ãå®éã«éçšããããã§æŒãããŠããããã®ããã¯ã©ãŒã¿ïŒå©çšæ ïŒããã¡ã€ã«ã»ããŒã¯ã³ã®äžéã§ãã以äžã®è¡šã«ãäž»èŠãªã¯ã©ãŒã¿ãå¶éå€ããŸãšããŠã¿ãŸããïŒ2024幎12æ24æ¥æç¹ã®æ å ±ïŒã
Limit Name | Limit Value |
---|---|
Max files per agent/thread | - 10,000ïŒAPI ãŸã㯠Azure AI Foundry ããŒã¿ã«çµç±ïŒ - 20ïŒAzure OpenAI Studio çµç±ïŒ |
Max file size for agents & fine-tuning | 512 MB |
Max size for all uploaded files for agents | 100 GB |
agents token limit | 2,000,000 tokens |
泚æç¹
-
Max files per agent/thread
- ãšãŒãžã§ã³ããã¹ã¬ããã«çŽã¥ãããããã¡ã€ã«ã®æ°ã«å¶éããããŸãã
- Azure AI Agent Service ã®APIã Azure AI FoundryããŒã¿ã«ããæäœããå Žåã¯æ倧10,000件ãAzure OpenAI Studioçµç±ã§ã¯æ倧20件ãŸã§ãšãªããŸãã
-
ãã¡ã€ã«ãµã€ãºãç·å®¹éã®äžé
- 1ãã¡ã€ã«ãããæ倧512MBãŸã§ã¢ããããŒããå¯èœã§ãã
- åèšã§100GBãŸã§ãã¡ã€ã«ãã¢ããããŒãã§ããŸããRAG圢åŒã§å€§éã®ããã¥ã¡ã³ããæ±ãå Žåã¯ããã®äžéã«æ³šæããŸãããã
-
ããŒã¯ã³äžé
- agents token limit ã2,000,000ããŒã¯ã³ãšãªã£ãŠããŸãã
- 倧éã®ã¹ã¬ãããæ·±ãäŒè©±å±¥æŽãä¿æããå Žåã¯ãè¶ éããªãããã¢ãã¿ãªã³ã°ãå¿ èŠã§ãã
Azure OpenAI models ã®ã¯ã©ãŒã¿ãšå¶é
ãããŠïœ€ããã«Azure AI Agent Service ã§å©çšã§ãã Azure OpenAI models ã«é¢ããŠã¯ãäžèšã®ããã¥ã¡ã³ããåç §ããŠãã ããã
ã¢ãã«ããªãœãŒã¹ã®éžæã«å¿ããŠãæšè«åæ°ãã¬ã€ãã³ã·ãªã©ã®å¶éãç°ãªãå ŽåããããŸãã®ã§ãå®è£ åã«äžåºŠç¢ºèªããŠããããšãããããããŸãã
ãããã®ã¯ã©ãŒã¿ãå¶éãææ¡ããŠãããšããšãŒãžã§ã³ãèšèšæãã¹ã±ãŒã©ããªãã£ãèæ ®ããéã«åœ¹ç«ã¡ãŸãã倧èŠæš¡ãªãã¡ã€ã«ãæ±ãã·ããªãªãé·æçãªã¹ã¬ãã管çãå¿ èŠãªã±ãŒã¹ã§ã¯ãã¹ãã¬ãŒãžå®¹éãããŒã¯ã³äžéãå®æçã«ã¢ãã¿ãªã³ã°ããªããéçšããŸãããã
è£è¶³2ïŒAzure AI Agent Service ã«ãããããŒã¿ç®¡çã»ãã©ã€ãã·ãŒã»ã»ãã¥ãªãã£ïŒç°¡æçïŒ
以äžã®å³ã¯ãAzure AI Agent Service ã ã©ã®ããã«ããŒã¿ãæ±ãã ãç°¡æœã«ç€ºãããã®ã§ãããšãŒãžã§ã³ãïŒAgentsïŒãšæšè«ïŒInferenceïŒã«é¢ããäž»èŠãªã³ã³ããŒãã³ãããããŒã確èªã§ããŸãã
-
ãšãŒãžã§ã³ãåŽ
- Assistants, Threads, Messages APIs: äŒè©±ã»ãã·ã§ã³ãã¡ãã»ãŒãžã管çãã APIã
- Vector Store APIs: ãã¯ã¿ãŒã¹ãã¢ïŒãã¡ã€ã«æ€çŽ¢çã§äœ¿çšïŒãæ±ã APIã
- Run APIs: ãšãŒãžã§ã³ãã®å®è¡ïŒã©ã³ïŒãæäœããããã® APIã
-
Azure AI Agent Service (Preview)
- ãšãŒãžã§ã³ãã®ã³ã¢éšåããã¡ã€ã«æ€çŽ¢ãã³ãŒãå®è¡ãå€éšããŒã«åŒã³åºããªã©ããµãŒããŒãµã€ãã§ç®¡çã
- State storage: ã¹ã¬ãããã¡ãã»ãŒãžå±¥æŽãªã©ã®ã¹ããŒããã«ãªããŒã¿ãä¿æãäºéæå·åã BYO Storage ãèšå®å¯èœã
- Storage: ãã¡ã€ã«ã¢ããããŒããæ±ãé åããã¡ãããªãœãŒã¹ããšã«æå·åããäžèŠã«ãªã£ããåé€ã§ããã
- Code Interpreter: ãµã³ãããã¯ã¹ç°å¢ã§ã³ãŒããå®è¡ããã¡ã€ã«ãããŠã³ããŒãã»è§£æããŠçµæãã¡ãã»ãŒãžã«è¿ãã
- External Tools: Bing æ€çŽ¢ãAzure FunctionsãOpenAPI 3.0 ããŒã«ãªã©ãå€éšãµãŒãã¹ãéããŠè¿œå æ©èœãå®çŸã
-
Inference (æšè«) åŽ
- Azure OpenAI Service Inferencing: Azure OpenAI ã®ã¢ãã«æšè«ãšã³ããã€ã³ããåŒã³åºãã
- Model-as-a-Service Inferencing: Meta Llama ãªã©ããµããŒããããã¢ãã«ã®æšè«ãã¯ã©ãŠãçµç±ã§å®è¡ã
ããŒã¿ã®åãæ±ãïŒãã€ã³ããŸãšã
- ããã³ãããšçæç©: ãŠãŒã¶ãŒãå ¥åããå 容ãã¢ãã«ãçæããå¿çã¯ãä»ã®ãŠãŒã¶ãŒãå€éšã®ã¢ãã«ãããã€ããŒïŒOpenAIãMeta ãªã©ïŒã«å ±æãããããšã¯ãªããåŠç¿çŽ æãšããŠã䜿çšãããŸããã
- ã¢ããããŒãããŒã¿: ãã¡ã€ã«æ€çŽ¢ãã³ãŒãã€ã³ã¿ãŒããªã¿çšã«ã¢ããããŒããããããŒã¿ã¯ãæå®ããã¹ãã¬ãŒãžã«äºéæå·åïŒAES-256 ãªã©ïŒãããããBYOïŒBring Your OwnïŒã¹ãã¬ãŒãžã§ä¿ç®¡ã
- å€éšããŒã«: Bing Search ã Azure Functions ãªã©ãå©çšããéã«ã¯ãããããã®ãµãŒãã¹åºæã®å©çšèŠçŽã»ããŒã¿åŠçã«ãŒã«ãé©çšãããããèŠç¢ºèªã
- ã¹ããŒããã«ãšã³ãã£ãã£ïŒThreads, Messages, RunsïŒ: äŒè©±å±¥æŽãã©ã³æ å ±ããµãŒããŒãµã€ãã§ä¿æããã³ã³ããã¹ããç¶æããŠãŒã¶ãŒã¯ãã€ã§ãåé€å¯èœã
- ãªãŒãžã§ã³/æå·å: Azure OpenAI ãªãœãŒã¹ãšåããªãŒãžã§ã³ïŒå°ççå ŽæïŒã§ããŒã¿ãä¿åã顧客管çããŒã䜿ã£ãæå·åãïŒäžéšãã¬ãã¥ãŒé€ãïŒéžæå¯èœã
ãã®ããã«ãAzure AI Agent Service ã¯ãšã³ã¿ãŒãã©ã€ãºçšéã«å¯Ÿå¿ããå®å šèšèšãæœãããŠããŸããå¿ èŠã«å¿ããŠã³ã³ãã³ããã£ã«ã¿ãè©äŸ¡æ©èœãçµã¿åãããªãããèªç€Ÿã®ã»ãã¥ãªãã£ããªã·ãŒãã³ã³ãã©ã€ã¢ã³ã¹èŠä»¶ã«åãããŠéçšãæ€èšããŠãã ããã
詳现&å³ã®åŒçšå :
ãããã«
Azure AI Agent Service ã¯ã倧èŠæš¡èšèªã¢ãã«ãããã«æŽ»çšãããããã次äžä»£ã®ãã©ãããã©ãŒã ãšãããŸããäŒè©±ã®ç¶æ 管çããå€éšããŒã«ã®åŒã³åºãããã¡ã€ã«æ€çŽ¢ãŸã§ãã¹ãŠããµãŒããŒãµã€ãã§äžè²«ããŠåŠçããŠããããããéçºè ã®è² æ ã倧ãã軜æžã§ããã®ãé åã§ãã
ããã«ãã³ã³ãã³ããã£ã«ã¿ãè©äŸ¡æ©èœãªã©ãçµã¿åãããããšã§ãå®å šæ§ãã³ã³ãã©ã€ã¢ã³ã¹ã«ã察å¿ãããããªããŸããçŸæç¹ã§ã¯ãŸã ãŸã ãã¬ãã¥ãŒã®æ©èœãå«ãŸããŠããŸãããIgnite 2024 ã§ã®çºè¡šã®ãšãããä»åŸã®å ¬çãã¬ãã¥ãŒæ¡å€§ãæ©èœè¿œå ã倧ãã«æåŸ ã§ããŸããããšãã°ãè€æ°ã® LLM ãèªåçã«éžæã»åãæ¿ããããã«ããšã³ãžã³æšè«ããAutoGen ãšã®äžå±€ã®çµ±åãªã©ãMicrosoft ããç¶ã ãšæ°ããã¢ããããŒããå°æ¥ããã§ãããã
ãã² Azure AI Agent Service ã䜿ã£ãŠãé©æ°ç㪠AI ã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãã£ã¬ã³ãžããŠã¿ãŠãã ãããã¿ãªããã®ãã£ãŒãããã¯ãã¢ã€ãã¢ããåŸ ã¡ããŠããŸãïŒ
ãŸããAzure AI ããšãŒãžã§ã³ãæè¡ã®ç解ãæ·±ãŸãããã以äžã®èšäºãåèã«ãªãããšæããŸãããã²åãããŠã芧ãã ããã
ãŸãAzure AI Model Inference APIã«ã€ããŠã®è§£èª¬èšäºã§ã
以äžã®2ã€ã¯ïœ€MicrosoftãOSSãšããŠåºããŠããMagentic-OneãšTinyTroupeãšãããã«ããšãŒãžã§ã³ããã¬ãŒã ã¯ãŒã¯ã«ã€ããŠã®èšäºãšãªããŸã
é·ããªããŸããããããã§æ¬èšäºã¯ã²ãšãŸãçµäºã§ããïŒå¹Žå
ã®æŽæ°ãããããã£ãŠå€åçµãããšãªããŸããïŒ
æ¥å¹Ž2025幎ãåŒãç¶ããæè¡æ€èšŒèšäºãææ°æ
å ±ããå±ãã§ããããåªããŠãããŸãã®ã§ãã©ãããããããé¡ãããããŸãð¥º
ãå 責äºé ã
æ¬èšäºã¯ 2024 幎 12 æ 24 æ¥æç¹ã§ã®æ å ±ãããšã«äœæããŠããŸããAI æè¡ã¯æ¥éã«é²åãã補åä»æ§ãäŸ¡æ Œãå¯çšæ§ã¯äºåãªãå€æŽãããå ŽåããããŸããããã§çŽ¹ä»ããå 容ã¯ãããŸã§äžè¬çãªåèæ å ±ã§ãããå°éçãªã¢ããã€ã¹ã代æ¿ãããã®ã§ã¯ãããŸããããå©çšã®éã¯ãææ°æ å ±ã®ç¢ºèªãååãªãã¹ããè¡ããèªå·±è²¬ä»»ã§éçšããé¡ãããããŸãããŸãããµã³ãã«ã³ãŒãã®åäœç°å¢ãããŒãžã§ã³ã¯ä»åŸã®ã¢ããããŒãã§ç°ãªãå¯èœæ§ããããŸãã®ã§ãããããããäºæ¿ãã ããã
Discussion