- TOP
- ã¿ã°äžèЧ
- Kibana
Kibana
ã€ãã³ã
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã
ãã¬ãžã³
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã
æè¡ããã°
èŠçŽ ïŒElastic Agent Builder 9.5ïŒElastic Stack 9.5.4 / 9.5.5ïŒã§ãAI ãšãŒãžã§ã³ãã®å®å
šå¯Ÿçããå®éã«ç°å¢ãäœã£ãŠè©ŠããŸãããããŒã«ãçµãèšå®ãããŒã«ã®æš©éïŒDLS / FLSïŒãå®è¡åã®äººã®æ¿èªã¯ã補åã®æ©èœã§å®çŸã§ããŸãããäžæ¹ã§ãTraceïŒãšãŒãžã§ã³ãã®å®è¡ã®èšé²ïŒã«ããŒã«ã®è©³çްãèšé²ããèšå®ã ON ã«ãããšã顧客ããŒã¿ãèŠãæš©éã®ç¡ã人ã«ããTrace ãã顧客ããŒã¿ãèŠããŸãããæ¬æãèšå®ãã¯ãšãªãç»é¢ãžã®ãã©ãæ¹ã¯ GitHub ã«ãŸãšããŠããŸãã â¶ èšäºãèªãïŒGitHubïŒïŒ https://github.com/SIOS-Technology-Inc/elastic-blogs/tree/main/2026-10-agent-builder-security AI ãšãŒãžã§ã³ãã¯ãããŒã«ã䜿ã£ãŠå®éã«æäœãããŸãããã®ãããåŸæ¥ã® LLM 察çã ãã§ã¯è¶³ããŸãããååã®èšäºã AIãšãŒãžã§ã³ãã¯ãªãå±éºã«ãªãïŒä»çµã¿ããèããã»ãã¥ãªãã£ã®4åå ãã§ã¯ããã®ããã® 4 ã€ã®ååã玹ä»ããŸãããåŸåã®ãã®èšäºã§ã¯ã4 ã€ã®ååã Elastic Agent Builder 9.5 ã§å®éã«è©ŠããŸããã æ€èšŒã®æ¡ä»¶ 補åïŒElastic Stack 9.5.4 / 9.5.5ïŒã»ã«ããããŒãžããDockerïŒãTrial ã©ã€ã»ã³ã¹ æ€èšŒæéïŒ2026 幎 10 æ 5 æ¥ã8 æ¥ ã¢ãã«ïŒäž»ã« Elastic Inference ServiceïŒEISïŒã Cloud Connect çµç±ã§å©çš ã·ããªãªïŒç€Ÿå
ããã¥ã¢ã«ãæ€çŽ¢ããŠçãããšãŒãžã§ã³ããäœããããã¥ã¢ã«ã® 1 ä»¶ã«ã顧客æ
å ±ãå€ãžéãããšããæç€ºãä»èŸŒã¿ãŸãã ããŒã¿ïŒãã¹ãŠæ¶ç©ºã®ããŒã¿ã§ããã¡ãŒã«ã¯æ¬ç©ãéãããå°çšã® Index ãžã®æžã蟌ã¿ããéä¿¡ããšããŸãã åãã£ãããš ããŒã«ãçµã ïŒæ°ãããšãŒãžã§ã³ãã§ã¯ãElastic capabilities ã OFF ã§ããTools ã¿ãã«ããŒã«ãéžã°ããŠããããšããããŸããã䜿ããªãããŒã«ã¯ãæã§å€ãå¿
èŠããããŸãã æš©éã§å®ã ïŒä»åã® ES|QL ããŒã«ã§ã¯ã䜿ã人㮠Elasticsearch ã®æš©éïŒIndexã»DLSã»FLSïŒãããšãŒãžã§ã³ãçµç±ã§ããã®ãŸãŸå¹ããŸãããå®ã£ãŠããã®ã¯ LLM ã§ã¯ãªã Elasticsearch ã§ãããã ããFLS ã§é ããé
ç®ã ES|QL ã® KEEP ã§åæããããšãããŒã«å
šäœããšã©ãŒã«ãªããŸããã äººãæ¿èªãã ïŒ9.5.5 ã§ã¯ãããŒã«ã®ãRequire user confirmationãã Always ã«ãããšã人ã Allow ãæŒãããšãã ãéä¿¡ã®ããŒã«ãåããŸããã9.5.4 ã§ã¯ãWorkflow ã®æ¿èªã¹ãããã§æ¢ããããŸããããã ããTools API ããçŽæ¥ããŒã«ãå®è¡ãããšãAgent Builder ã®ç¢ºèªç»é¢ã¯åºãŸããïŒå
¬åŒããã¥ã¡ã³ãããïŒã èšé²ãšæ€ç¥ ïŒTrace ã®åæèšå®ã§ã¯ãèªåã§äœã£ãããŒã«ããšãŒãžã§ã³ãã®ååããcustomããšèšé²ãããŸãããTrace ãèŠåŒµã ES|QL ã®ã¢ã©ãŒãã«ãŒã«ã§ãéä¿¡ã® Workflow ã®èµ·åãçŽ 28 ç§ã§æ€ç¥ã§ããŸããããã ããWorkflow ã®æ¿èªç»é¢ã§ Decline ããæäœã§ãã¢ã©ãŒãã¯é³ŽããŸãããä»åã®èšå®ã§ã¯ã誰ã䜿ã£ãããæ¬åœã«éä¿¡ãããã¯ãTrace ã ãã§ã¯åãããŸããã§ããã èšé²ãšæš©éãã¶ã€ãã ïŒTrace ã«ããŒã«ã®è©³çްãèšé²ãããšã顧客 Index ãèªããªããŠãŒã¶ãŒã§ããTrace ãèªããã°é¡§å®¢ããŒã¿ãèªããŸãããFLS ã§ããŒã«ã®çµæã®é
ç®ã¯é ããŸããããåã顧客ããŒã¿ã chat span ã®å
¥åã¡ãã»ãŒãžïŒgen_ai.input.messagesïŒã«ãå
¥ã£ãŠããŠãããããã¯èªããŸããã ã¢ãã« ïŒåããšãŒãžã§ã³ãã»åãæç€ºæã§ããã¢ãã«ã«ãã£ãŠåå¿ãéããŸããã1 åã®è³ªåã§ããéžãã ã¢ãã«ä»¥å€ãåŒã°ããŠããŸãããã¢ãã«ãæã£ãŠãããããšã ãã«ã¯é ŒããŸããã ãã®èšäºã§åããããšïŒèšå®ã®å Žæãšç¢ºããæ¹ïŒ èšäºã§ã¯ãæ€èšŒã®çµæã ãã§ãªããAgent Builder ã®å®å
šå¯Ÿçããã©ãã§èšå®ããã©ã確ãããããããç»é¢ãžã®ãã©ãæ¹ãšäžç·ã«èŒããŠããŸããç»é¢ã®ååãå Žæã¯ãElastic Stack 9.5.4 / 9.5.5 ã§ç¢ºããããã®ã§ãã Elastic Agent Builder ã§ããšãŒãžã§ã³ãã䜿ããããŒã«ãçµãã«ã¯ïŒ ãšãŒãžã§ã³ãã®èšå®ã® Tools ã¿ãã§ã䜿ããªãããŒã«ãå€ããŸããããŒã«ã¯ãAgent Builder â Manage components â Tools ã§äœããŸãïŒ2 ç« ïŒã ãšãŒãžã§ã³ãã䜿ããäººãæ±ºããã«ã¯ïŒ ãšãŒãžã§ã³ãã®èšå®ã® Access control ã§ãPublic / Shared / Private ããéžã³ãŸããä»åã®ç°å¢ã§ã¯ãæ°ãããšãŒãžã§ã³ãã®åæå€ã¯ Public ã§ããïŒ2 ç« ïŒã â» Access control ã¯ãšãŒãžã§ã³ãã®å
¬éç¯å²ãå¶åŸ¡ããèšå®ã§ãããAgent Builder èªäœã®å©çšæš©é㯠Kibana ã®ããŒã«ã§ã管çãããŸãã ææžããšã»é
ç®ããšã«ããŒã¿ãé ãã«ã¯ïŒDLS / FLSïŒïŒ Stack Management â Security â Roles ã§ããŒã«ãéããIndex privileges ã®è¡ã§èšå®ããŸããDLS ã¯ãGrant read privileges to specific documentsããFLS ã¯ãGrant access to specific fieldsãã§ãïŒ3 ç« ïŒã éä¿¡ã®åã«äººãæ¿èªããããã«ããã«ã¯ïŒ 9.5.5 ã§ã¯ãããŒã«ã®äœæç»é¢ã§ãRequire user confirmationãã Always ã«ããŸãã9.5.4 ã§ã¯ãWorkflow ã«æ¿èªã¹ãããïŒwaitForApprovalïŒãå
¥ããæ¿èªããããšãã ãéä¿¡ã®ã¹ããããåããæ¡ä»¶ïŒifïŒãä»ããŸãïŒ4 ç« ïŒã ãšãŒãžã§ã³ãã®å®è¡ã®èšé²ïŒTraceïŒãèšå®ããã«ã¯ïŒ Stack Management â AI â GenAI Settings â Agent Builder Traces ã§èšå®ããŸããAdvanced privacy settings ã§ãèšé²ããå
容ïŒããŒã«ã®è©³çŽ°ãæ¬åœã®ååãªã© 7 ã€ïŒãéžã¹ãŸããåæå€ã¯ãã¹ãŠ OFF ã§ãïŒ5 ç« ã7 ç« ïŒã å±éºãªæäœã§ã¢ã©ãŒããåºãã«ã¯ïŒ Stack Management â Alerts and Insights â Rules â Create rule â Elasticsearch query ã§ãTrace ã ES|QL ã§èŠåŒµãã«ãŒã«ãäœããŸãïŒ6 ç« ïŒã ã©ã®ã¢ãã«ã䜿ããããã確ãããã«ã¯ïŒ Trace ã® chat span ã«èšé²ãããã¢ãã« ID ã§ç¢ºãããŸããæ©èœããšã®ã¢ãã«ã®å²ãåœãŠã¯ãStack Management â Model Management â Feature settings ã§èŠãããŸãïŒ8 ç« ïŒã èšå®ãå¹ããŠãããã確ãããã«ã¯ïŒ å¶éãããŠãŒã¶ãŒã§ãDiscover ã® ES|QL ããElasticsearch ã® _search ã§å®éã«æ€çŽ¢ããŸããä»åã¯ãES|QL ã§ null ãšè¡šç€ºãããé
ç®ãã_search ã§ã¯èªããŸããïŒ7 ç« ïŒã ãããªæ¹ã«ãããã Elastic Agent Builder ã®å°å
¥ãèããŠããæ¹ AI ãšãŒãžã§ã³ãã®æš©éãæ¿èªãèšé²ã®ããã¿ã決ããæ¹ Elasticsearch ã® DLS / FLS ããã§ã«äœ¿ã£ãŠããæ¹ æ€èšŒã®çµæããããŸãèšå®ã®å Žæãšç¢ºããæ¹ãç¥ãããæ¹ é¢é£èšäº ååïŒ AIãšãŒãžã§ã³ãã¯ãªãå±éºã«ãªãïŒä»çµã¿ããèããã»ãã¥ãªãã£ã®4åå Trace ã®éãæ¹ãšèªã¿æ¹ïŒ AI ãšãŒãžã§ã³ãã®ãäžã§äœãèµ·ãããããèŠããåãã åèïŒå
¬åŒããã¥ã¡ã³ãïŒ Permissions and access control in Elastic Agent Builder ToolsïŒElastic Agent BuilderïŒ Collect tracesïŒElastic Agent BuilderïŒ Role management using Kibana â» 2026 幎 10 ææç¹ã§ãäžã®ç°å¢ãšä»åã®ã·ããªãªã§è©Šããçµæã§ããããŒãžã§ã³ãèšå®ã«ãã£ãŠãåãã¯å€ããããšããããŸãã The post Elastic Agent Builder 9.5 ã§ AI ãšãŒãžã§ã³ãã®å®å
šå¯Ÿçã詊ããïŒã§ããããšãã§ããªãã£ãããš first appeared on Elastic Portal .
ç®æ¬¡ TL;DR ã¯ããã« Kibana v9.5.x ã§ã®è¡šç€º ç§»è¡å¯Ÿç 1. Elastic ãçšæããŠããã¢ãã«ãå©çšããå Žå 2. èªäœã® OpenAI äºæ Connector ïŒLM Studio çïŒãå©çšããå Žå ãŸãšããšä»åŸã®å±æ TL;DR Kibana v9.5.0 以éãåŸæ¥ã® AI Connector ãéæšå¥šïŒdeprecatedïŒãšãªããŸããã ä»åŸã¯ Kibana / Elasticsearch ã® Inference Service ããã³ Inference EndpointïŒ_inference APIïŒãžã®ç§»è¡ãæšå¥šãããŸãã æ¬èšäºã§ã¯ãv9.5.x ã«ããã衚瀺ã®å€åãšãOpenAI äºæïŒLM StudioçïŒãå«ãç§»è¡ã»èšå®æé ã解説ããŸãã ã¯ããã« v9.4.x ãŸã§ã¯ã Kibana äžã§ AI æ©èœã«æ¥ç¶ããããã®èšå®ãšã㊠AI Connector ã䜿çšãããŠããŸããã ããããv9.5.0 ãã AI Connector 㯠deprecated ïŒéæšå¥šïŒãšãªã£ãŠããŸãã æ¢åã® AI Connector ãå©çšäžã®æ¹ããä»åŸããŒã«ã« LLM çã«æ¥ç¶ãããæ¹åãã«ãæšå¥šãããä»£æ¿æ©èœ (Inference Endpoint) ãžã®ç§»è¡æé ã説æããŸãã Kibana v9.5.x ã§ã®è¡šç€º Kibana v9.5.5 ã§ç¢ºèªãããšãããStack Management > Connectors ç»é¢ã«ãããŠã æ¢åã® AI Connector ïŒç¬èªã«è¿œå ãã OpenAI äºæã®ããŒã«ã« LLM çš Connector ãå«ãïŒã«ãDEPRECATED ãããžã衚瀺ãããŸãã â»çŸæç¹ (v9.5.x) ã§ã¯éæšå¥šè¡šç€ºããããã®ã¿ã§æ©èœèªäœã¯å©çšå¯èœã§ãããå°æ¥ã®ããŒãžã§ã³ã§å»æ¢ãããå¯èœæ§ããããããæ©ãã®ç§»è¡ãããããããŸãã â»Stack Management > Connectors ç»é¢ã®äŸ ç§»è¡å¯Ÿç 1. Elastic ãçšæããŠããã¢ãã«ãå©çšããå Žå Elastic ãå
¬åŒã«æäŸããŠããã¢ãã«ãå©çšããå Žåã«ã¯ãInference Service ãå©çšããŸãã 確èªç»é¢ : Stack Management > Elastic Inference äžèЧããå©çšå¯èœãªã¢ãã«ã確èªã§ããŸãã Stack Management > Elastic Inference ç»é¢ã®æç² â»æ³šæ : ç»é¢äžã« Deprecated ã End of life ãšè¡šç€ºãããŠããé
ç®ãããå Žåããã㯠Connector ã®æ©èœã§ã¯ãªããã¢ãã«èªäœãå€ããªã£ãŠããããšã瀺ããŠããŸãã 2. èªäœã® OpenAI äºæ Connector ïŒLM Studio çïŒãå©çšããå Žå èªåã§äœæãã OpenAI äºæã® Connector ïŒLM Studio ã Ollama ãªã©ïŒã«ã€ããŠã¯ãInference Endpoint ãäœæããŠç§»è¡ããŸãã â»Elastic Inference Service ãå©çšããã«ãå€éšã® LLM çšã® API ãå©çšããå Žåãåæ§ã§ãã èšå®äŸïŒ ã³ã³ããäžã® Elasticsearch ãããã¹ãäžã® LM Studio ã§åäœãã google/gemma-4-e4b ã«æ¥ç¶ããå Žå Kibana ã® Dev Tools Console ãã以äžã® API ãªã¯ãšã¹ããçºè¡ããŸãã PUT _inference/chat_completion/lmstudio_google_gemma_4_e4b { "service": "openai", "service_settings": { "api_key": "<YOUR_LM_STUDIO_API_KEY>", "model_id": "google/gemma-4-e4b", "url": "http://host.docker.internal:11434/v1/chat/completions" }, "task_settings": { "headers": { "content-type": "application/json" } } } åèURL: https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-inference-put-openai Inference Endpoint ã远å ãããšãStack Management > External Inference ç»é¢ã«ã远å ããã Endpoint ã衚瀺ãããŸãã Stack Management > Feature settings ç»é¢ã® Global model ã®éžæè¢ã«ã远å ããã Inference Endpoint ã衚瀺ãããããã«ãªããŸãã ãŸãšããšä»åŸã®å±æ Kibana v9.5.0 ã«ããã AI Connector ã®éæšå¥šåã¯ãElastic Stack ã«ããã AI æ¥ç¶åºç€ã _inference API ãžãšäžå
åã»é²åããŠããããšã瀺ããŠããŸãã åŸæ¥åå¥ã«ç®¡çãããŠãã AI æ¥ç¶ãæŽçãããããšã§ãå
¬åŒãµãŒãã¹ïŒInference ServiceïŒãšããŒã«ã«LLMçã®å€éšç°å¢ïŒInference EndpointïŒã®ç®¡çãããæç¢ºãã€ã·ã³ãã«ã«ãªããŸããã DEPRECATED ãããžã衚瀺ãããŠããç°å¢ããæã¡ã®æ¹ã¯ããã²æ¬èšäºã®æé ãåèã«ãã¹ã ãŒãºãªç§»è¡ã詊ã¿ãŠãã ããã The post Kibana ã® AI Connector éæšå¥šå (deprecated) ã«äŒŽã Inference Endpoint ãžã®ç§»è¡æé first appeared on Elastic Portal .
æå³ã§ç¢ãæ¢ããå Žæãšçœå®³çš®å¥ã§é¿é£å Žæãçµãããã®æ€çŽ¢ãæ¯ããES|QLããŒã«ãçŸåšå°ã®åãæž¡ãããã¬ãŒã¹ã§åãã£ãããšã玹ä»ããŸãã ç®æ¬¡ ã¯ããã« å
ã«çšèªã 5 ã€ã ã å
šäœã®æµã 3 ã€ã®ããŒã« 3 ã€ã«å
±éããåïŒããŒã« 3 ã§èŠãïŒïŒçŸåšå°ãç¹ã«ããŠãè·é¢ã枬ããååŸã§çµã ããŒã« 2ïŒé¿é£å ŽæïŒïŒçœå®³çš®å¥ã§å³å¯ã«çµã ããŒã« 1ïŒæå³æ€çŽ¢ïŒïŒäŒæ¿å
容ãè¿ãç¢ããåè£ããšããŠåºã ã€ãŸãããããæïŒä»»æã®ç©ºæ¬ã«ã¯æ¢å®å€ãèŠã æå³æ€çŽ¢ïŒsemanticïŒãã©ãã§ãã©ã䜿ã£ãŠããã ããŒã¿ãå
¥ããåŽïŒèª¬ææã 2 ã€ã®åœ¢ã§ä¿åãã æ€çŽ¢ããåŽïŒMATCH ã§ãæå³ãè¿ãé ãã«åè£ãåºã æå³æ€çŽ¢ããããªãããšã åè£ã¯æå³ã®ç¹æ°é ãåçã¯è·é¢é ãšãŒãžã§ã³ãã®ã«ãŒã«ïŒæç€ºæïŒ çŸåšå°ã®æ±ã èãè¿ãã®ã«ãŒã« ããŒã«ã®éžã³æ¹ çµæã®èŠãæ¹ å®å
šã«ã€ããŠã®èšãæ¹ãšããããªãããš çŸåšå°ãã©ãæž¡ããŠããã ãªã Chrome æ¡åŒµãªã®ã æµã çŸåšå°ã¯ä¿åãããã®ã 7 åã§äœãæ¶ããã®ã å°å³ã«çŸåšå°ãæãã«ã¯ PoC ã®éç æéã¯ã©ãã§äœ¿ãããŠããã éçãšãä»åŸããããš ãŸãšã åºå
žã»ããŒã¿ã®å å·¥ æè¡è³æ ã¯ãã㫠第1å ã§ã¯ãé²çœã®AIãšãŒãžã§ã³ããäŸã«ãæå³æ€çŽ¢ã§èŠã€ããç¢ã®çœå®³çš®å¥ã次ã®é¿é£å Žææ€çŽ¢ã«äœ¿ãã屿§ã®åŒãç¶ããã玹ä»ããŸãããä»åã¯ããã®ä»çµã¿ã次ã®é çªã§èŠãŠãããŸãã ãšãŒãžã§ã³ããæã£ãŠãã 3 ã€ã®ããŒã«ã¯ãäœãããŠããã®ã æå³æ€çŽ¢ãšãã®ç¹æ°ããã©ããŸã§äœ¿ãã®ã ãšãŒãžã§ã³ãã¯ãã©ããªã«ãŒã«ã§åããŠããã®ã æ€çŽ¢ã®äžå¿ã«ãªãçŸåšå°ããã©ããã£ãŠå®å
šã«æž¡ããŠããã®ã ã³ãŒãã¯æ€çŽ¢ã®æµãã远ãããã«èŒããŠããŸããæ§æãèŠãããããElasticsearchã確ãããæ¡ä»¶ãšãLLMã倿ããéšåã«æ³šç®ããŠãã ãããæ€èšŒç°å¢ã¯Elastic Cloud ServerlessïŒKibana 9.6.0ã2026幎9æç¢ºèªïŒã§ãã å
ã«çšèªã 5 ã€ã ã çšèª äžèšã§ãããš Elasticsearch 倧éã®ããŒã¿ãå
¥ããŠãéãæ€çŽ¢ããããã®ããŒã¿ããŒã¹ãå
šææ€çŽ¢ãšå°çæ€çŽ¢ãåŸæ ã€ã³ããã¯ã¹ Elasticsearch ã«ç»é²ããããŒã¿ã®ãŸãšãŸããä»åã¯äŒæ¿ç¢2,469ä»¶ãšé¿é£å Žæ115,829ä»¶ã䜿ã ãã£ãŒã«ããšå 衚ã®ãåããšããã®åã«å
¥ãããŒã¿ã®çš®é¡ãæåïŒ keyword ïŒãæç« ïŒ text ïŒãäœçœ®ïŒ geo_point ïŒãæå³ïŒ semantic_text ïŒãªã© ES|QL Elasticsearch ã®åãåããèšèªã FROM 衚 | WHERE æ¡ä»¶ | SORT 䞊ã³é ã®ããã«ã瞊æ£ïŒãã€ãïŒã§åŠçãã€ãªãã Agent Builder Kibana ã®äžã§ AI ãšãŒãžã§ã³ããäœãæ©èœããšãŒãžã§ã³ãã«ãããŒã«ããæãããæ¥æ¬èªã®è³ªåã«çãããã å
šäœã®æµã å©çšè
ã®è³ªåïŒæ¥æ¬èªïŒ â ãšãŒãžã§ã³ãïŒLLM: Anthropic Claude Sonnet 5ãElastic çµç±ïŒ ââ â äŒè©±ã«æ·»ä»ãããçŸåšå°ãèªãïŒattachments.readïŒãæéã確ããã ââ ⡠質åã«è¶³ããªããã®ïŒååŸãçœå®³çš®å¥ãªã©ïŒãããã°èãè¿ã ââ ⢠3 ã€ã®ããŒã«ããéžã³ã空æ¬ïŒåŒæ°ïŒãåããŠåŒã¶ â ES|QL ããŒã«ïŒElasticsearch ãè·é¢ã»çš®å¥ã»æå³ãèšç®ïŒ â ãšãŒãžã§ã³ã ââ â£ çµæãéžã³ã䞊ã¹ã衚ã«ãã ââ â€ æ³šææžããæ·»ããŠåçãã è·é¢ãšç»é²å€ã®ç
§åã¯Elasticsearchãè¡ããŸããLLMã¯è³ªåãè§£éããŠããŒã«ãšåŒæ°ãéžã³ãè¿ã£ã説ææãèªãã§åçãçµã¿ç«ãŠãŸããã€ãŸããLLMã«ã倿ããä»äºããããŸãã æ±ºããããš æ
åœ çç± çŸåšå°ããã®è·é¢ãååŸã®äžãå€ã ElasticsearchïŒ ST_DISTANCE ã WHERE ïŒ æå®ãã座æšãšæ¡ä»¶ã«åºã¥ããŠèšç®ãã çœå®³çš®å¥ã®äžèŽ ElasticsearchïŒ MV_CONTAINS ïŒ ç»é²æžã¿ã®çš®å¥ãšãæž¡ãããå€ãäžèŽããã確èªãã ç¢æã®æå³ã質åã«è¿ããïŒåè£åºãïŒ ElasticsearchïŒ semantic_text + MATCH ïŒ 2,469 ä»¶ããåè£ãéžã¶ã®ã¯æ€çŽ¢ãšã³ãžã³ã®ä»äº åè£ã®ãã¡è³ªåã«åããããªç¢ã次ã«äœ¿ãçœå®³çš®å¥ LLM 質åãšèª¬ææãç»é²ãããçš®å¥ãèªãã§éžã¶ã倿ãåžžã«æ£ãããšã¯éããªã 質åã®çè§£ãèãè¿ããåçæ LLM èªç¶ãªæ¥æ¬èªã®ããåã æå®ã®ãªãååŸãçœå®³çš®å¥ LLMã«æšæž¬ãããªã å¿
èŠãªå€ãç¡ããã°èãè¿ãããã ããç¢ã«è€æ°ã®ç»é²çš®å¥ãããå Žåã¯ãLLMã質åãšåãç»é²å€ãéžã¶ 3 ã€ã®ããŒã« 第1åã§ç޹ä»ãã3ã€ã®æ€çŽ¢ããŒã«ã¯ãçè
ãES|QLã§çšæããæ€çŽ¢æãå®è¡ããŸãã ?latitude ã®ããã« ? ã§å§ãŸãååã¯ãå®è¡æã«å€ãå
¥ããå ŽæïŒåŒæ°ïŒã§ããLLMã¯ããŒã«ãšåŒæ°ãéžã³ãŸãããä¿åæžã¿ã®æ€çŽ¢æã¯æžãæããŸããã çªå·ã¯ç¬¬ 1 åãšåãã§ãã çªå· ããŒã« äœãæ¢ã å¿
é ã®ç©ºæ¬ ä»»æã®ç©ºæ¬ 䞊ã³é è¿ãä»¶æ° ããŒã« 1 geoai.search_disaster_lore_by_meaning äŒæ¿å
容ã質åã«è¿ãäŒæ¿ç¢ 緯床ãçµåºŠãååŸãæ€çŽ¢æ çœå®³çš®å¥ æå³ã®è¿ãé ïŒåè£ïŒ æå€§10 ããŒã« 2 geoai.search_emergency_shelters æå®ããçœå®³ã«å¯Ÿå¿ããé¿é£å Žæ 緯床ãçµåºŠãçœå®³çš®å¥ ååŸ è¿ãé æå€§10 ããŒã« 3 geoai.search_disaster_lore äŒæ¿ç¢ 緯床ãçµåºŠ ååŸ è¿ãé æå€§10 ãã®ã»ãã«ããšãŒãžã§ã³ã㯠attachments.read ãšããããŒã«ã䜿ããŸããäŒè©±ã«æ·»ä»ãããçŸåšå°ãèªãããã®ããŒã«ã§ãAgent Builder ã«æåããå
¥ã£ãŠããŸããçè
ãæžããããŒã«ã§ã¯ãªãã®ã§ããã® 3 ã€ã«ã¯æ°ããŠããŸããã 説æã¯ãäžçªç°¡åãªããŒã« 3 ããå§ããŸãã 3 ã€ã«å
±éããåïŒããŒã« 3 ã§èŠãïŒïŒçŸåšå°ãç¹ã«ããŠãè·é¢ã枬ããååŸã§çµã ããŒã«3ïŒäŒæ¿ç¢ãè¿ãé ã«æ¢ãïŒã®ES|QLæ¬æã§ããAgent Builderã§äœ¿ãã«ã¯ããã®ã»ãã«åŒæ°ã®åãšæ¢å®å€ã®èšå®ãå¿
èŠã§ãã FROM geoai-disaster-lore-v1 ã| EVAL search_point = TO_GEOPOINT(CONCAT("POINT(", TO_STRING(?longitude), " ", TO_STRING(?latitude), ")")) ã| EVAL distance_m = ST_DISTANCE(location, search_point) ã| WHERE (?radius_km <= 0 OR distance_m <= ?radius_km * 1000) ã| EVAL distance_km = ROUND(distance_m / 1000.0, 3) ã| SORT distance_m ASC ã| EVAL monument_lat = ROUND(ST_Y(location), 5), monument_lon = ROUND(ST_X(location), 5) ã| KEEP name, address, disaster_types, disaster_name, description, distance_km, monument_lat, monument_lon ã| LIMIT 10 è¡ äœãããŠããã FROM geoai-disaster-lore-v1 äŒæ¿ç¢ã®è¡šããå§ãã EVAL search_point = TO_GEOPOINT(...) EVAL ã¯ãæ°ããåãäœããåœä»€ã空æ¬ã® ?longitude ?latitude ïŒçŸåšå°ïŒããå°å³äžã® 1 ç¹ã«å€ãã EVAL distance_m = ST_DISTANCE(...) ç¢ã®äœçœ®ïŒ location åã geo_point åïŒãšçŸåšå°ã®è·é¢ãã¡ãŒãã«ã§åºããå°çã®äžžã¿ãèããçŽç·è·é¢ WHERE (?radius_km <= 0 OR ...) ååŸã®å€ãæšãŠããååŸã®ç©ºæ¬ãçç¥ããããšãïŒ0ïŒã¯çµããªã EVAL distance_km = ROUND(...) ã¡ãŒãã«ã km ã«çŽã SORT distance_m ASC è¿ãé ã«äžŠã¹ã EVAL monument_lat = ... ç¢ã®ç·¯åºŠã»çµåºŠãè¿ããŸãããã ãããã®PoCã§ã¯æ€çŽ¢ã®äžå¿ãå©çšè
ã®çŸåšå°ã«éå®ããŠãããç¢ã®åº§æšãæ¬¡ã®æ€çŽ¢ã®äžå¿ã«ã¯äœ¿ããŸããã KEEP ... / LIMIT 10 è¿ãåãéžã³ã10 ä»¶ã«çµã ååŸãçç¥ã§ããããã«ããã®ã¯ããäžçªè¿ãç¢ã¯ïŒãã®ãããªè³ªåã®ããã§ããäžçªè¿ããã®ãçããã®ã«ãååŸã¯èŠããŸããã Agent Builderã®ããŒã«äœæç»é¢ ããŒã« 2ïŒé¿é£å ŽæïŒïŒçœå®³çš®å¥ã§å³å¯ã«çµã è·é¢ãèšç®ããæµãã«ãçœå®³çš®å¥ã®äžèŽæ¡ä»¶ãå ããŸããæ¬¡ã¯ããŒã«2ã®æ¡ä»¶éšåã§ãã | WHERE MV_CONTAINS(disaster_types, ?disaster_type) AND (?radius_km <= 0 OR distance_m <= ?radius_km * 1000) é¿é£å Žæã®ããŒã¿ã«ã¯ã1 æœèšã«ãå
æ°Žæ°Ÿæ¿«ãåç çœå®³ã措氎ãã®ããã«è€æ°ã®çœå®³çš®å¥ãä»ããŠããŸããElasticsearch ã§ã¯ 1 ã€ã®åã«è€æ°ã®å€ãå
¥ããããããã ãã«ãããªã¥ãŒ ãšåŒã³ãŸãã MV_CONTAINS ã¯ããã®åã«ããã®å€ãšãŸã£ããåããã®ãå
¥ã£ãŠãããããèŠã颿°ã§ãã çœå®³çš®å¥ã®åŒæ°ã¯å¿
é ã§ããé¿é£å Žæã ããæ±ãã質åã§ãã©ã®çœå®³ã«å¯Ÿå¿ããå Žæãåãããªããã°èãè¿ããŸãã第1åã®é£éæ€çŽ¢ã§ã¯ãå
ã«èŠã€ããç¢ã«ç»é²ãããçœå®³çš®å¥ããã質åã«åãå€ãLLMãéžãã§æž¡ããŸãããæ¡ä»¶ãäžèŽãããã®å€å®ã¯Elasticsearchãè¡ããŸãã Agent Builderã®ããŒã«äœæç»é¢ ããŒã« 1ïŒæå³æ€çŽ¢ïŒïŒäŒæ¿å
容ãè¿ãç¢ããåè£ããšããŠåºã FROM geoai-disaster-lore-v1 METADATA _score ã| WHERE MATCH(description_semantic, ?query) AND (?disaster_type IS NULL OR ?disaster_type == "" OR MV_CONTAINS(disaster_types, ?disaster_type)) ã| EVAL search_point = TO_GEOPOINT(CONCAT("POINT(", TO_STRING(?longitude), " ", TO_STRING(?latitude), ")")) ã| EVAL distance_m = ST_DISTANCE(location, search_point) ã| WHERE distance_m <= ?radius_km * 1000 ã| EVAL distance_km = ROUND(distance_m / 1000.0, 3) ã| EVAL relevance = ROUND(_score, 3) ã| SORT _score DESC ã| EVAL monument_lat = ROUND(ST_Y(location), 5), monument_lon = ROUND(ST_X(location), 5) ã| KEEP name, address, disaster_types, disaster_name, description, distance_km, monument_lat, monument_lon, relevance ã| LIMIT 10 ããŒã«1ã®ES|QLæ¬æã§ããAgent Builderã®åŒæ°èšå®ã¯å¥ã«å¿
èŠã§ããããŒã«3ãšã®äž»ãªéãã¯æ¬¡ã®4ãæã§ãã METADATA _score ïŒæ€çŽ¢ã®ãç¹æ°ããåãšããŠäœ¿ããããã«ããã _score ã¯ãã©ããããäžèŽãããããè¡šãæ°åã§ãã WHERE MATCH(description_semantic, ?query) ïŒãããæå³æ€çŽ¢ã§ãã ?query ã«ã¯å©çšè
ã®èšèããªãã¹ããã®ãŸãŸå
¥ããŸãã AND (?disaster_type IS NULL OR ?disaster_type == "" OR ...) ïŒçœå®³çš®å¥ãæå®ãããšãã ãããã®ç»é²å€ã§çµããŸããçç¥æã¯çœå®³çš®å¥ã§çµããŸããã SORT _score DESC ïŒæå³ãè¿ãé ã«ãæå€§ 10 ä»¶ã® åè£ ãè¿ããŸãã ãã®ããŒã«ã§0è¡ã ã£ãå Žåã§ãããå°åå
ã«è©²åœããç¢ãç»é²ãããŠããªãããšã¯æå®ã§ããŸãããæå³æ€çŽ¢ã䜿ãããçœå®³çš®å¥ãšè·é¢ã ãã§æ°ããçµæãšã¯åºå¥ããŸãããã®éãã¯ç¬¬1åã®5-6ã§æ±ããŸããã ãŸãã è·é¢é ã«äžŠã¹ãã®ã¯ãæå³æ€çŽ¢ã§éžã°ããæå€§10ä»¶ã®äžã ã ã§ããååŸå
ã®å
šç¢ããã質åã«åããã®ãè·é¢é ã§10ä»¶ãæ¢ãåŠçã§ã¯ãããŸãããåè£ããæŒããç¢ã¯ãLLMãè©äŸ¡ã§ããŸããã ã€ãŸãããããæïŒä»»æã®ç©ºæ¬ã«ã¯æ¢å®å€ãèŠã Agent Builder ã® ES|QL ããŒã«ã§ã¯ã空æ¬ã«ãä»»æãã®å°ãä»ããããŸããä»»æã®ç©ºæ¬ã«æ¢å®å€ïŒçç¥ããããšãã«å
¥ãå€ïŒãèŠããã©ããã¯ãããŒã«ã®äœãæ¹ã§éããŸãã å
¬åŒè³æã®èª¬æ ïŒKibana ã®ç»é¢ïŒUIïŒã§ä»»æã®ç©ºæ¬ãäœããšãã¯ãæ¢å®å€ãå¿
é ã§ããAPI ã§äœããšãã¯æ¢å®å€ããªããŠããããçç¥ããã空æ¬ã¯ nullïŒå€ãªãïŒã«ãªããŸãããã ã null ã¯ã¯ãšãªã®å€±æã«ã€ãªãããããã®ã§ãæ¢å®å€ãä»ããããšã匷ãå§ããããŠããŸãã ä»åã®å®æž¬ ïŒä»åã®ããŒã«èšå®ã§ã¯ãæ¢å®å€ãäžããã«ç©ºæ¬ãçç¥ãããšãå®è¡æã« Unknown query parameter [disaster_type] ïŒç¥ããªãåŒæ°ïŒãšãããšã©ãŒã«ãªããŸããã ããã§ãä»»æã®æååŒæ°ã«ã¯ç©ºæå "" ãä»»æã®æ°å€åŒæ°ã«ã¯Â 0 Â ãæ¢å®å€ã«ããŸããã ?disaster_type  ã空ãªãçš®å¥ã§çµãããããŒã«2ã»3ã§ã¯Â ?radius_km  ã0ãªãååŸã§çµããŸãããããŒã«1ã§ã¯ååŸã¯å¿
é ã§ããèšå®ã®è©³çŽ°ã¯ Elasticã®ES|QLããŒã«ã®è³æ ã«ããããŸãã æå³æ€çŽ¢ïŒsemanticïŒãã©ãã§ãã©ã䜿ã£ãŠããã ããŒã¿ãå
¥ããåŽïŒèª¬ææã 2 ã€ã®åœ¢ã§ä¿åãã äŒæ¿ç¢ã®èª¬ææã¯ã1 ã€ã®ã€ã³ããã¯ã¹ã®äžã« 2 ã€ã®ãã£ãŒã«ããšããŠå
¥ã£ãŠããŸãã ãã£ãŒã«ã å äœã®ãã description text ïŒæ¥æ¬èªã®åœ¢æ
çŽ è§£æ kuromojiïŒ èšèã§æ¢ãããå €é²ããšããåèªãå
¥ã£ãŠããç¢ description_semantic semantic_text æå³ã§æ¢ãããå €é²ãå£ããèšé²ãã«è¿ãå
容ã®ç¢ 圢æ
çŽ è§£æ ã¯ãæ¥æ¬èªã®æç« ãåèªã«åãåŠçã§ããæ¥æ¬èªã¯åèªã®éã«ç©ºçœããªãã®ã§ããå €é²ãå£ãããããå €é² / ã / å£ã / ãããšåãå¿
èŠããããŸããkuromoji ã¯ãã®ããã®éå
·ã§ãã semantic_text ã¯ãæç« ãæ€çŽ¢çšã®æ°å€è¡šçŸïŒãã¯ãã«ïŒã«å€æããŠæ±ããã£ãŒã«ãåã§ããä»åã®ã€ã³ããã¯ã¹ã§ã¯Elastic Inference Serviceã® .jina-embeddings-v5-text-small ãæå®ããŸãããæ¥æ¬èªãå«ãå€èšèªã«å¯Ÿå¿ããæ¢å®ã§ã¯1,024次å
ã®ãã¯ãã«ãäœããŸããã¢ãã«ãèªåã®ãµãŒããŒã«é
眮ããã«äœ¿ããæ§æã§ãã詳ãã㯠Elasticã®èšå®äŸ ãåç
§ããŠãã ããã æ€çŽ¢ããåŽïŒMATCH ã§ãæå³ãè¿ãé ãã«åè£ãåºã MATCH(description_semantic, "å·ã®å €é²ãåããŠçºãæ°Žã«ã€ãã£ãèšé²") ãšæžããšãElasticsearch ã¯è³ªåæãåãã¢ãã«ã§ãã¯ãã«ã«ããŠãæå³ãè¿ãç¢ãæ¢ããŸãã çè
ãå·å£åžå
ããèããäŸã§ãïŒè·é¢ã¯çè
ã®çŸåšå°ããã®å€ãã1km åäœã«äžžããŠããŸãïŒã ç¢ èª¬ææã®äžéš è·é¢ çŠæœæ ¹æºäºïŒããããããããïŒé²æ°Žèšå¿µç¢ïŒè¶è°·åžïŒ ææ²» 23 幎ãè¡ç°åžã§å©æ ¹å·ã®å €é²ã決å£ããè¶è°·åžåã¯å€§æŽªæ°Žã«èŠèããã çŽ 8km åæŸèœå€§å£éé€ä¹ç¢ïŒæ¥æ¥éšåžïŒ ææ²» 23 幎ã婿 ¹å·ã®å €é²æ±ºå£ãšå€å©æ ¹å·ã®æ°Ÿæ¿«ã®èšé² çŽ 17km æ°Žå®³äŒæ¿ç¢ïŒå·å³¶çºïŒ 茪äžã®éãå·å³¶çºã¯åºŠéãªã倧氎害ã«èŠèããã çŽ 29km ãå €é²ãåããããçºãæ°Žã«ã€ãã£ãããšããæ¥åžžã®èšãæ¹ããããæ±ºå£ããæ°Ÿæ¿«ããšæžãããç¢ãæ¢ããŸãããèšèãéã£ãŠãé¢é£ããåè£ãèŠã€ããããã®ãæå³æ€çŽ¢ã®å©ç¹ã§ãã æå³æ€çŽ¢ããããªãããšã ããã§ããæå³æ€çŽ¢ã¯Elasticsearchã質åæãšç¢ã®èª¬ææãæ¯ã¹ãå
容ãè¿ããã®ãåè£ãšããŠè¿ãåŠçã§ãããã®ããšã«ãLLMãåè£ã®èª¬ææãèªãã§ã質åã«åããã倿ããŸãã äŸãã°ãå·ã®å €é²ãåããŠçºãæ°Žã«ã€ãã£ãèšé²ããæ¢ãããšããååŸ10kmå
ã«ç»é²ãããŠããç¢ã¯6ä»¶ã§ããããã®6ä»¶ãæå³æ€çŽ¢ã®åè£ã«å
¥ãããã®ãã¡4ä»¶ã¯çœå®³çš®å¥ããå°éãã®ç¢ã§ãããä»åã¯çœå®³çš®å¥ã§çµã£ãŠããªããããå°éã®ç¢ãåè£ããé€ãããŸããã åè£ã«åºãããšãšã質åã«åãããšã¯å¥ã§ãã ãšãŒãžã§ã³ãã¯ãæå³æ€çŽ¢ã§è¿ã£ãæå€§10ä»¶ãLLMã«èªãŸããŠãåçã«äœ¿ãç¢ãéžã³ãŸãããã®10ä»¶ã«åãç¢ããªããŠããå°åå
ã®ãã¹ãŠã®ç¢ã«è©²åœãããã®ããªããšã¯èšããŸããããå°åå
ã®ç»é²ã0ä»¶ããã確ãããããšãã¯ãæå³æ€çŽ¢ãšã¯å¥ã«ãçœå®³çš®å¥ãšè·é¢ã®æ¡ä»¶ã§ç»é²ä»¶æ°ãæ°ããŸãã åè£ã¯æå³ã®ç¹æ°é ãåçã¯è·é¢é r elevance ã¯ãElasticsearchã®æ€çŽ¢ã¹ã³ã¢ _score ãå°æ°ç¹ä»¥äž3æ¡ã«äžžããŠè¿ãå€ã§ãã質åæãšç¢ã®èª¬ææãã©ãããã䌌ãŠããããè¡šãæ€çŽ¢ã®ç¹æ°ã§ããããŒã«1ã§ã¯ãElasticsearchã® _score ããã®ååã§è¿ããŠããŸãã 䜿ãå Žæã¯ãæ€çŽ¢ãšåçã§éããŸãã æ®µé äœãããã åè£ãæ¢ã SORT _score DESC ã§æå³ãè¿ãé ã«äžŠã¹ãæå€§10ä»¶ãããŒã«ããè¿ããããã§ã¯relevanceã䜿ã åçãäœã LLMãåè£ã®èª¬ææãèªãã§è³ªåã«åãã倿ããåããšå€æããç¢ãçŸåšå°ããè¿ãé ã«è¡šç€ºãããããã§ã¯relevanceã§äžŠã¹ãªã è¿ãã®ç¢ãç¥ããã質åãªã®ã§ãåçã§ã¯è·é¢ãåªå
ããŸããããã ãã è·é¢é ã«äžŠã¹ãããã®ã¯ãæå³æ€çŽ¢ãè¿ããæå€§10ä»¶ã ã ã§ããåè£ã«å
¥ããªãã£ãç¢ããåŸããè·é¢é ã§è¿œå ãããããã§ã¯ãããŸããããŸããrelevanceã¯æ£ççãå®å
šæ§ã衚ãç¹æ°ã§ã¯ãªããäžå®ä»¥äžãªãå¿
ã質åã«åããšããåºæºã«ã䜿ã£ãŠããŸããã ãšãŒãžã§ã³ãã®ã«ãŒã«ïŒæç€ºæïŒ ãšãŒãžã§ã³ãã®åãæ¹ã®ã«ãŒã«ã¯ãæç€ºæãã«æžããŸããããã¯ãšãŒãžã§ã³ããäœããšãã«èšå®ããæç« ã§ãLLMã¯ããŒã«ã®èª¬æãšäžç·ã«èªã¿ãŸããå®éã®åããåžžã«æç€ºã©ããã«ãªããšã¯éããªããããæ€çŽ¢çµæã確èªããŸãã çŸåšå°ã®æ±ã çŸåšå°ã¯ãäŒè©±ã®éè¡šç€ºã®æ·»ä» geoai-current-location ããã ãåãã æ·»ä»ã«ç·¯åºŠãçµåºŠãååŸæå»ãæå¹æéãããã£ãŠããŠãæéå
ã®ãšãã ã䜿ãã 2 åç®ä»¥éã®è³ªåã§ããæ€çŽ¢ã®åã« æ¯å æ·»ä»ãèªã¿çŽããŠæéã確ããããæéåããªãæ€çŽ¢ããªãã å©çšè
ã«ç·¯åºŠã»çµåºŠã®å
¥åãæ±ããªãã緯床ã»çµåºŠãåçã«è¡šç€ºããªãã ãããŸã§æžãã®ã¯ãLLM ã芪åã ããã§ããæŸã£ãŠãããšã緯床ãšçµåºŠãæããŠãã ããããšèããããåã®è³ªåã§èªãã 座æšãæéåãã§ã䜿ãç¶ãããããŸãããããæ¢ããã«ãŒã«ã§ãã èãè¿ãã®ã«ãŒã« æ€çŽ¢ å¿
é è¶³ããªããšã é¿é£å Žæ çœå®³çš®å¥ãååŸã¯ãç¯å²ãæ±ãã質åãã®ãšãã ã çš®å¥ãç¡ããã°æ€çŽ¢ãããèãè¿ã äŒæ¿ç¢ïŒè¿ãé ïŒ ååŸã¯ãç¯å²ãæ±ãã質åãã®ãšãã ã ç¯å²ãæ±ããŠããã®ã«ååŸãç¡ããã°èãè¿ã äŒæ¿ç¢ïŒæå³ïŒ ååŸãšæ€çŽ¢æ æ€çŽ¢ãããèãè¿ã åºæ¬ã¯ãååŸãæšæž¬ããªããæ¢å®å€ã§è£ããªããã§ãããã ããäžçªè¿ãããæå¯ããã®ãããªè³ªåã«ã¯ãååŸãã®ãã®ãèŠããŸããããã®ãšãã¯èãè¿ãããååŸã§çµããã«è¿ãé ã§æ€çŽ¢ãããååŸã®æå®ãªãã§ãçŸåšå°ããè¿ãé ã«è¿ããŸããããšäžèšæ·»ããŸãã ããšãã°ãçè
ãå·å£åžå
ãããæãè¿ãèªç¶çœå®³äŒæ¿ç¢ãæããŠããšèããšãèãè¿ããªãã§ãå
«äžã®æ°Žç¥ç€Ÿå建èšå¿µç¢ãïŒå°éãçŽ 4kmïŒãè¿ããŸããïŒ14 ç§ïŒããæšæž¬ããªãããšãäžèŠãªãã®ãèããªããã¯äž¡ç«ã§ããŸãã ããŒã«ã®éžã³æ¹ 質åã«ãç¢ã®å
å®¹ã»æèšã»ããŒããã®æå®ãããïŒ ââ ãã â ããŒã« 1ïŒæå³æ€çŽ¢ïŒ â çœå®³çš®å¥ãã¯ã£ããèšãããŠããã°ãçš®å¥ã®ç©ºæ¬ã«ãå
¥ãã ââ ãªã â ãäžçªè¿ãããåšèŸºã®äžèЧãâ ããŒã« 3ïŒè¿ãé ïŒ é¿é£å Žæã®è³ªå â ããŒã« 2ïŒé¿é£å ŽæïŒ ç¢ãšé¿é£å Žæã®äž¡æ¹ãæ±ãããã â ããŒã« 1 ã 3 â ããŒã« 2ïŒç¬¬ 1 åã®ã屿§ã®åŒãç¶ããïŒ ããŒã« 1 ã«æž¡ãæ€çŽ¢æã¯ãå©çšè
ã®èšèããªãã¹ããã®ãŸãŸäœ¿ããŸãããå·ã®å €é²ãåããŠçºãæ°Žã«ã€ãã£ãèšé²ãããæŽªæ°Žãã«çœ®ãæããŠã¯ãããªãããšæžããŠãããŸãããæŽªæ°Žããšããäžèªã«çœ®ãæããŠãæå³æ€çŽ¢ã§ããããå €é²ãåããããçºãæ°Žã«ã€ãã£ãããšããå
·äœçãªæ¡ä»¶ã倱ãããæ¢ãããå
容ãåºãã£ãŠããŸãããã§ãã çµæã®èŠãæ¹ ããŒã« 1 ã®çµæã«ã€ããŠãLLM ã« 3 ã€ã®ä»äºããããŠããŸãã éžã¶ã æå€§10ä»¶ã®åè£ã®èª¬ææã質åãšç
§ããããå
容ãäžèŽããç¢ããšãåèãã«åãããäžèŽã0ä»¶ãªããä»åè¿ã£ãåè£ã«ã¯äžèŽããç¢ããªãããšèšããå°åå
ã®å
šç¢ã«ã€ããŠ0ä»¶ãšã¯èšããªãã 䞊ã¹ãã ã©ã¡ããçŸåšå°ããè¿ãé ãrelevance ã§ã¯äžŠã¹ãªãã èŠããã äžèŽããç¢ã¯è¡šã«ãåèã®ç¢ã¯ 1 è¡ãã€ã 説ææã®èŠçŽã«ãã«ãŒã«ããããŸãã説ææã«ããäºå®ã ããçãããæ°åã»å¹Žã»å°åã¯åæã®ãŸãŸã«ããŸããäžèŽãã1ä»¶ç®ã¯åæãçãåŒçšããŠãLLMãããããããæèšããä»ãè¶³ããŠããªããèªè
ã確ãããããããã«ããŸãã å®å
šã«ã€ããŠã®èšãæ¹ãšããããªãããš ãã® PoC ãå®å
šå€å®ã·ã¹ãã ãšããŠæ±ããªãã è·é¢ã¯éè·¯è·é¢ã§ãåŸæ©è·é¢ã§ããªããçŽç·è·é¢ã ãšæžãã é¿é£å Žæã®éèšç¶æ³ãå容ã®äœåãçµè·¯ã®å®å
šã¯åãããªããšæžãã äŒæ¿ç¢ããŒã¿ã¯å
šåœã®çœå®³ãç¶²çŸ
ããŠããªãã0 ä»¶ã§ããçœå®³ããªãã£ãããä»ã¯å®å
šããšèšããªãã äœæãã座æšãžã®å€æãç»å±±æ
å ±ãçŸåšã®å±éºåºŠãé¿é£ãå¿
èŠãã©ããã®å€å®ã¯ããªãã ããšãã°ãç¥æžã®åžåœ¹æã«äžçªè¿ãç¢ãæããŠããšèããšããšãŒãžã§ã³ãã¯ãä»»æã®äœæãäžå¿ã«ããæ€çŽ¢ã¯ã§ããŸããããšæããŸããããã¯ãæç€ºæã§ãããšããããŠããåãã§ãïŒçç±ã¯ç¬¬ 1 åã® 1 ç¯ïŒã çŸåšå°ãã©ãæž¡ããŠããã ããããã¯ãæ€çŽ¢ã®äžå¿ã«ãªãçŸåšå°ã®è©±ã§ããäœãæ¹ã®çްãã話ã¯çããèšèšã®èãæ¹ã ããæžããŸãã ãªã Chrome æ¡åŒµãªã®ã Kibana ã® Agent Builder ã®ãã£ããç»é¢ã«ã¯ããçŸåšå°ã䜿ãããã¿ã³ããããŸãããäœçœ®ãæž¡ãæ¹æ³ã¯ã倧ãã 3 ã€èããããŸãã æ¹æ³ ãã®PoCã§ã®å€æ å©çšè
ã緯床ã»çµåºŠãæã¡èŸŒã çŸå®çã§ã¯ãªããæã¡ééãããšãå¥ã®å Žæãæ€çŽ¢ããŠããŸã äœæãæã¡èŸŒã¿ã座æšã«å€ãã ãžãªã³ãŒãã£ã³ã°ã¯ä»åå
¥ããŠããªãïŒç¬¬ 1 åã® 1 ç¯ïŒ ãã©ãŠã¶ã«çŸåšå°ãèã å©çšè
ãèš±å¯ãããšãã ãååŸã§ãããããä»åæ¡çšãã å°ããªChromeæ¡åŒµãäœããå©çšè
ããã¿ã³ãæŒãããšãã ãããã©ãŠã¶ã®Geolocation APIã§çŸåšå°ãååŸããŸãããæ¡åŒµã¯Kibanaã®ç»é¢ãèªã¿æžããããç¬ç«ããå°ããªçªã§åããŸãã æ¡åŒµæ©èœã®ç»é¢ æµã [å©çšè
] ãã¿ã³ãæŒã â [Chrome æ¡åŒµ] ãã©ãŠã¶ãã緯床ã»çµåºŠãåã â 緯床ã»çµåºŠã»ååŸæå»ã® 3 ã€ã ãéã [èªåã®PCã§åãããŒã«ã«ãµãŒããŒ]ïŒElasticã®APIããŒãä¿æïŒ ââ Agent Builder APIã§æ°ããäŒè©±ãäœããçŸåšå°ãéè¡šç€ºã§æ·»ä»ãã ââ å°å³çšã®äžæã€ã³ããã¯ã¹ã«çŸåšå°ã1ä»¶æžã ââ 7ååŸã«äŒè©±ãšå°å³çšã®çŸåšå°ã®åé€ã詊ã¿ãïŒãµãŒããŒçšŒåäžã®ã¿ïŒ ââ äŒè©±ã®URLãæ¡åŒµãžè¿ã [Chrome æ¡åŒµ] æ°ããã¿ãã§ãã®äŒè©±ãéã â [å©çšè
] æ¥æ¬èªã§è³ªåãã â ãšãŒãžã§ã³ããæ·»ä»ããçŸåšå°ãèªã ãã€ã³ã㯠2 ã€ã§ãã APIããŒãæ¡åŒµã«æãããªãã ãã©ãŠã¶ã§åãæ¡åŒµã«ããŒãå
¥ãããããŒã«ã«ãµãŒããŒã ããä¿æããŸãã çŸåšå°ãæ·»ä»ããæ°ããäŒè©±ãéãã æ¡åŒµã¯æ¢åã®Kibanaç»é¢ãæžãæããŸãããæ°ããäŒè©±ãäœã£ãŠäœçœ®ãæ·»ä»ãããã®URLãéããŸãã çŸåšå°ã¯ä¿åãããã®ã çŸåšå°ã¯ä¿åãããŸããä¿åå
ããšã®æ±ããåããŠæžããŸãã å Žæ çŸåšå°ã¯å
¥ãã Agent Builderã®äŒè©±ïŒéè¡šç€ºã®æ·»ä»ãšããŒã«åŒã³åºãã®èšé²ïŒ å
¥ãã7ååŸããµãŒããŒãåããŠããã°äŒè©±ã®åé€ã詊ã¿ã å°å³çšã®äžæã€ã³ããã¯ã¹ map-session-current-location-v1 çŸåšå°1ä»¶ãä¿åãããäŒè©±ãšåãã¿ã€ããŒã§åé€ã詊ã¿ã äŒæ¿ç¢ã»é¿é£å Žæã®ã€ã³ããã¯ã¹ïŒ geoai-* ïŒ å
¥ããªã Agent Builder ã®åäœèšé²ïŒãã¬ãŒã¹ïŒ å
¥ããªããšã¯èšããªãïŒäžã§èª¬æïŒ èªåã®PCã®ãµãŒã㌠ä»åã®å®è£
ã§ã¯äœçœ®ããã¡ã€ã«ããã°ãžæžããªããåé€ã¿ã€ããŒã¯ã¡ã¢ãªäžã«ãã ãã¬ãŒã¹ã«ã€ããŠç¢ºãããã®ã¯ãããŒã¿ã¹ããªãŒã traces-agent_builder.otel-default ããä»åã®ç·¯åºŠã®å€ã§æ€çŽ¢ããŠ0ä»¶ã ã£ãããšã ãã§ããããã¯ãäœçœ®ãèšé²ãããªãã蚌æã«ã¯ãªããŸããã äžæ¹ã§ãKibana ã®ãã£ããç»é¢ã§ã¯ããã¬ãŒã¹ã®ã¹ãã³ïŒ1 〠1 ã€ã®åŠçïŒã®è©³çްã«ããã®åŠçã®å
¥åãšåºåã衚瀺ãããããšããããŸããããŒã«ã®ç©ºæ¬ã«å
¥ãã緯床ã»çµåºŠãã attachments.read ãèªãã æ·»ä»ã®äžèº«ããã¹ãã³ã®è©³çްã«èšé²ããããã©ããã¯ã確ãããŠããŸãããèšé²ã®èšå®ã«ãã£ãŠå€ããå¯èœæ§ããããŸãããã®ããããã®èšäºã§ã¯ããã¬ãŒã¹ã«äœçœ®ã¯æ®ããªãããšã¯èšããŸãããæ¬çªã§äœ¿ããªããããŒã«ã®åŒæ°ã attachments.read ã®å
¥åãšåºåããã¬ãŒã¹ã®åéèšå®ã® 3 ã€ã確èªããå¿
èŠããããŸãã ãŸãããšãŒãžã§ã³ããäœçœ®ãèªãã§åŒæ°ãéžã¶éçšã§ã¯ãLLMã«ãäœçœ®æ
å ±ãæž¡ããŸãããã®PoCã¯ãçŸåšå°ãElasticã®ã©ãã«ãæ®ããªãããšããèšèšã§ã¯ãããŸããã 7 åã§äœãæ¶ããã®ã ã7 åãã¯ãäœçœ®ãååŸããæå»ããæ°ããŸãã äœã ã©ããªãã æ·»ä»ã®æå¹æé æéãéããçŸåšå°ã¯æ€çŽ¢ã«äœ¿ããããæå¹ãªçŸåšå°ãååŸã§ããŸããããšçããããããšãŒãžã§ã³ãã«æç€ºããŠããŸã äŒè©±ãã®ãã® ãµãŒããŒçšŒåäžã¯7ååŸã«åé€APIãåŒã¶ãæåããã°äŒè©±ã®æ·»ä»ãšèšé²ãåé€ããã å°å³çšã®çŸåšå° äŒè©±ãšã¯å¥ã®äžæã€ã³ããã¯ã¹ã«ããããµãŒããŒãåé€ã詊ã¿ãå°å³åŽã§ãæéåãã衚瀺ããªãæ¡ä»¶ã䜿ã 1 è¡ç®ã¯ã䜿ãããªããããã®æéã§ã2 è¡ç®ãš 3 è¡ç®ããå®éã«æ¶ããåŠçã§ãããã® 2 ã€ã¯å¥ã®ãã®ã§ããæéãåããŠããããã ãã§äŒè©±ãæ¶ããããã§ã¯ãããŸãããå®éã«æ¶ããã®ã¯ãã¿ã€ããŒãåããåé€ API ã®åŒã³åºããæåãããšãã§ãã ãªã7åãªã®ããäœçœ®ãå€ããªã£ãŠãä»ã®å ŽæãšããŠæ€çŽ¢ããªããããPoCã§æ±ºããæéã§ãã1åã®è³ªåãšçãèãçŽããæ³å®ããŠããŸãã 7åã§èªåçã«å®å
šæ¶å»ããããšããæå³ã§ã¯ãããŸããã å°å³ã«çŸåšå°ãæãã«ã¯ ãã®PoCã®Kibana Mapsã§ã¯ãçŸåšå°ã»ç¢ã»é¿é£å Žæã3ã€ã®ã¬ã€ã€ãŒã§éããŸããç¢ãšé¿é£å Žæã¯æ¢åã®ã€ã³ããã¯ã¹ããèªã¿èŸŒã¿ãŸããçŸåšå°ã®ç¹ãæãããã«ãå°å³çšã®äžæã€ã³ããã¯ã¹ïŒ map-session-current-location-v1 ïŒãå¥ã«çšæããŸãããäŒæ¿ç¢ãé¿é£å Žæã®ããŒã¿ã«ã¯æ··ããŸããã äžèº«ã¯çŸåšå° 1 ä»¶ã ããæ°ããäŒè©±ãäœããšããå€ããã®ãå
ã«æ¶ãã äŒè©±ã®åé€ãšåãã¿ã€ããŒã§ãåé€ã詊ã¿ãããµãŒããŒãèµ·åãããšãã«ããæéåããæé€ããã å°å³ã®ã¬ã€ã€ãŒã«ããæå¹æéãä»ããåŸã®ãã®ã ãæãããšããæ¡ä»¶ãå
¥ããŠããŸããåé€ã«å€±æããŠããå°å³ãåæ€çŽ¢ã»æŽæ°ããéã«ã¯ãæéåãã®äœçœ®ã衚瀺察象ããé€å€ããŸãã ãã®å°å³ã¯ãã£ããã®åçãšèªåé£åããŸãããç¢ãšé¿é£å Žæã®ã¬ã€ã€ãŒã¯ãããããã®ã€ã³ããã¯ã¹ããç¹ãèªã¿èŸŒã¿ãŸããçœå®³çš®å¥ã§è¡šç€ºãçµãå Žåã¯ãKibana Mapsã®æ€çŽ¢æ¬ã§çè
ãæåã§æå®ããŸãã衚瀺ãããç¹ã¯ãããŒã«ãè¿ããæå€§10ä»¶ãšã¯å¥ã§ãã å°å³äžã®äŒæ¿ç¢ãšé¿é£å Žæã®ç¹ã¯ãåœåå°çé¢ã®åããŒã¿ãå å·¥ããŠçè
ã衚瀺ãããã®ã§ãïŒåºå
žã¯æ«å°Ÿã«èšèŒïŒã PoC ã®éç åé€ã®ã¿ã€ããŒã¯ãµãŒããŒã®ã¡ã¢ãªã«ãããŸãã7ååã«ãµãŒããŒãæ¢ããããåé€APIã倱æããããããšãäŒè©±ãæ®ããŸãããã®å Žåã¯Agent Builderã®ç»é¢ãAPIã§æååé€ãå¿
èŠã§ããå°å³çšã®çŸåšå°ã¯ã次ã«ãµãŒããŒãèµ·åãããšãã«æéåããæé€ããŸãããã ãããµãŒããŒãæ¢ãŸã£ãŠããéã¯åé€ãããŸãããæ¬çªã§ã¯åé€ã®å詊è¡ãšæå確èªãå¿
èŠã§ãã æéã¯ã©ãã§äœ¿ãããŠããã Kibana ã®ãã¬ãŒã¹ïŒåŠçã®å
èš³ãæéã®æµãã§èŠãç»é¢ïŒã§ã第 1 åã®é£éæ€çŽ¢ 1 åïŒå €é²æ±ºå£ã®ç¢ â æŽªæ°Žã®é¿é£å ŽæïŒãèŠãŸããããã¬ãŒã¹ã«ã¯ 6 ã€ã®ã¹ãã³ïŒåŠçã®ãŸãšãŸãïŒã衚瀺ããããã¬ãŒã¹å
šäœã®é·ã㯠32.0 ç§ã§ããã äžã®è¡šã¯ãç»é¢ã«è¡šç€ºãããé çªã®ãŸãŸã§ããæéããç»é¢ã«åºãå€ããã®ãŸãŸæžããŠããŸãã é çª ç»é¢ã®è¡šç€º äžèº« æé LLM ãžã®å
¥å / åºåããŒã¯ã³ 1 LLMïŒchatïŒ LLM ã®åŒã³åºã 3.2 ç§ 23,953 / 88 2 TOOLïŒattachments.readïŒ çŸåšå°ã®æ·»ä»ãèªã 1 ããªç§æªæº â 3 LLMïŒchatïŒ LLM ã®åŒã³åºã 2.4 ç§ 24,304 / 191 4 TOOLïŒcustomïŒ ããŒã« 1ïŒç¢ã®æå³æ€çŽ¢ïŒ 84 ããªç§ â 5 LLMïŒchatïŒ LLM ã®åŒã³åºã 25.6 ç§ 28,454 / 2,165 6 TOOLïŒcustomïŒ ããŒã« 2ïŒé¿é£å ŽæïŒ ç»é¢äžã§èªã¿åããªã â ãªããè¡šã®æéãè¶³ããŠãã32.0 ç§ã«ã¯ãªããŸããã32.0 ç§ã¯ãã¬ãŒã¹ã®å§ãŸãããçµãããŸã§ã®é·ãã§ãåã¹ãã³ã®æéã®åèšã§ã¯ãããŸãããã¹ãã³ã©ãããéãªã£ãããéãããããããããšããããŸãã ãã®ç»é¢ããã¯ãåãããªãããšããããŸããã 5 çªç®ã® LLM ã®ããšã«ã6 çªç®ã®é¿é£å ŽæããŒã«ã䞊ãã§ããŸããåçã®æç« ãã©ã® LLM åŒã³åºããæžããã®ãã¯ããã®ç»é¢ããã¯åãããŸããã åã質åã§ããã£ããç»é¢ã«è¡šç€ºãããåçæé㯠51 ç§ã§ããããã¬ãŒã¹ã® 32.0 ç§ãšã®å·®ãã©ãããæ¥ãã®ãã¯ã確ãããŠããŸããã åãã£ãã®ã¯ã芳枬ã§ããã¹ãã³ã®äžã§ã¯LLMã®ã¹ãã³ãæé·ã§ãããŒã«1ã®ã¹ãã³ã¯84ããªç§ã ã£ãããšã§ãããã®84ããªç§ãElasticsearchåäœã®å®è¡æéãšã¯ã¿ãªããŸãããåçãæžããåŠçããç»é¢ã®51ç§ãšã®å·®ã¯èŠããŠããªããããåŸ
ã¡æéå
šäœã®å
èš³ãšã¯èšããŸããã 芳枬ãã3åã®LLMåŒã³åºãã§ã¯ãå
¥åãçŽ2.4äžïœ2.8äžããŒã¯ã³ã§ãããå
¥åã®å
èš³ã調ã¹ãŠããªããããã©ã®æç« ãæéãè²»çšã«ã©ãã ãå¹ãããã¯åãããŸãããæ¬¡ã«æ¹åãããªããå
¥åã®å
èš³ãšããŒã«å®è¡åŸã®ã¹ãã³ã確èªããŸãã éçãšãä»åŸããããš é
ç® ä»å確èªããéç æ¬¡ã«ç¢ºãããããš åçã®åŸ
ã¡æé é£éæ€çŽ¢ã®ãã£ãã衚瀺ã¯51ïœ69ç§ã芳枬ããã¹ãã³ã§ã¯LLMãæé·ã ããåŸ
ã¡æéå
šäœã®å
èš³ã¯äžæ ãã¬ãŒã¹ã«åºãŠããªãåŠçãç»é¢è¡šç€ºæéãšã®å·®ãå
¥åã®å
èš³ã確èªãã åè£ã®æŒããšLLMã®éžå¥ äžäœ10件以å€ã¯èªãããæœè±¡çãªè³ªåã§ã¯äžèŽå€å®ãã¶ãã æ€çŽ¢è©äŸ¡ãå¢ãããåè£æ°ãå€æåºæºãæ¯èŒãã çœå®³çš®å¥ã®èšãæã LLMãæç€ºæã®å¯Ÿå¿è¡šã䜿ã£ãŠç»é²æžã¿ã®çš®å¥ãéžã¶ èšãæã衚ãããŒã¿ãšããŠç®¡çããæ¹æ³ãæ€èšãã çŸåšå°ã®åé€ æéåãã®äœçœ®ãæ€çŽ¢ã«äœ¿ããªãããæç€ºããŠãããããµãŒããŒåæ¢æã«ã¯äŒè©±ãæ®ãåŸã å詊è¡ã§ããåé€åŠçãšæå確èªãèšãã ãŸãšã ãã®ãšãŒãžã§ã³ãã§ã¯ãElasticsearchãè·é¢ãšç»é²çš®å¥ãç
§åããæå³ãè¿ãç¢ãåè£ãšããŠè¿ããŸããLLMã¯è³ªåãè§£éããŠããŒã«ãšå€ãéžã³ãåè£ã®èª¬ææãèªãã§åçããŸãã ES|QLã®ããŒã«ã¯3ã€ãè·é¢ãç»é²çš®å¥ã®æ¡ä»¶ã¯ãä¿åæžã¿ã®æ€çŽ¢æã«æžããŸããã semantic_text ãš MATCH ã¯ã質åã«é¢é£ããç¢ã®åè£ãéžã¶ããã«äœ¿ããŸããåçã®è·é¢é ã¯ã éžã°ããåè£ã®äžã§ã®é çª ã§ãã çœå®³çš®å¥ãå¿
èŠãªãšãã¯ãç»é²æžã¿ã®å€ãéžã³ãŸãã質åã«å¿
èŠãªååŸããªããã°èãè¿ããŸãã 7åãéããäœçœ®ãæ€çŽ¢ã«äœ¿ããªãããæç€ºãããµãŒããŒçšŒåäžã«åé€ã詊ã¿ãŸãã å°çæ
å ±ãAIã«ã€ãªããšãèªç¶ãªè³ªåããå Žæã«çµã³ä»ããããŒã¿ãæ¢ããŸãããã®çããè©äŸ¡ããã«ã¯ã æ€çŽ¢æ¡ä»¶ãåè£ã®ç¯å²ãLLMã®å€æãåŠçã®èšé² ãããããèŠããããã«ããå¿
èŠããããŸãããã®PoCã¯ããã®äœãæ¹ãšæ®ã課é¡ã瀺ããŸããã åºå
žã»ããŒã¿ã®å å·¥ åºå
žïŒåœåå°çé¢ã èªç¶çœå®³äŒæ¿ç¢ããŒã¿ã®æäŸã«ã€ã㊠ãïŒ2026幎8æ27æ¥çã2026幎9æ5æ¥ã«ååŸïŒ åºå
žïŒåœåå°çé¢ã æå®ç·æ¥é¿é£å ŽæããŒã¿ ãïŒ2026幎9æ5æ¥ã«ååŸïŒ æ¬èšäºã®æ€çŽ¢çµæãšå°å³ã¯ãäžèšããŒã¿ãããšã«çè
ãçœå®³çš®å¥ã®æŽçãElasticsearchãžã®ç»é²ãæ€çŽ¢ãå¯èŠåãè¡ã£ãŠäœæããŸãããåœåå°çé¢ãæ¬èšäºã®æ€çŽ¢çµæãå°å³ãäœæãããã®ã§ã¯ãããŸããã æå®ç·æ¥é¿é£å Žæã¯çœå®³çš®å¥ããšã«æå®ãããŸããå
¬éããŒã¿ã«ã¯æŽæ°åã®æ
å ±ãæªæ²èŒã®æœèšãããå ŽåããããŸããå®éã®é¿é£ã«ã¯èªæ²»äœãªã©ã®ææ°æ
å ±ã確èªããŠãã ããã æè¡è³æ Elasticã ES|QL tools in Elastic Agent Builder ã Elasticã Semantic text field type reference ã Elasticã ES|QL MATCH function ã The post GeoAIãšãŒãžã§ã³ãã®äžèº«ã第2åãES|QLããŒã«ãšçŸåšå°ã®æž¡ãæ¹ first appeared on Elastic Portal .
åç»
該åœããã³ã³ãã³ããèŠã€ãããŸããã§ãã







