Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MILIZE ProにおけるDatabricks活用事例 -データカタログ化とコードAI Ag...

onhrs
January 30, 2025
360

MILIZE ProにおけるDatabricks活用事例 -データカタログ化とコードAI Agentによる開 発実情

MILIZE Proには、さまざまなライフプランに関わるデータが日々格納されています。こうしたデータは高度な分析を行うために非常に複雑な構造を持っており、その管理や利活用が難しいという課題がありました。 本セッションでは、これらのデータをカタログ化する際に活用できる「Databricks Workflows」の事例をご紹介しMILIZE内でどのようにDatabricksを活用してるかご紹介します。後半では、現在MILIZEでは日々の開発業務をコード生成AIベースで推進している実例を踏まえ、「コード生成AI×Databricks」の活用事例を取り上げ、具体的にどのようにDatabricks上で開発効率を高められるのかをお伝えしたいと考えています。

onhrs

January 30, 2025
Tweet

Transcript

  1. Copyright ©️ MILIZE Inc. All rights reserved 自己 紹介 2

    小野 宏史 株式会社MILIZE AIコンサルティング部 2018年にMILIZEに入社。最近はいくつかのコード生成AI ツールを検証中のAIエンジニア。今年の目標はコード生成 AIで自分の業務の大半を行なってもらうこと 趣味はバスケットボールで、週に数回プレイしています。 来月の日程です(遊び来てください) 詳しくは https://www.sgc-basketball.com/
  2. Copyright ©️ MILIZE Inc. All rights reserved 宣伝 3 https://aiagentsoftware.connpass.com/

    次回会場 The Place Shibuya • AI agent勉強会を企画しております。(3月中に第1回の勉強会計画中) • 渋谷駅すぐのThe Place Shibuya素敵な会場を押さえました • 現在登壇者を探しておりますので、ぜひご紹介ください • もちろん、当日参加者も大歓迎です(2月の中旬にconnpassで募集予定) 第0回の様子
  3. Copyright ©️ MILIZE Inc. All rights reserved 会社 概要 5

    会 社 名 株式会社MILIZE/ミライズInc. 設 立 2009年4月 代 表 取 締 役 田中 徹 資 本 金 1,571,226,500円(資本準備金含む) 本 社 所 在 地 〒108-0023 東京都港区芝浦四丁目12番38号 CANAL GATE SHIBAURAビル 本社加盟団体 ⚫ 一般社団法人Fintech協会 ⚫ 一般社団法人データ社会推進協議会 ⚫ 一般社団法人日本コンピュータセキュリティインシデント 対応チーム協議会(日本シーサート協議会) ⚫ 一般社団法人金融データ活用推進協会 ⚫ 一般社団法人ADSリサーチアソシエーション ⚫ 特定非営利活動法人金融IT協会 ⚫ 一般社団法人ディープラーニング協会 子 会 社 等 株式会社MILIZE INVESTMENT(投資助言業) 株式会社みらいバンク(銀行代理業) 株式会社みらいスコア(信用スコア) 株式会社みらいプラス(ソフトウェア開発) 株式会社MILIZE MEDICAL ライフネットみらい株式会社(関連会社・保険代理店) 従 業 員 数 107名(2024年3月31日現在) 荒波に漕ぎ出すあなたの小さなヨットが 大海の中で ゴール を目指し、 確実に辿り着く助けになりたい
  4. Copyright ©️ MILIZE Inc. All rights reserved miliz e Pr

    oの紹介 7 DX時代のオンライン面談対応ライフプランシミュレーションツール:ポートフォリオ管理・人生設計・ローン計算・必要保障額計算 までのオールインパッケージ。顧客の統合資産管理+ライフイベント統合DB ◼銀行のローカウンターでのコンサルティングに。 ◼保険の募集人が訪問セールスをする時に。 ◼FP事務所のライフプランコンサルティングに。 ◼データ共有機能で「非対面コンサルティング」に最適 ◼コンサルティング結果も共有可能 ◼保険販売だけではない「総合金融プラットフォーム」 ◼充実した「ポートフォリオ管理機能」 ◼今使っているツールは、保険と投信がバラバラで使いにくい。 ◼ヒアリング事項の入力だけで、面談時間が終わってしまう。 ◼対面セールスができなくなり、タブレットのツールが使えなくなった。 キャッシュ フロー表 資産負債推移表 金融資産 ポートフォリオ管理 住宅ローン シミュレーション ロボアド 年金計算 必要保障額計算 投資 シミュレーション こんな悩みを解決 強 み ご利用シーン
  5. Copyright ©️ MILIZE Inc. All rights reserved miliz e Pr

    oの 紹介 8 オンラインでお客様と繋がり、有価証券ポートフォリオ分析、必要保障額分析、住宅ローン分析などを合わせて行うことができま す。資産運用・保障・負債管理など総合的な分析が可能です。 キャッシュフロー・資産推移表 保険機能 データ共有機能 資産管理機能
  6. Copyright ©️ MILIZE Inc. All rights reserved miliz e Pr

    oの 背景 データ 活用 の背 景 データカテゴリ データの詳細 個人情報 氏名、生年月日、性別、家族構成など 収支情報 収入(給与、年金など)、支出(生活費、ローン返 済など) 資産・負債情報 預貯金、不動産、投資信託、株式、ローン残高など 保険情報 加入中の保険種類と保険金額 ライフイベント情報 結婚、出産、進学、退職などの予定 投資・運用情報 投資方針、リスク許容度、選択中の投資商品 トランザクション データ 金融取引履歴 Mongo DBで格納 10 背景 • milize Proのデータが蓄積されてきて分析を行う必要有り • 入力データの分析で新たな施策を提案したい
  7. Copyright ©️ MILIZE Inc. All rights reserved miliz e Pr

    oの 課題 milize ProのMongoDBのデータ構造 • 半構造化データ:配列やネスト構造を含む • テーブル数 : 約115個 • データサイズ : 20GB超 • 実行環境 : ローカルpcで実施(RAM:16GB)したが実施不能 11 例:Profilesテーブルデータの一部(基本属性、家計データ)
  8. Copyright ©️ MILIZE Inc. All rights reserved Da ta br

    icks を 選択 する理由 アーキテクチャの最適化 • 従来の複雑なDWH中心構成から、3層構造の統合プラッ トフォームへ • クラウドストレージとレイクハウスによる効率的なデー タ処理 データ活用の高度化 • BI分析から機械学習までをシームレスに実行 • データレイク上での高速な分析処理が可能 データガバナンスの強化 • 一元的なセキュリティ管理 • データ品質管理の自動化 サーバレス対応 • 高速に起動、費用も安価 • 年々使いやすくなっている 13 https://speakerdeck.com/taka_aki/databricksmian-qiang-hui-databricksnogao-du-nashi-ifang-sono1?slide=34
  9. Copyright ©️ MILIZE Inc. All rights reserved • 自動化とスケジューリング: 定期実行やイベントトリガーでワークフローを自動化

    • タスク管理: ノートブックやスクリプトを一元管理 • クラスタ制御: 必要なときだけクラスタを起動し、コスト最適化 • モニタリング/通知: 実行履歴やエラー検知、アラート送信で安心運用 • 主な用途: バッチETL、MLトレーニング、レポート生成など Da ta br icks ジ ョブ につ いて 14 ジョブのコンピュートの設定 | Databricks on AWS https://docs.databricks.com/ja/jobs/compute.html ジョブのステータス
  10. Copyright ©️ MILIZE Inc. All rights reserved Da ta br

    icks の ワ ー クフ ロ ー でデー タ 処理 Profilesデータ(基本属性、家計 データ)にある配列 データのデータ型を変換し、 列名を修正したうえで、新しい テーブルデータとしてカタログ に保存します。 将来的に分析しやすくするめ、 用途に合わせたテーブルデータ を作成します。 テーブルデータの例 • 保険 • 住宅ローン • 年金 • 収入 • 支出 15
  11. Copyright ©️ MILIZE Inc. All rights reserved 実 施し た具

    体的 な 処 理内 容 • Pydantic のモデル定義 ✓ プロフィールや収入、支出、住宅、ローン、保険、子供、車などのさまざまな データ項目を、それぞれクラスとして定義 • バリデーション&型変換ロジック ✓ 文字列や空文字を int や float、None に変換 ✓ MongoDBの ObjectId を文字列へ変換 ✓ 入れ子の辞書やリストにも対応 • 設計ポイント ✓ Pydanticの @field_validator や @model_validator を活用 ✓大量のクラスを使って各種エンティティ(収入・支出・保険など)を柔軟に処 理・保存できるよう設計 16
  12. Copyright ©️ MILIZE Inc. All rights reserved M ilize Pr

    oの デー タ分析 基盤 につい て Profiles情報(基本属性、家計データ)の テーブル形式に変換して保存すると同 時に、異常値削除、グルーピング、結 合処理を行い、新しいテーブルを作成 してカタログに保存。 今回ジョブでのバッチ処理が成功した ので、定期的な処理を実施するため delta live tableで実施予定。 17
  13. Copyright ©️ MILIZE Inc. All rights reserved M ilize p

    ro の デー タ分析 基盤 につい て 18 可能になったこと、今後のステップ 今回作成したカタログ • Pythonによる統計値算出 • AIモデル開発 • ダッシュボード化 • 作成した年齢、年収テーブルデータを使って、ダッシュボードで可視化
  14. Copyright ©️ MILIZE Inc. All rights reserved M ilize の

    エン ジ ニア開発 状況 20 コードAIで自動化 BI(business intelligence) • 非エンジニアに向けてのデータの可視化を提供 • エンジニアもコード生成AIを最大限活用し業務を効率化 データソース • Unity catalog • DB • ローカルcsv • Etc..
  15. Copyright ©️ MILIZE Inc. All rights reserved A ider を中心

    に コー ド A Iについ て 21 Aider:AIを活用したコーディングアシスタントツール • 高度な言語モデルを活用 ✓ GPT-4やClaudeなどを利用し、コードの生成・編集 支援 • ターミナル上でのペアプログラミング ✓ 開発者とAIが協力して効率的にコーディング • Gitリポジトリとの連携 ✓ コードの変更を自動的に追跡・コミット • 既存コードベースへの対応 ✓ 新規プロジェクトの作成だけでなく、既存のコードの 編集、拡張も可能
  16. Copyright ©️ MILIZE Inc. All rights reserved コ ード A

    Iの 利用 状況( ※) 特徴 Aider Cline GitHub Copilot 概要 aider.chatは、ターミナル上で動 作するAIペアプログラミングツール です。ローカルのGitリポジトリ内の コード編集を支援。 Clineは、VS CodeやCursorな どの統合開発環境(IDE)内で 動作するAIペアプログラミング、 コードの作成や編集、コマンドの実 行など、開発プロセスを効率化す る機能がある。 GitHub Copilotは、AIを活用し たコード補完ツールで、VSCode やNeovimなどで動作。 OpenAIのCodexモデルを基盤と しており、プログラミング中に自動 的にコードを提案・生成し、開発 者の生産性向上を支援します。 主な機能 - コード生成 - コード編集 - 複数ファイルの編集 - コード生成 - コード編集 - 複数ファイルの編集 - コード補完 - コード提案 - インラインサジェスト ユーザーインターフェース - コマンドラインインターフェース - VSCodeの拡張機能として統 合され、チャット形式で操作可能 - VSCodeなどのIDEに統合され、 インラインでコード補完を提供 対応プラットフォーム - コマンドラインツールとして、さまざ まな環境で使用可能 - VSCode上で動作 - VSCode、JetBrainsなどの主 要なIDEで利用可能 価格 - ツール自体は無料で利用可能。 ただし、利用する生成AIサービス のAPIキーが必要 -ツール自体は無料で利用可能。 ただし、利用する生成AIサービス のAPIキーが必要 - 個人利用で月額約1000円 - 無料枠あり 23 ※その他、DevinやCursorなど同等の機能のツールが山ほどある
  17. Copyright ©️ MILIZE Inc. All rights reserved コ ード 生成A

    I×Da ta bricks (cline) 24 Visual Studio Code + Cline + Databricks extensionを用いたローカル開発環境整備 https://qiita.com/nakazax/items/7813fdc03edb65ebc2d0
  18. Copyright ©️ MILIZE Inc. All rights reserved Cline 、g ithub

    cop ilotで も いい けど… 対応プラットフォーム - コマンドラインツールとして、 さまざまな環境で使用可能 - VSCode上で動作 - VSCode、JetBrainsなどの主 要なIDEで利用可能 VS Codeが必要 25
  19. Copyright ©️ MILIZE Inc. All rights reserved 状況: セキュリティ要件の厳しい企業様環境 •Databricksへのアクセスは許可

    •VSCodeの利用が禁止 •Databricks上のコピー&ペースト無効 本当 に あった 弊社案 件の 紹介 26
  20. Copyright ©️ MILIZE Inc. All rights reserved コ ード 生成A

    I×Da ta bricks (a ider ) 27 • Databricks上でのコード生成AIの動作を確認 • VSCODEが使用できない環境でも動作可能(かも)
  21. Copyright ©️ MILIZE Inc. All rights reserved コ ード 生成A

    I×Da ta bricks (Da ta br icks A ssist ant ) 28 • Aiderで失敗することも多くある場合はDatabricks Assistantを活用 • (妄想)同様の機能もDatabricksで上で作られると思うので、自分 にあった好みのAIツールを組み合わせながら楽しい開発生活を
  22. Copyright ©️ MILIZE Inc. All rights reserved コ ード 生成

    A Iの ま とめ (※) Vs code使 えるかどうか 複数ファイルを同時編集する必要 Cline GitHub copilot Aider 通常のChatGPTで生成さ れたコードををコピペ 29 (※)今回のケースに当てはめた場合の一例なので、ベストプラクティスではない 例 : github copilot nvim対応、その他代用ツール コピペは手間がかかる
  23. Copyright ©️ MILIZE Inc. All rights reserved 全体 の まと

    め 30 Milize Proのデータ基盤構築: • MongoDBの複雑なネスト構造のデータの処理に対しDatabricksを活用 • Databricksへの移行でデータカタログ化を実現し、分析基盤を確立 コードAI活用の実例: • Milize社内のコード生成AI推進においてaider/clineの実践的活用事例を紹介 • 特にセキュリティ(VSCode利用不可、コピペ禁止)という課題に対し、Aiderを使用 • コマンドラインベースのAI開発環境の構築により、厳格なセキュリティ要件に対応 • Databricksのノートブック環境との連携で、インタラクティブな開発プロセスを実現
  24. Copyright ©️ MILIZE Inc. All rights reserved W e' re

    hir ing 積極採用募集中!! 31