Jaewook Hwang

Jaewook Hwang

Data Scientist

Global Agent Hackathon参加と振り返り

Global Agent Hackathon参加と振り返り

はじめに

はじめましてMCD3 AI事業カンパニー(旧エムシーデジタル)AI Labsチームです。今回、AI Labs(生成AI・エージェント技術を活用した業務生産性向上を目指す社内ラボチーム)として、Global Agent Hackathon May 2025 に参加しました。本記事では、ハッカソンを通じて得たAI Agent開発における気づきや設計上の工夫を振り返ります。

Global Agent Hackathonとは

Global Agent Hackathon は、AIエージェント(Agent + LLM + ツール連携)をテーマとした国際オンラインハッカソンです。参加者には、ExaやFirecrawlなどのツールクレジットが提供され、Agent開発の実験場として非常に良く設計されていました。

イベントは2025年4月~5月開催、最終提出期限は6月1日で、提出形式はGitHubのPull Request+2〜3分のデモ動画というシンプルな流れです。 評価軸は完成度、デモ動画の説得力、READMEの分かりやすさとなります。スポンサー提供のクレジット利用や、Agno・Exa・Mem0などを使った構成で「ベストユース賞」などが狙える仕組みも用意されていました。 最終提出期限の時点で約60件のプロジェクト参加があり、AIエージェントを開発する時のアイデア、LLMの活用方法、ツールの構成方法などが非常に参考になりました。

AI Agentとは

AI Agentは、自然言語で与えられたタスクを自律的に「理解→分解→実行→応答」するシステムです。 LLMによるChain‑of‑Thought推論と、外部ツール呼び出し(例:Web検索や関数実行など)を組み合わせることが近年の主流設計です。複雑なユーザ要求に対しても、多段階で柔軟に応えることができます。

関連ツール

Global Agent Hackathonで共通で提示された主要ツール群:

  • Agno:軽量Pythonエージェントフレームワーク。DESCRIPTIONやINSTRUCTIONS形式でオーケストレーション可能。
  • Exa:高速Web検索API。参加者にはクレジットが支給され、外部知識の活用に最適。
  • Firecrawl:スクレイピングAPIでWeb情報取得に専用機能を提供。
  • Mem0:長期記憶とRAG検索用のベクトルDB。
  • Browser Use:UI操作を自動化できるヘッドレスブラウザツール。

作成したツールについて — Talk2Find

プロジェクト概要

Talk2Find は「会話で探すナレッジエージェント」を目指し、音声やテキストでのクエリを起点に「社内ドキュメント(PDF/Docx)」と「外部Web」の両面検索を行い、最適な回答を返すエージェントです。

システム構成

システム構成

エージェントの目的と文脈設計

以下のような場面での「曖昧な問いへの即時応答」を想定ユースケースとしました。

  • 会議中に「さっきの資料、どこだっけ?」と探したくなる瞬間
  • 社内文書とWeb情報をまたいで参照したいとき
  • マウスもキーボードも使わず、話すだけで情報にアクセスしたい場面

これを実現するには、単なる検索ではなく、「問いの意図理解」「複数情報源の探索」「要約と出力整形」という連続的なステップが必要になります。

エージェントの構成と役割分担

以下の3つの役割をモジュールとして分離しています。

  1. 入力解釈 : 音声認識→テキスト変換
  2. 要約生成 : LLMによる統合&要約生成
  3. 情報検索 : PDF/Docxのドキュメント及びWeb検索、LLMによる統合

Agnoフレームワークでは、エージェントの振る舞い・出力形式・使用ツールをについてモジュール化ができるように整備されています。そのため、モジュール単位での交換や差し替えがしやすく、再利用性も高く保たれています。

タスク分解とツール連携の自動化

音声からユーザーに適切に情報を伝えるため工夫したのは、「どのツールをどう組み合わせて応答を導くか?」というOrchestrationの部分です。

Agnoを使うことで、以下のようなワークフローを組み立てられました。

  1. クエリ入力(音声またはテキスト)
  2. 音声入力からLLMによる要約生成
  3. ドキュメント検索(PDF, Docx)によりファイルから一致情報を取得
  4. 並行してWeb検索によりWebから補足情報を取得
  5. 検索結果についてもLLMに渡し、統合・要約されたアウトプットを生成

状態の連携にはStreamlitのSessionで連携し、UI上で表示することでユーザーが情報を取得できるようにしました。その結果、ユーザーはリアルタイムで関連情報を同じ画面から取得することが可能となりました。

デモ動画

Demo

振り返り

残念ながら入賞はされませんでしたが、今回のハッカソンを通して、以下3つの観点で学びがありました。

  • エージェントの目的と文脈設計 : 目的とユースケースを明確にすることで、余分な機能を削ぎ落とせる
  • エージェントの構成と役割分担 : ツールを責務ごとに分け、疎結合にすることで保守性が高まる
  • タスク分解とツール連携の自動化 : 動的なツール選択とプロンプト制御によって、応答品質を担保できる

Talk2Find はプロトタイプとして完成度70〜80%ではありますが、「話すだけで知識にアクセスできる」という体験を形にすることができたと感じています。

エムシーディースリーでは、技術力向上のためのイベントや勉強会なども定期的に実施しています。 もしエムシーディースリーで働くことに興味を持っていただいた方がいらっしゃいましたら、カジュアル面談も受け付けておりますので、お気軽にお声掛けください! 採用情報や面談申込みはこちらから

RSS

Tags

Next

Tetto Obata

Tetto Obata

Next.js × react-i18next で始める Web アプリの多言語対応

はじめに データサイエンティストの小畑です。 MCD3 では、 Tachyon 生成AI をはじめ、様々な Web アプリの開発を行っております。非日本語話者にも Web アプリをご利用いただく場合、多言語化対応が一つの重要な

  • #TechBlog
  • #i18n
  • #Next.js
  • #React