めもめも

このブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。

ADK で A2A リモートエージェントとセッション内容を共有する方法

前提 A2A プロトコルでは、呼び出し側のエージェントと呼び出される側のエージェントでセッション情報(これまでのユーザー、および、エージェント群の会話の内容)を共有する仕組みが規定されておらず、必要に応じてユーザーが作り込む必要があります。 正…

可換モノイド⇨可換群 / 環(整域)⇨体 / 加群⇨線型空間 の拡張を統一的に捉える

enakai00.hatenablog.com 上記の記事では、可換モノイドを可換群に拡張する随伴関係を大雑把に示しましたが、圏論の随伴関係としての構成をまじめに示した上で、同様の議論が、 環(整域)を体に拡張する場合 加群を線型空間に拡張する場合 にも適用できるこ…

「A上の環B」に対する多項式環の普遍性について

数学原論作者:斎藤毅東京大学出版会Amazon上記の書籍では、「A上の環B」の説明がかなり端折られていて、命題2.4.3の証明に苦しんだので、「A上の環B」の定義を含めて詳しく紐解きました。

やや圏論っぽい書き方で中国剰余定理を導く流れ

数学原論作者:斎藤毅東京大学出版会Amazon上記の書籍の命題2.2.5から中国剰余定理を導くあたりの流れを詳しく示したものです。

随伴関係のカリー化表現

数学原論作者:斎藤毅東京大学出版会Amazon 上記書籍の命題1.6.4を詳しく示したものです。

可換群と可換モノイドと集合の随伴関係

enakai00.hatenablog.com 上記の記事では、ベクトル空間を例にして圏論の随伴関係の例を示しました。 まず、同様の構成を可換モノイドについて行います。 可換モノイドの定義 可換モノイド は、結合則 を満たす可換演算 と単位元 が存在する集合です。自然数…

米田の補題と米田の埋め込みの説明例

一般的な教科書だと形式的な定義と証明が並びがちな部分を一定の動機づけを持って説明する例を考えてみました。圏の定義、関手、自然変換あたりは知っている前提です。

孤独のプロトタイピング 〜 井の頭徒労、オーケストレーションの幻想に挑む

あれから数ヶ月。季節は移ろい、街路樹の葉が赤く色づき始めていた。井の頭徒労は、再びあの会議室で画面越しの秋原と波多野に向き合っていた。もはや既視感しかない光景だ。「井の頭さん、ついに我々の構想が形になりました! 各エージェントの出力を統合し…

オーディエンスの数で伝え方を変えるという発想

あくまで日本国内に限定した話ですが、いわゆる「IT エンジニア」を対象とした専門書は、10,000 部売れればヒット作と呼ばれます。言い換えると、IT エンジニア向けの文書を書いたり話したりする際は、10,000 人に伝わる内容を意識して中身を考えることにな…

ハングル検定2級の学習資料

何の話かと言うと わけあって韓国語を独学していて、ハングル検定 2 級に合格したので、学習に使った書籍を紹介します。enakai00.hatenablog.com上記の記事で準 2 級合格を報告してから、ちょうど 1 年半で 2 級に到達しました。準 2 級までは、公式教科書 …

「仕組みから学ぶ生成AI入門 —— 基礎から応用まで徹底理解」が発売されます。

gihyo.jp表題の書籍が 2025/06/27 に技術評論社より発売されます。執筆にあたりご協力いただいた方々に改めて感謝いたします。本書は、機械学習の基礎的な知識のある方(もしくは基礎知識から学びたい方)を対象とした、生成AIの「仕組み=モデルの動作原理…

孤独のプロトタイピング 〜 井の頭徒労、AIエージェントの荒野を彷徨う

オフィス街の高層ビルの一室。窓の外には、半年前には見慣れなかった真新しいビルがそびえ立つ。井の頭徒労は、薄暗い会議室で一人、腕を組みながらモニターを見つめていた。彼の目の前には、半年前に秋原と波多野から受けた、あの抽象的な要望が、より具体…

Gemini Live Streaming API の仕様メモ

WebSocket で接続したら、初めに下記のやり取りをする。 Client -> Backend:認証情報を送る {'bearer_token': 'xxxxx', 'service_url': 'wss://us-central1-aiplatform.googleapis.com/ws/google.cloud.aiplatform.v1beta1.LlmBidiService/BidiGenerateCont…

Agent Development Kit のコード解析メモ

参考資料 zenn.dev zenn.dev zenn.dev zenn.dev 基本事項 LlmAgent クラス LLM による応答を得るための基本となるクラス セッション管理機能はなく、与えられた InvocationContext の情報を用いてワンショットで応答を返す InvocationContext に含まれる ses…

Google login が必要なアプリのプロトタイプを Notebook で実装する方法

事前準備 アクセス対象アプリの API を有効化 developers.google.com OAuth 同意画面を設定 developers.google.com OAuth クライアント ID 認証情報を構成 「ウェブ アプリケーション」クライアントを作成して、「承認済みのリダイレクト URI」に https://ww…

孤独のプロトタイピング 〜 井の頭徒労、生成AIの荒野を彷徨う

オフィス街の高層ビルの一室。窓から差し込む午後の日差しが、会議室のテーブルを照らしている。井の頭徒労は、緊張した面持ちで顧客の二人と向き合っていた。「井の頭さん、私たちの会社では、最先端の生成AIアプリを開発したいと考えています。ユーザー体…

LLM との対話的なコード変換を自動化する

なんの話かと言うと LLM で SAS のコードを Python に変換する実験をする機会があって、Google Cloud の Gemini 1.5 Pro を使えば普通に変換できたのですが・・・ LLM に SAS のコードを Python に変換させる 変換後のコードを実行して結果を確認する → 実行…

「Google Cloud で学ぶ生成 AI アプリ開発入門」が発売されます!

gihyo.jp 手順の修正について Firebase コンソールの UI の仕様変更に伴う、手順の修正があります。本書のサポートページの内容を確認するようにお願いします。 本書について 上記の書籍ページで目次が公開されていますので、内容が気になる方は参考にしてく…

マイクロサービス・アーキテクチャーの講義資料

speakerdeck.com speakerdeck.com speakerdeck.com speakerdeck.com 参考資料 engineering.mercari.com

ハングル検定準2級の学習資料

何の話かと言うと わけあって独学で韓国語の勉強をしていて、先日、「ハングル検定準2級」に合格しました。ハングル検定は準2級以降の勉強法が難しい・・・という声を耳にすることがあるので、参考までに学習に使った資料を紹介しておきます。 배우기 準2級…

数学関連の書き物

書籍 技術者のための基礎解析学 機械学習に必要な数学を本気で学ぶ作者:中井 悦司翔泳社Amazon技術者のための線形代数学 大学の基礎数学を本気で学ぶ作者:中井 悦司翔泳社Amazon技術者のための確率統計学 大学の基礎数学を本気で学ぶ作者:中井 悦司翔泳社Ama…

パソコン風のテキストゲームを簡単に作れる React のゲームエンジン

何の話かと言うと 昔懐かしいパソコン風のテキストゲームを簡単に作れるゲームエンジンを React で作りました。こんな感じのブラウザ上で遊べるゲームが作成できます。(ここから遊べます。) 利用手順 まず、こちらの記事に従って、React の開発環境を準備…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート8)

何の話かと言うと enakai00.hatenablog.comこちらの続きです。今回は、プレイ中のスコアの情報を追加して、手番とスコアの情報を表示する Dashboard コンポーネントを追加します。これで、リバーシの実装は一旦完成です。ぱちぱちぱち。 スコア情報の追加 ま…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート7)

何の話かと言うと enakai00.hatenablog.com上記の記事の続きです。前回までに、盤面にコマを置けるようになったので、今回は「手番」の概念を導入して、交互に打ち合えるようにします。また、リバーシのルールに基づいて、コマをめくる機能も実装します。 「…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート6)

何の話かと言うと enakai00.hatenablog.comこちらの続きです。今回は、ブランクのセルにコマを置く機能と、盤面の状態をリセットする機能を実装します。 コマを置く処理の実装 前回の Board.js の内容を次のように拡張します。ここでは変更・追加した部分を…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート5)

何の話かと言うと enakai00.hatenablog.com上記の続きになります。次のステップとして、ボードの上にコマを置いて表示する機能を実装しますが、段階的に進めていきましょう。まずは、コマの情報を保存する状態変数を用意して、この内容に応じてコマを表示す…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート4)

何の話かと言うと enakai00.hatenablog.com上記の続きになります。今回からは、いよいよ Reversi の実装に入ります。まずは、画面の背景に Reversi のボードを表示することにしましょう。 アプリケーションのコードを用意 まずは、これまでと同様にアプリケ…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート3)

何の話かと言うと enakai00.hatenablog.com上記の続きになります。今回からは、新しいアプリケーションを作成していきますが、まずは、React のビルド処理とパッケージマネージャーについて簡単に説明しておきます。 React のビルド処理 React では、JSX と…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート2)

何の話かと言うと enakai00.hatenablog.com上記の続きになります。今回は、サンプルアプリケーションを GitHub Pages で公開する手順を説明します。今後作成するアプリケーションも同様の手順で公開することができます。 GitHub Pages の準備 まずは、公開用…

バックエンドエンジニアのための(かどうかは本当はよく分からないけど、とにかく書いてみる)React 入門(パート1)

何の話かと言うと enakai00.hatenablog.com上記の記事を自分用のメモ程度の気分で公開したら、思いの外に多数のブックマークやコメントが付いて驚いた上に、「この内容では結局 React やっている人にしか理解できないのでは?」という趣旨のコメントを目にし…