設計図と現場から
-
LLM が
出力した 名前は、 マスタと 微妙に 違う — 表記 揺れを 前提にした 正規 化と 観測の 設計 LLM に「マスタにある名前から選んで」と指示しても、返ってくる表記は微妙に揺れます。プロンプトを念入りにしても揺れはゼロにならない — なら残る揺れを前提に設計する。4 段階の正規化、移植時に据え置いた閾値の実測、正規化がどれだけ働いたかを運用ログで観測する仕組みについて書きます。
-
Structured
Outputs の スキーマには、 書いても 効かない 制約がある — それでも 全部 書き、 保証は コードに 置く Structured Outputs を使えば JSON の形は確実に守られます。しかし minimum も multipleOf も minItems も強制されません。効かない制約をスキーマから消さずに全部書き続けている理由と、バリデーションの失敗を「モデルが読んで直せる文章」として返して自己修正させる設計 — 制約の置き場所の話を書きます。
-
SSE の
done は 「出力 完了」ではなく 「副作用の 確定」 — ストリーミング API の 完了をどう 定義するか ストリーミングにすると、HTTP の「完了」は成否の表現と副作用の確定に分解されます。SSE の done イベントを API 間の read-after-write 契約として設計した話を中心に、その前提となる経路の通し方とストリームの終わらせ方を Azure Functions v4 の本番実装で書きます。
-
Azure
OpenAI Responses API の 会話 状態 設計 — サーバに 預けられるもの、 手元に 残るもの previous_response_id だけで会話を繋ぎ、モデルに渡す配列を一切組み立てない設計を本番で回した記録です。それでも会話ログを自前の Table Storage に持っている理由 — 画面への再表示・実行前のガード・後段処理の入力 — と、instructions の非継承・response_id の失効・保存サイズの制約について書きます。
-
この
ブログの 技術 構成 — Express + Cloud Run の ノービルド SSR このブログは静的サイトジェネレータもバンドラも使わず、Express のサーバサイド描画だけで動いています。その構成と設計判断を紹介します。
-
数
千億 行の 位置 データを Databricks で 集計する — Uber H3 の 実践と 運用 設計 Uber 発の六角形グリッド H3 は、数千億行規模の位置データの空間結合を等値結合に変えます。Databricks の組み込み H3 関数による集計パターンと運用設計を紹介します。
-
Overture
Maps クイックスタート — 全世界の 地図 データを 今すぐ 直接 取り出す Overture Maps の GeoParquet データを DuckDB から S3 / Azure 直クエリで取得する最短ルートを、よく使うスキーマ (Addresses / Buildings / Divisions / Places) に絞って紹介します。
-
Databricks の
Delta テーブルを Snowflake で ゼロコピー 参照する Databricks の既存 Delta テーブルに一切手を入れず、Snowflake 側の設定だけでゼロコピー参照する Delta Direct の構成を紹介します。Azure での権限設定の躓きポイントと、導入・撤退の軽さにフォーカスします。
-
Snowflake の
セキュリティ 設計 — ネットワーク 制限と 認証 ポリシー Snowflake アカウントを守る入口の対策を、ネットワーク制限 (network rule / network policy) と認証まわりのポリシーの 2 層に分けて整理します。2026 年の MFA 強制化を踏まえ、ロックアウトを避けながら段階適用する手順にフォーカスします。
-
Power
BI の 生 データを CSV/ ZIP で ストリーミング 配信する — Node.js Streams と archiver の 地雷 処理 executeQueries で取り出した行を RFC 4180 の CSV にし、archiver の store モードで ZIP に束ねて HTTP でストリーミング配信する実装編。backpressure で行を捨てない Readable、'error' リスナ欠落によるプロセスクラッシュ、abort() だけでは終端しない応答、エントリ名の消毒と一意化 — 実環境で踏んだ地雷を「検出可能な失敗」に変える設計で塞ぎます。Power BI Embedded シリーズ完結編。
-
Power
BI executeQueries で 生 データを 取り出す — API の 制約と ページング 設計 Power BI REST API の executeQueries はページング非サポート・上限超過は HTTP 200 で無言の切り詰め、という危うい仕様です。100k 行 / 1M 値 / 15MB の制約を公式仕様で確認し、TOPNSKIP と「0 行終端・実取得行数 offset・3 箇所のエラー検査」でデータ欠落を検出可能にするページング設計を Node.js で組みます。
-
Power
BI Embedded 入門 — Managed Identity で シークレットレスに レポートを 埋め込む Power BI ライセンスを持たない外部ユーザーにレポートを見せる App owns data 構成を、サービスプリンシパルのシークレット管理なしで組む初期チュートリアル。Managed Identity で埋め込みトークンを発行し、Node.js バックエンドで最初の 1 レポートを表示するまでと、権限まわりの躓きポイントにフォーカスします。
-
技術
ブログをはじめます archiningen.com のトップページを技術ブログとしてリニューアルしました。このブログの方針と、今後書いていくテーマについて。
条件に一致する記事はありません。