技術的な知見とプロジェクトの学びを共有
深夜、48GBのM4 Proが突然カーネルパニックで再起動。犯人はハード故障ではなく、画面サーバー(WindowServer)が120秒応答しないのを検知して機体ごと落とすmacOSの安全装置だった。パニックログ・Jetsam・4連発したスピンダンプから、GPUを奪ったローカルLLMと大量の並列プロセスに辿り着くまでの解剖記録。前回の「スワップ地獄」の続編。
AIエージェント=Model(賢さ)+Harness(環境)。同じモデルでも環境設計で成果は変わる。コンテキスト/アクション/フィードバック/運用の4層ハーネス設計、Skill設計の実践パターン、Agent Team、そして人の承認ゲートを必ず挟むLoop Engineeringの設計を、会社固有の事情に触れず一般化して整理。
iPhoneをUSB-Cテザリング中にMacが突然カーネルパニックで再起動。panicログの m_copym_with_hdrs / copy overflow を読み解き、直前ロードされた USBテザリング用ドライバから原因を特定するまでの記録と、効く順に並べた5つの対策を解説。
スワップ31.7GB中30.4GBを使い切って停止寸前。犯人はCPU 0%のまま21.5GBを握り続けるollamaのrunnerだった。ps・lsof・PPIDで引き金まで辿った追跡の全記録と、途中で犯した3回の勘違い(Ghostty犯人説/殺したのに死んでいない/親を殺しても止まらない孤児プロセス)、そして効く順に並べた9つの対策を数字付きで解説。
AIの出力は「正しいか」だけでなく、読む側がどれだけ少ない負荷で理解し、判断し、次の行動に移れるかまで設計する必要がある。結論先出し、差分設計、前提分離、段階開示、選択肢の圧縮、検証可能性の明示など、AIアウトプットの認知負荷を下げる実務パターンを整理。
エージェント同士を連携させるA2A設計を3回連載で整理。第1回は全体像。なぜ単一では足りず、逆にどこなら単一で十分か(濫用の戒め)を押さえ、設計を4層(プロトコル・オーケストレーション・通信/状態・信頼性/セキュリティ)の地図に落とす。混同されがちなMCP(縦)とA2A(横)の役割分担も明確化。図解2点。
設計パターンを体系的に棚卸し。オーケストレーション・トポロジ(Orchestrator-Worker・階層・Swarm/Handoff・Pipeline・Blackboard・Contract-Net・Debate・Map-Reduce)を図鑑と比較表で整理し、A2Aの中核(Agent Card・Task・3つの更新モード)、通信・状態受け渡しの4軸トレードオフ、コンテキスト分離まで掘り下げる。
実装編。LangGraph・CrewAI・AutoGen・OpenAI Agents SDK・ADK・Claude Agent SDKの設計思想と選定基準、作業+レビューのペア構成、ファイル経由handoff、人間承認ゲート、モデルルーティング。さらにマルチエージェント特有の失敗モード(MAST)・誤り伝播・観測性(OTel)・セキュリティ(信頼境界・間接インジェクション・CaMeL)まで。図解2点。
LLMの出力がおかしなことを言っていないかを検証する技術を3回連載で整理。第1回は全体像として、検証すべき「おかしさ」を5種類(事実誤認・文脈不忠実・自己矛盾・指示逸脱・不適切)に分解し、手法を4系統(リファレンス不要・リファレンス有り・ジャッジ系・実行時ガードレール)の地図に落とす。銀の弾丸は無く多段防御で組む、という実装の勘所まで。図解2点。
検証手法を体系的に棚卸し。SelfCheckGPT・意味的エントロピー(Nature 2024)・SAPLMA、FActScore・SAFE・RAGAS・MiniCheck・HHEM、LLM-as-judge・G-Eval・Chain-of-Verification、Guardrails AI・NeMo・Llama Guardまでを、分類ツリーと網羅比較表で整理し「どれをいつ使うか」を判断できるようにする。
手法を1本のパイプラインに組む実装編。安価→高価の多段防御(決定論ルール→軽量シグナル→LLM-as-judge→人手)をコードに落とし、オフライン回帰テストとオンライン監視で二層化、HITL(人手レビュー)で継続改善ループを回す。構造化出力・MiniCheck・CI/CDゲートの実装パターンと、コスト爆発や非英語の落とし穴まで。図解2点。
特定のフォントを画像内に使いたいとき何が効くかを実機で検証。フォントの名指し(Noto Sans JP等)は効果なし、style語(明朝/ゴシック/丸ゴ/筆)は系統まで、確実なのは文字なし背景+実フォント合成(決定論・毎回バイト一致)。グリフ被覆の落とし穴と参考画像での転写も実験。漢字崩れシリーズ実践編。
フォントの効き方はモデルで変わるのか。gpt-image-2 と gpt-image-1.5 を同条件で比較。style語は両モデルで効く、参考画像はどちらでも当てにならない、丸ゴの逆効果はgpt-image-2に強い(モデル依存)、gpt-image-1.5はopaqueでも文字が崩れる(30枚中2枚)。漢字崩れシリーズ・モデル比較編。
漢字・全角・半角英数字が混ざるタイトルは、漢字も英数字も一緒に崩れる。「第2回AIフェス Vol.3」→「S2口AIフェス VoL3」。gpt-image-2・不透明での解消とフォント合成を実験で示す。周辺日本語トラブル編A。
髙(はしごだか)や圖・賣などの異体字・旧字体は、よく見る常用字体に正規化されて別の字になる。人名で致命的になる現象を実験で確認し、gpt-image-2での維持とフォント合成を示す。周辺日本語トラブル編B。
「濁点が消える」「長音ーが化ける」は本当か。実験したら常用カタカナ・短文では大半が正常。崩れたのは「がぶがぶ→がふがふ」などひらがな密集の限定ケースだけ、と正直に検証。周辺日本語トラブル編C。
短い単一列の縦書き看板は弱経路でもOK、gpt-image-2は2列の毛筆も右→左で正しい。崩れるのは字形より複数列の読み順・行内の回転。縦書きをどこまで生成任せにできるか検証。周辺日本語トラブル編D。
繁華街などのシーンを描かせると、看板に頼んでいない擬似日本語が勝手に湧く。逆方向のトラブルを再現し、「文字を一切描かない」指示で確実に消せることをgpt-image-1.5/2の両方で実証。周辺日本語トラブル編E。
画像に文字を描く話の裏返し=読むOCR。似た字の取り違え・縦書きの読み順・ルビ混入・第3水準/異体字未対応・濁点取りこぼし・全角半角のゆれと、実務での対策を整理。周辺日本語トラブル編F(考察)。
漢字崩れの根っこ「文字ブラインドなトークナイザ」をLLM一般の日本語トラブルとして整理。文字数を数え間違える・トークン効率が悪い・グリッチトークン・Unicode正規化のゆれと対策。周辺日本語トラブル編G(考察)。
日本語TTS特有の読み間違いを整理。行った(いった/おこなった)等の同形異音語、人名地名の難読、1個・3階の数詞、Vol.3や記号の読み、アクセント。読み辞書・SSML・事前フォーマットでの対策。周辺日本語トラブル編H(考察)。
画像生成AIで文字化けしやすい漢字を一覧化。崩れやすさは「画数が多い × 使用頻度が低い(常用外)」でかなり予測でき、危険度別(🔴最も危険 / 🟠危険 / 🟡やや注意 / 🟢安全)に整理した実用リスト。これまでの実験で実際に崩れた字・崩れなかった字も掲載。
gpt-image系の漢字崩れに対し、API利用者が実装レベルで打てる対策6案(読みヒント・品質up・モデル切替・edit修正・フォント合成)を、わざと崩れる難字でgpt-image実験して成功率で比較。読みヒントは効かない/gpt-image-2・不透明はlowのまま6/6/フォント合成は決定論100%/edit修正で崩れを救える、という結果。
画像生成AIが日本語の漢字を崩す理由を、モデルの作りと公開論文から考察する。文字ブラインドなBPEトークナイザ・CJKのバイト分割とHan統合・長尾な訓練データ・視覚トークナイザの周波数バイアスという3つの仕組みが重なる必然であることを、Character-Aware論文やGPT-4o System Card等を引きながら解説(内部は非公開なので推測は明示)。
画像生成AIに日本語タイトルを入れると漢字が崩れる。どんな時に崩れやすいか(症状)を見分けて、quality=lowのまま崩さないための対処法(フォント合成・モデルや背景の選び方・難字や構図の避け方)を、gpt-imageを200枚以上試してまとめた。
PHP勉強会関西で「PHPer、Cloudflare に引っ越す」というタイトルで15分セッションを実施。TypeScript一強のCloudflareエコシステムでPHPerがどう戦うかという話に加えて、当日聞いたLT3本(mktimeでの日付操作、Sec-Fetch-SiteでのCSRF対策、PHP 8.4 プロパティフック)も振り返る。
GTMロジック(スコアリング・ルーティング・アウトリーチ・コンテンツ生成)を自己進化させる5系統(Contextual Bandit / Uplift / Off-policy評価 / LLM自己改善 / 進化的コード探索)を、Darwin Godel Machineをはじめ2025-2026の最前線論文で整理。Crawl/Walk/Runの実装ロードマップ付き。
海外GTM Engineerが実装しているプロダクトシグナル→セールス連携とSEO/コンテンツパイプライン自動化の具体パターンを、Clay/n8n/Common Room/Pocusのソースから整理し、B2C×C2Cマーケットプレイス(MOSH)での応用と日本向け再設計を解説。
海外GTMエンジニアが実践する最新スコアリング手法を40以上の英語ソースからDeep Research。3層分離スコア、Signal Stacking、ダークファネル等の新変数と、日本のB2B/B2C市場への適用時に必要なローカライズを解説。
ルールベース、予測スコアリング、BANT、Fit×Interest、インテントベース、LLMスコアリング、PLGスコアリングの7手法を比較。SQLからscikit-learn/XGBoostまで実装コード付きで解説。
SWE・SDR・RevOpsからGTMエンジニアに転身するための6ヶ月ロードマップ。Clay・HubSpot・n8nの学習ステップ、ポートフォリオの作り方、面接対策まで具体的に解説。
Chromeで動画のplay()が中断されるAbortErrorの原因、再現条件、具体的な解決パターンを解説。Page Visibility API連携、Promise chainによる競合防止、フレームワーク別の実装例。
海外で求人が前年比205%増、年収中央値$182K。エンジニアリングスキルで営業・マーケの収益パイプラインを自動化する「GTMエンジニア」という職種を、海外記事のDeep Researchに基づいて解説。
Telegramチャンネル機能のセットアップ手順をゼロから解説。BotFatherでのBot作成、プラグインインストール、ペアリング、セキュリティ設定まで、ビジネスサイドの方にもわかるように丁寧に説明。
react-native-videoとreact-native-track-playerの共存。NowPlayingInfoCenter競合の解決、Silent Syncパターン、PiP→音声フォールバックの状態遷移設計を解説。
fetch/XHRの裏でiOSのNSURLSessionとAndroidのOkHttpが何をしているのか。Cookie自動管理、2段階タイムアウト、ATS強制の仕組みを図解で解説。
Web開発者がReact Nativeに入門したとき、同じfetch()なのに挙動が違って戸惑うポイントを徹底解説。CORSが存在しない理由、Cookie管理の違い、ネイティブHTTPクライアントの仕組みまで図解で理解する。
React Native(Expo)のmonorepoで、1つのコードベースを維持したまま複数アプリをEAS Build/Submitでデプロイする設計パターン。app.config.tsによる動的設定切り替えとCI/CD対応。
AIエージェントチームを「本物のエンジニアリングチーム」として扱い、最適なアウトプットを得るためのコミュニケーション設計パターン。Why/What分離、1-Agent-1-File、自己完結コンテキストなど実践知を体系化。
React経験者がReact Nativeで必ずハマる「Mismatch between JavaScript code version and Reanimated Babel plugin version」の原因と解決策を詳しく解説。
既存React Router v7 WebアプリにReact Nativeを後追いでPoC導入した実経験から、API層の共通化レベルを4段階で整理。WebView不採用の理由とOpenAPI + Orvalによる薄い共通化の実践パターンも紹介。
Slackコミュニケーションを可視化し、Small World Networks理論でチーム効率を最適化。Google Project Aristotleの知見を実装。
プライベートチャンネルやDMへの自動参加が不可能な理由と、実用的な代替ソリューション。GDPR対応とプライバシー配慮。