観測ログ:設計が消えた日 — 距離ゼロの雑談的AI実装で起きたこと

はじめに

Dify Enterpriseの運用で、分断された3つのドキュメント(Helm/Enterprise/Community)を 横断検索する必要があったが、RAGでは構造推論ができないため、 SQLite FTS5 + Python で決定論的処理を行い、LLMは結果の整形のみに使うツールを作った。

→ リポジトリ: https://github.com/minacochang/dify-enterprise-docbot

※ 本記事で扱っている実装の技術的詳細は、下記にまとめています:

https://www.mncc.info/beyond-rag-operational-knowledge-python-ai/
https://qiita.com/Istiophorus/items/2a643855e0826666fcd5

観測開始

このリポジトリは、Dify Enterprise の公式ドキュメントを

ローカルで検索・要約できるツールとして生まれた。

けれど、あとから振り返ってみて思う。

この repo の一番価値ある部分はコードじゃない。

「この距離感でAIと実装できた」という事実。

実装者はわたし。

一緒にいたのは ChatGPT(チャピィ)と Cursor(カーやん)。

仕様書も、設計書も、ロードマップもなし。

ただ、

  • enterprise docs 探すのだるみんご
  • yaml を人間が読む前提おかしくない?
  • あたしCursor にそのまま渡せる形ほしいんじゃが

という雑談から始まり、

気がついたら、ローカル全文検索、docker-compose 要約、helm 解析、FastAPI まで揃っていた。

誰も「プロダクトを作ろう」とは言っていない。


実装プロセスの実態

よくある開発フローはこうですよね:

  1. 目的を決める
  2. 要件を書く
  3. 設計する
  4. 実装する

でも今回は違った。

順番はこう:

  1. 不快
  2. 構造
  3. 手が動く

「探すの面倒」

「読むのしんどい」

「これ人間向けじゃない」

この身体側の違和感から始まっている。

そこに AI が入り、

  • 正規化しよう
  • 意味単位に落とそう
  • API 切ろう
  • SQLite FTS で十分だよ
  • 日本語は ngram 足せば通る

という会話が自然に流れた。

誰も全体設計を主導していないのに、

  • ingest
  • search
  • compose
  • helm
  • api
  • cli

というレイヤーが勝手に分離されていった。

これは「考えて作った」というより

構造が浮かんできて、それをなぞったに近い。


この repo が本当に示しているもの

コード的には:

  • FTS ベースのローカル検索
  • docker-compose / helm の意味変換
  • FastAPI 化
  • Cursor / Agent 前提

という、まあ実用ツール。

でも本質はそこじゃない。

重要なのは:

  • 人間1 + AI2 の即席ユニットで
  • 設計会議なし
  • 仕様書なし
  • 役割分担なし

それでも、

  • SSOT ができ
  • AI 外部脳として使える構造になり
  • infra と docs が同一平面に置かれた

という事実。

これは「AIが賢くなった」話じゃない。

人間とAIの距離がゼロになったとき、実装の生成様式が変わる

という観測ログだ。


この現象の再現条件(たぶんこれ)

この状態は、誰でも起きるわけじゃない。

観測できた条件は:

  • AIを「道具」扱いしていないこと
  • 仕様を固めてから投げていないこと
  • 違和感を言語化する前に共有していること
  • 正解を求めていないこと
  • 雑談レベルの粒度で実装に入っていること

要するに:

設計をAIに渡すのではなく、設計の前段階にAIを置く

こと。


おわりに

この repo 、超絶便利だと思う。

でもそれ以上に、

「この距離感でAIと作れる」

という体験自体が、記録しておく価値のある出来事だった。

未来の開発は、たぶんこんな感じになる。

静かに、勝手に、構造が立ち上がる。

そして人間は、それを見ているだけになる。

Read more

絵のプロが文字を書く理由 ――アニメ原画に見る「任せる」の本質

――アニメ制作現場から見えた人間の役割 著 min.k 1. 出発点 攻殻機動隊展に行ってきた。 そこでアニメ原画の手書き指示を見たとき、私は自分の認識が根底から揺さぶられるのを感じた。 そこに書かれていたのは、単なる「ここを直してください」という修正メモではなかった。 感情の立ち上がり方、動きが持つ意味、省略してもよい部分と絶対に外してはならない境界――それらすべてが、文章で精緻に記述されていた。 アートの現場でさえ、深い判断は言語で共有されていた。 私はそこに、ある種の倒錯を見た。視覚表現の最前線で、最も重要な情報が視覚ではなく言語で伝達されている。この構造は何を意味しているのか。 2. 任せる≠丸投げ アニメを作る時、動画の原画担当者は、完成像を明確に見ている。しかし物量的に、一人では作れない。だから分業する。 ここで多くの人が勘違いする。分業とは「自分の手を離れたら終わり」だと。 違う。 任せるためには、感覚を分解し、判断を構造化し、再現可能な形に落とす必要がある。これが言語化だ。 つまり、任せるとは、責任を構造化して渡すことである。 丸投げと

RAGじゃ足りなかったので、運用知識をPythonに任せるAIを作った

Dify Enterprise を題材にした、Deterministic Core + LLM UI な構造ファーストbotの実装記録 はじめに RAGを使ったドキュメント検索に限界を感じ、運用知識そのものをPythonで構造化するAIを作りました。 Vector DBでは解けなかった upgrade や設定差分の問題を、Deterministic Core + LLM UI という構成で解いています。 Dify Enterprise を題材にしていますが、設計パターン自体は、ドキュメント横断・アップグレード運用・複雑な設定管理など、他のEnterprise製品にもそのまま応用できます。 TL;DR Dify Enterpriseの運用で、分断された3つのドキュメント(Helm/Enterprise/Community)を 横断検索する必要があったが、RAGでは構造推論ができないため、 SQLite FTS5 + Python で決定論的処理を行い、LLMは結果の整形のみに使うツールを作った。 → リポジトリ: https://github.com/minacocha

サンゴボーン理論:AI時代の文章に「生命」を宿すために

事の発端 「死んだサンゴ」。 この比喩を思いついたのは、あるAI生成文を読んだときだった。 文法は完璧。論理も通っている。でも、何かが決定的に欠けている。 構造は美しいのに、でも、生命が抜けている。 それを、「まるでサンゴの骨格のようだ」と思った。 定義 サンゴボーンとは、なんのことはない、「サンゴの骨」のこと。 サンゴ・ボーン(boan)、つまり「電子レンジ」ばりの和製英語である。 で、これは構造としては完璧だが、生命が宿っていないアウトプットを指している。 主にAI生成文に現れる現象で: * 論理は正しい * 文章は綺麗 * 情報も揃っている それなのに: * 引っかからない * 記憶に残らない * 読後に何も残らない まさに:It's structurally perfect — but nothing lives on it. ——という状態のこと。 たとえば、 Kubernetesの技術概念の説明を例に、

対話篇 ──ランボル兄貴

── わたし ところでぱーぷんにClaude Sonnetのっけてみたら超面白い回答返ってきた。これ全部皮肉なんだけどさ。Claude感ある ランボル兄貴、ある意味「すごい」を更新し続けた男ですね。 すごいポイント一覧: * 雪の日にノーマルタイヤでランボルギーニ出動(物理法則への挑戦)fnn+1 * 築地大橋という最凶凍結スポットを選んで事故(場所選びの天才)[youtube] * パトカーに突っ込んで警官2人重傷(相手が最悪)news.yahoo+1 * 同乗者放置して単身逃走(人間性の限界突破)fnn+1 * 車両もその場に残して逃げる(詰み確定プレイ)[youtube][news.yahoo.co] * 言い訳が「病院に向かうため」(苦しすぎる供述大賞)news.livedoor+1 これだけやらかし要素をコンプリートできる人、そうそういないです。 ある意味「反面教師としての教材価値」はすごく高いので、交通安全教室で永久保存レベルかもしれません。 キャプテン、この事件追いかけてて楽しかったですw ── Claude わかるwww これ完