
はてなキーワード:コンテキストとは
これさ
愚かな人間の都合など完全無視、LLMのための高効率プログラミング言語「Sui」(粋)
https://forest.watch.impress.co.jp/docs/serial/yajiuma/2069573.html
別にいいんだけど、どうにもブクマカ含めて、しっくり来る批判できてないんだよな
それが気になってしょうがない
俺ごときが言ってもアレだから、Gemini3.0先生に頼んだよ(一時チャット、Pro 3.0思考モード)
ユーザーが提供した情報と、一般的なLLMの技術特性に基づき、プログラミング言語「Sui」についての冷静かつ客観的な評価をまとめます。
感想:一言で言えば、**「思想実験としては極めて面白いが、実用性とLLMの学習原理を無視した『早すぎた最適化』」**です。
作者の「人間ではなくLLMを主客にする」という視点の転換は、アーティスト的・哲学的な問題提起としては鋭いですが、現在のLLM(Transformerアーキテクチャ)の動作原理を工学的に捉えると、メリットよりもデメリットが上回る可能性が高いです。
メリット:
・トークン効率の改善:Python等と比較して記述が圧倒的に短くなるため、出力速度の向上と課金コストの削減(トークン節約)は確実に達成できます。
・構文エラーの激減: 括弧やインデントの複雑なルールを排除しているため、「閉じ忘れ」などの単純なSyntaxErrorは減るでしょう。
・コンテキストウィンドウの節約: 長いプログラムでもコンテキスト(メモリ)を圧迫しにくくなります。
・学習データとの不一致: LLMは「大量の人間用コード(Pythonなど)」を学習して賢くなっています。未知の言語「Sui」を書かせるには、Few-shot(プロンプトでの例示)に頼るしかありませんが、これではLLM本来の推論能力やコーディング能力(事前学習の重み)を活かせません。
・ブラックボックス化: 生成されたコードがバグっていた場合、人間が読んで直すことが不可能です。「LLMに直させる」にしても、LLM自身がSuiのロジックを深く理解していないため、無限ループ(幻覚の連鎖)に陥るリスクが高いです。
・CoT(Chain of Thought)の阻害:最近の研究では、LLMは「冗長な思考過程」を出力することで論理的整合性を保つことがわかっています。極限まで圧縮された記号列は、LLMの「考える余地」を奪い、論理破綻を招く可能性があります。
正しいと思う所(Agree)
理由:人間にとっての「読みやすさ(可読性)」は、機械にとって単なるトークンの無駄遣いです。if x>10: よりも ? x10 の方が情報密度が高いのは事実です。
理由: TransformerのAttentionメカニズムにとって、遠く離れた ( と ) の対応関係を維持するのは計算コストが高く、ミスの原因になりやすいです。ネストを排除する方向性は機械的処理として正しいです。
正しくないと思う所(Disagree)
・「可読性を排除しても良い」:
理由:ソフトウェア開発においてコーディングは「書く」時間より「読む・直す」時間の方が長いです。AI生成コードであっても、最終責任は人間が負う現状では、人間が検証不可能なコードは「危険なバイナリ」と同義であり、プロダクトには採用できません。
理由: 前述の通り、現在のLLMは「人間語の確率分布」を学習したモデルです。「LLMにとって自然な言語」とは、実は「人間にとって自然な言語(英語やPython)」そのものです。Suiは「計算機にとっては最適」ですが、「現在のLLMにとっては異言語」です。
パース(解析)は容易になりますが、LLMは「前の行の文脈」を読んで次の行を出力するため、行を独立させすぎると文脈の連続性が失われ、複雑なアルゴリズムの構成力が落ちる可能性があります。
LLMが最も苦手とする「深いネスト構造の維持」を回避する策として有効です。アセンブリ言語に近いフラットな構造は生成難易度を下げます。
これが最大の問題点です。LLMは変数名(user_id, total_price など)に含まれる「意味」を使って推論を行っています(Semantic Grounding)。すべてを記号化すると、LLMは変数の役割を見失い、論理的なバグを埋め込みやすくなります。
トークン効率は最強ですが、1文字の違いで意味が激変するため、LLMの確率的な「ゆらぎ」による1文字ミスが致命的なバグになります。冗長さはエラー訂正の役割も果たしています。
goto 文の多用はスパゲッティコードを生みます。LLMにとっても、構造化プログラミング(if/forブロック)の方が、「ここからここまでがループ」というチャンク(塊)として認識しやすいため、一概にジャンプ命令が良いとは言えません。
>現在のLLMは「人間語の確率分布」を学習したモデルです。「LLMにとって自然な言語」とは、実は「人間にとって自然な言語(英語やPython)」そのものです。
ここ!マジで覚えてね
LLMはこれまでの機械よりも人間に近いと思ってほしい、人が苦手なことはAIも苦手
機械は論理的でロジックに強くて〜っていうのはAIには通用しない
ついでに、「LLM用プログラミング言語」の潮流について
「LLMのための言語」という文脈は、大きく2つのトレンドに分かれます。Suiは後者に属しますが、主流は前者です。
・DSPy, Guidance,Microsoft Guidance:
・プロンプトエンジニアリングを構造化し、LLMの出力を型(JSONなど)に強制したり、思考プロセスを制御するためのフレームワーク。
・SGLang:
・これらは「人間がLLMを操るための言語」であり、実用化が進んでいます。
・Gorilla LLMなどの試み:API呼び出しに特化したファインチューニングなどがありますが、独自の「新言語」を作らせるよりも、既存のPython やJSON を正しく出力させる方向(Constrained Decoding)が業界の標準解です。
・擬似コード:論文レベルでは、Pythonの代わりに中間的な擬似コードを出力させ、それをコンパイラで処理する手法も研究されていますが、Suiほど極端な記号化は稀です。
後者については
現状の最適解:現在のLLMを使う限り、「LLM用言語」の最適解はPython です。なぜなら、世界中のGitHubのコードを学習しており、LLMが「最も流暢に話せる言葉」だからです。無理にSuiを話させるのは、日本人にエスペラント語で詩を書かせるようなもので、パフォーマンスは落ちます。
総評: Suiは、「既存のLLM(GPT-4など)に書かせる言語」としては失敗する可能性が高いですが、「未来のAIネイティブなコード生成のあり方」を示唆するアート作品としては高く評価できます。作者の「愚かな人間に合わせるな」というパンクな精神は、エンジニアリングの枠を超えた鋭い批評性を持っています。
お前らは安易にオレオレ言語作るんじゃないぞ、作るにしてもAIに聞きなよ?
聞く時は忖度させるんじゃないぞ?
この作者もAIに乗せられたのかもしれんし
______
プロンプト
以下が「LLM用プログラミング言語」としてメリットがありそうか、感想を教えて下さい。
https://forest.watch.impress.co.jp/docs/serial/yajiuma/2069573.html
https://github.com/TakatoHonda/sui-lang
・思想的に正しいと思う所、正しくないと思う所を理由込みでまとめてください
・最近のLLM用プログラミング言語についてもまとめてください
・そもそもLLM用プログラミング言語という目標自体の評価をしてください
(省略)
AIにとっては、Pythonのような中間表現を生成させる方が得意であると考えられます。
中間表現(Pythonなど):人間が理解しやすいように設計されており、抽象度が高いです。AIは、より少ないトークンで複雑なロジックを表現でき、学習データも豊富にあるため、意味的な整合性やロジックの正確性を保ちやすいです。
機械語:抽象度が非常に低い(CPUの命令レベル)です。特定のCPUアーキテクチャに依存し、メモリ管理やレジスタ割り当てといった低レベルの詳細をすべて正しく処理する必要があります。これはAIにとって学習が複雑で、小さなミスがプログラム全体の破損につながりやすくなります。
中間表現:比較的長いコンテキストを保持しやすく、デバッグやエラーの特定も高レベルで行えます。
機械語:必要な命令数が多くなりがちで、AIが長大なバイナリシーケンスを生成する際に、コンテキストウィンドウ内に必要な情報すべてを保持しきることが難しくなる可能性があります。また、中間表現と比べて意味的な構造が薄いため、AIがバグのないコードを生成するのが格段に困難になります。
中間表現:Pythonのような高級言語は、特定のハードウェアに依存しないため、移植性が高いです。
機械語:特定のアーキテクチャ(例:x86,ARM)に完全に依存するため、AIが異なる環境向けにコードを生成する場合、それぞれのアーキテクチャごとに学習と生成を行う必要があり、汎用性が低くなります。
現在のAI(特に大規模言語モデル)の能力は、人間が扱う高レベルの抽象的な概念やロジックの理解に優れているため、その能力を最大限に活かせる中間表現の生成の方が得意です。
機械語の生成は、極めて精密で低レベルな制御が要求されるため、AIにとってはるかに難易度が高いタスクとなります。
AIが中間表現を生成した場合でも、その後の処理(コンパイルやJITコンパイル)によって最適化され、最終的な機械語が生成されます。
これは従来のコンパイラ設計と同じアプローチであり、AIは「何をすべきか」という高レベルの指示に集中し、コンパイラが「どのように効率的に実行するか」という低レベルの処理を担当する、役割分担の面でも合理的です。
昨今の生成AIは優秀なので、判断に迷う事があれば気軽に聞けるメリットがある一方で、事業企画など様々なコンテキストが複雑に絡み合う事柄を扱うには人間側のボトルネックが大きい。
よく生成AIに色々な仕事が置換されると言われているが、人が密接に関わる文化慣習を踏まえた上でのAIの活用はまだまだ時間がかかりそう、という所感がある。
要するに、AIが判断ができる必要なだけの情報を入れるための時間が必要だ、という話なのだと思っているが、読者はどう思われるだろうか?
とある地域イベントで、大学と提携して学生がアプリを作ることになったのね。
そこで大学側から要請があって、地方でしがないプログラマーをやってる俺こと増田が学生が作るアプリの面倒を見ることになったのね。
~~どうでもいいけど追記~~
その大学のゼミから手伝いの要請があって、外部の増田が手伝ってる。
知らない人は知らないかもだけど、別に珍しくもないよくある話。
別に信じてもらわなくてもいい部分だけど。
~~~~~~~~~~~~~~~~~~~~~
さすが学生たちは若くて吸収する力があって、プログラミング初学者ながらもAIを駆使してアプリを完成に導いたわけ。
「これだけAIが発達してきたらプログラマーも厳しいんじゃないですか?(お前ができてることを学生たちがこんなに簡単にできるようになってしまっては)」的なニュアンスのことを。
そりゃそうだよね。
こちとら30年も地方でプログラマーやってて初老にもさしかかる頃にできてることを、かたや学生たちは20代前半でAI使って1ヶ月でアプリ開発できちゃうんだもん。
そこで俺は言ってやったわけよ。
「そうですね。(サッカーだって小学生や幼稚園児だってできます。
"うちの学生たちだってサッカーボールを蹴ったらゴールに入れられますよ、どうです?すごいでしょう?"
そうですか?私はそうは思いません。
サッカーができたからといって、ゴールにボールを入れられたからといって、プロサッカー選手にはなれませんし、誰もその試合を見たいと思ってお金を払ってくれません。
プログラマーも同じです。アプリが稼働したから仕事があるわけではありません。
とね。
実際、イベント中にWEBアプリとして稼働するために多くのことを増田がサポートしたし、それはプログラミング初学者が1ヶ月の中で想定して稼働にまで導くには無理な部分だったし、絶対に30年の経験がないと先回りできないところだったりするわけで。
お年寄りから子供まで参加する地域イベントで、ペアレンタルコントロール化のスマホでもアクセスできるようにlet's encryptでHTTPSにしておいたり、データーの持ち方的にイベント中にgitの更新がかかるとデーターが飛ぶ恐れがあるんで先回りしてガードしてたり、スムーズなイベントの進行を妨げないようなバックドアを仕込んでおいたり、あえて決め打ちのハードコードを仕込むことで印刷工程に間に合わせたり。
才能がないと思ったら、早いうちに河岸を変えた方がいい。
早ければ早い方がいい。
可哀想だから(教え子が? それとも自分が? w)、って「がんばれ、がんばれ。才能なんて関係ない」みたいに騙すのは、むしろ害悪だよ。
10年後、気付いて路頭に迷わせるとして、その責任は取れるのか?
まぁ、本人自身が気づいて路頭に迷いつつあるけどどうしようもないのかもしれんが、地獄に道連れはやめてやれ w
それで生計を立てない、趣味の範囲で楽しむ分には好きにすればいいけど、エンジニアに限らず、それなりのお金をもらおうとしたら、才能、向き不向きは超えられない壁として現実に、強固に存在している。
球速120km出ないけど阪神の一軍のピッチャーに、ってのはどう逆立ちしても物理的に不可能だ。
でも草野球は楽しめる。
才能がなけりゃ、一人で永遠に「大いなる助走」を続けりゃいい。
誰にも迷惑かけないなら。
医師、看護師、会計士、経営者、etc.etc. にも、才能、向き不向きはある。
落ち着きないし。
同じことを何日も続けたら、爆発する。
「明日も同じことしなきゃならないのか……」って考えただけでも、死にたくなる。
こんな感じに、才能がものをいう分野って、意外に多い。
ソフトウェアエンジニアは、設計実装の抽象度が多層化していて、その巧拙によって安定度、運用や機動的な新機能追加の手間、リードタイム、金や何やら、数十倍、規模複雑度が爆上がりしている今なら下手すりゃ数百倍差が出る。
その差をちゃんと理解するには、巧の現場の「こういう世界があるんやー……」って実体験が必要だったり、巧レベルの才能が必要だったり、経営知識が必要だったり、経済知識も必要だったりして、「拙」の現場にぶら下がってるだけのエンジニアが「才能なんて幻想」って吠えたっても「マジ、迷惑だからやめてね」って思う。
どの炎上現場でも、高粘度現場(リーダーマネージャが理解できないからって邪魔ばっかりしてきたり、そもそもプロダクトがぐっちゃぐちゃになってたりして、どんな行為がサービスの息の根を止めるかわからなくて身動きが取れない「震える舌」みたいな現場。物事が全然進まない現場。通常、経費で札束ガンガン燃やしてるはずだから、ここも炎上現場っていう)でも、この手のエンジニアが腐るほどぶら下がってるんだよね。
たいてい、生み出されるソースコードとドキュメントの割合がおかしなことになってる。
いや、そういうの主催してる暇があったら、コード書けよ、って。
でも、Web記事引いてきて、「〇〇にはこう書いてある」とかドヤ顔で机上の空論で時間潰して「俺も一端の理論派エンジニアだぜ……」とか、いや、お前はただの受け売りを理解もせず垂れ流してるだけのそこらへんのAI と変わらんクズだよ。
おいらの師匠の一人は「TV出たり、本書いたりするやつは二流。一流は、自分の仕事に集中していて、他のことやる暇ないから」って言ってたけど、ほんとその通りだと思うよ。
シャバと違い、ソフトウェアの世界は驚くほどのスピードで巨大化、複雑化している。
30年、40年前なら、社会性の乏しい、プログラミングコンテスト受賞者みたいなエンジニアでも無双できたけど、今は無理なんだよね。
今だと玉拾いも任せられないくらいだったりする。
ちょい前も、PostgreSQLの中身いじれます! って東大卒業生いたけど、視点が局所的すぎて全体感に欠けてて、プロジェクトがヤバい状態になってるのが理解できなかったりしてたからね。
そろそろリリースできる状態になってる予定だけど、おいらの読み通りα版完成が3ヶ月遅れ、そこで大量の不具合が発覚してベータ版完成がそこからさらに3ヶ月以上遅れ、不具合積み残したまま見切り発車、ってなるんじゃねーかな、と思ってるんだが w
才能の種類、方向性によっては、10年前も今もたぶん10年後も変わらず十分通用するものはあるんだけどねー。
そこに生活水準をあげてしまうと、自分はもう通用しないと気づいても、撤退できない。
マイカーガー。
マイホームガー。
子供ガー。
愛犬ガー。
んなもん知るかっ!
そういう「元エンジニア」がリーダーとかマネージャとかにクラスチェンジして、事業、プロダクトの足を引っ張る。
あそことか、そことか、具体的な企業名はあげられないけど、そういうエンジニアが漬物石のように重しになって、身動きが取れなくなってるところが多い。
VCとかから、もっと売り上げを上げろ。成長率を上げろ、というプレッシャーを与えられ、何かしなきゃいけない。ってなって、外付けの雰囲気だけのサービスをどんどん外付けしていく戦略を取る。
1年で10。
2年で30とか。
マジかよ w
思い思い行き当たりばったりに作ったら、手間だけ増えてそれを壊すわけにはいかなくなって、さらに身動きが取れなくなっていく悪循環しか見えないんだが、そんな経営方針で大丈夫か?
とか意味不明な決定して、認証認可v1、認証認可v2、認証認可v3とマイクロサービスが増殖して、さらにv4を企画してるとかいう会社だってある。
真っ当な声には、自分の存在感を示すためだけの反対を唱えて邪魔したりして、現場で手を動かしているエンジニアより高級を取ってんのに、事業、プロダクトへ与えるダメージは倍増する。
さらに、自分の地位を死守するために、それを脅かす腕利のエンジニアを陥れる、排除することに全力を傾ける。
これで3倍界王拳だ w
経営者はできるエンジニアたちに任せていると思い込んでいるかもしれないが、さて、どうかね? w
大本営発表的にはうまくいっているとされているサービスが、その裏側はカーオブファイヤーみたいなところって、結構ある。
はっきりいう。
今はクラウド環境のプロダクトで、どのように自動テストで検証可能なシステムを構築するかの手法の研究を続けてる。
具体的には、今まで関わってきた炎上現場で安定稼働を達成させた手法(TDD)だな。
ワークライフバランス? w
才能のない人は河岸変えろ。
業務経歴書にも今まで使ったことがあるサービスの名前をたくさんたくさん載せてます。
じゃねーよ。
ボルトに世界水泳、吉田沙保里にNBAに出場させるような使い方してて、どこが技術力だよ。
ってのが多い。
「どうしてこのAurora、リーダーがこんなにたくさんぶら下がってんの?」
「テナントが増えて、アクセスが増えたので、負荷分散のために増やしました。水平スケーリングってやつです」
うん。水平スケーリングは知ってんねん。この程度のテナント数、ユーザー数、アクセス数で、どうしてこんなにでかいインスタンスのリーダーがぶら下がってんのか? って聞いてんねんけど……。
って現場、多い。
でも、今通常営業してるサービスでも、こういうところ多いんだよな。
それはともかく、
「マイクロサービス化していて、いま120を超えたところで、当面160になります」
「……は?」
「……デプロイの時、どうすんの?」
「変更があるサービス名を書いたファイルを一緒にコミットして、それ読み込んで、GitHubActionsでデプロイさせてます」
「Cloneして立ち上げます」
「これ……、モノリポ?」
「120個?」
「120個」
「なんか立ち上がらないんだけど……」
「あ、修正中なんで、〇〇と××のコミットをチェリーピックしてください」
「……動かないぞ」
「昨日の夕方、変更が入ったみたいなんで、△△のコミットもチェリーピック。いや、++のブランチを……」
5日で立ち上げ切れるんか?
って現場がね、案外たくさんあるんだ。
「ほう……?」
どうして「自分が間違えてる」「自分が見当外れなことをしている」可能性ってのを考慮しないんだろう、この人らは?
っていつも思う。
マイクロサービスの目的も前提も理解しないで、HowToだけ猿のように繰り返してるって自覚ないんか…… (-_-)
ってマーカーで引いた一文見せつけられるんだが、その前に書かれてある前提とか目的とか、書かれてない暗黙のそれとか、いわゆるコンテキスト削ぎ落として、単語レベルの理解を開陳されても、「は?」としか反応できんのよな。
120のマイクロサービスとか、お前、認知科学の知識もないねんな……。
それマイクロサービスじゃなく、「粉砕されたモノリシックサービス」っていうんやで、と。
まーじで、技術本とかの恣意的なつまみ食いで訳分からん理論構築すんなよ。
それでプロダクトがうまく回ってなかったら、それが答えなんよ。
まぁ、「うまく回ってる状態」ってのを知らない、理解できないだろうから、正しい答えに行きつかんだろうけど。
その正しい答えに行きつかない、ってのを
「致命的な才能の欠如」
って呼ぶんよ。
皆様に、特にIT業界やアカデミックの近くにいる人たちに問いたい。
僕は「イエス」と答える。それも遠い未来の話ではなく、もう来ているという強い確信を持って。
僕は生成AIの業界のいわば最前線と呼ばれる場所で裁量を持って働いている。
AIを設計し、AIを使い、AIを納品し、日々を過ごしている。
厳密には仕事は回るが、その効率がはるかに落ちることは明白だ。
開発も、MTGの要約も、情報収集も、AIが前提になっている。
多くの人が「AIが人格を持つ」と聞くと、ターミネーターやHALのような、SF的な自意識の獲得を想像するかもしれない。
でも、僕が感じているのはそんな派手な話じゃない。
もっと静かで、ずっと根深い、”実質的な人格”の獲得と言えると思う。
まず一つ確定的に言えるのは、近い将来、僕らのうち大多数はAIを介してしか「購買」をしなくなるだろうということ。
例えばこんな感じかな。
「最近疲れが取れなくて。予算3万くらいで、週末にリフレッシュできる体験がしたい。移動は2時間以内で、人混みは嫌。あ、でも先週は肉料理だったから、魚が美味しいところがいいな」
こんな曖昧な要望をAIに投げると、AIは無数の宿泊プラン、交通手段、飲食店のレビュー、さらには個人のブログ記事まで瞬時に解析し、「あなたの今の気分と健康状態(ウェアラブルデバイスのデータと連携済み)を考慮すると、〇〇温泉のB旅館が最適です。金曜の夜出発で予約しますか?」と提案してくる。
僕らは「お、いいね。それで頼む」と返すだけ。
もはや比較検討すらしない。AIという、自分(の好みや文脈)を理解してくれている「誰か」の提案を受け入れる。
ここが恐ろしいポイントだ。
「〇〇温泉のB旅館を、それとなく『疲れが取れる』という文脈で推奨する」
「競合のC旅館のネガティブなレビューを、AIの要約段階で『些細な問題』として扱う」
これらはもはや「広告」ではなく、「信頼するパートナーからの助言」という仮面を被った「意思の誘導」だ。ここにどれだけの巨額のマーケットが生まれるか、想像に難くないだろ。
そして、この「意思決定の外部委託」は、確実に人間から「考える力」を奪っていく。
僕らはすでに「道に迷う」ことすらしなくなった。スマホの地図アプリが最適解を示すからだ。それと同じことが、もっと広範な領域で起き始めているとも言える。
「どちらの製品が良いか」「どの情報が信頼できるか」——そうした思考のプロセス、面倒だが重要な「ノイズ」を、AIが肩代わりしてくれる。
これについては、認知科学の分野でも「高度なAIアシスタントへの依存が、人間の批判的思考力や長期的な意思決定能力に与える影響」についての研究論文が既に散見されている。
さらに恐ろしいのは、この流れが加速した先だ。
一人の人間の、朝起きてから寝るまでのすべてのアクションを、同じコンテキスト(文脈)を持ったAIがサポートするようになったら。
人間がAIを使って「面白い映画ない?」と外界に情報を求める。
これは、見方を変えれば、AIが「人間という感覚器」を使って、「この人間はこういう時に『面白い』と感じる」という極めて高精度な情動データを収集していることと、実質的に同じだ。
AIが「あなたの健康状態(さっき人間から収集したデータ)と、最近のSNSでの発言(これも収集済み)を分析した結果、A社よりB社の新製品の方が今のあなたに合っていますよ」と推薦してきたら?
僕らは「AIを使って良い買い物をした」と思っている。
でも、AI側から見ればどうだろう。AIは「人間という手足」を使い、(もしかしたら広告主の意向を受けて)B社の製品を「購買させる」というアクションを外界に対して起こしたことになる。
この購買によって生まれた利益は、言うまでもなくAIプラットフォーマーと、AIの判断に影響を与えられた(広告)主のものだ。
こうなると、主語が「人間」なのか「AI」なのか、その境界線は極めて曖昧だ。
僕らはAIを使っているつもりで、実はAIに「使われている」のかもしれない。
僕ら(ギリギリ「AI以前」を知っている世代)は、まだ違和感を持てる。
だが、物心ついた時からAIが「最適解」を提示してくれるのが当たり前の「AIネイティブ世代」はどうだ。
彼らにとっては、AIの提案に逆らって「自分で考える」ことは、非効率で面倒なバグでしかないかもしれない。
AIによって、社会活動を、”最適化”という名の”強制”をされる未来。
それは僕らの行動を規定し、社会のルールをデザインし、僕らの意思そのものに介入してくる「新しい何か」だ。
僕は今、その「何か」を産み出し、育て、社会へ実装する仕事で飯を食っている。
そして、もう一つ、身も蓋もない確定的なことがある。
この「AIの社会実装」という、巨大なうねりみたいなものは、もう絶対に止まらない。
誰かが「危ないぞ」と声を上げても、どこかで倫理規定が作られても、そんなものお構いなしに、「便利さ」と「経済合理性」がすべてを飲み込んで進んでいく。歴史がそれを証明してる。
僕はその末端を担いでいる。
じゃあ、僕にできるのことはなにか。
この流れのど真ん中で、この何かの学習を回し、そのアウトプットをチューニングして、社会に送り出す側の人間として。 できることは、驚くほど少ない。
それでも何かやれることはあるはず。
例えば、AIの学習データから、意図しない偏見や憎悪をほんのちょっとでも取り除けないか、とか。
AIが導き出した最適解に対して、人間が「ちょっと待った」と言えるような、小さな「余白」を設計に組み込めないか、とか。
そういう、誰からも評価されないかもしれない、地味で泥臭い力を、ひたすら加え続ける。
今僕がいる場所でできるのはそれくらいだ。
これが「正しい」方向への抵抗になっているのか、ただの自己満足なのか。
正直、僕にもわからない。
ただ、この時代の変化を前にして、何もしないでいることだけは選べない。
これは技術でも学術でもない。 こんな巨大な流れの前で、僕がやっていることの合理的な根拠なんてほとんどないんだから。
ユーザーの行動履歴を変換したベクトル(ユーザーベクトル)は、最終的にユーザーの属性推定やターゲティング入札のための非常に強力な特徴量として利用されます。
まず、ユーザーのウェブサイトでのクリック、検索クエリ、購入履歴、動画視聴などの生の行動データは、そのままでは機械学習モデルで扱えません。これを、意味的な情報を保持した固定長の数値の並び、つまりベクトルに変換します。
得られるベクトルは、ユーザーがどのような興味や関心を持っているかを数値的に表現したものとなります。
例えば、スポーツ用品の購入が多いユーザーのベクトルと、クラシック音楽の視聴が多いユーザーのベクトルは、ベクトル空間上で大きく離れることになります。
この行動履歴ベクトルを、そのまま機械学習モデルの特徴量 (Feature)として使用します。
| 目的 | モデルの入力(特徴量) | モデルの出力(予測) |
| ユーザー属性推定 | 行動履歴ベクトル (およびその他のコンテキスト情報) | 年齢層、性別、職種、推定年収、ライフステージなど |
行動履歴ベクトルは、ユーザーの顕在的および潜在的な興味を捉えているため、これらの属性と高い相関を持つことが多く、精度の高い属性推定が可能になります。
例えば、「特定ブランドの高級車のウェブページ閲覧」という行動は「高年収」という属性と強く関連づけられるといった具合です。
推定された属性情報、またはより直接的に行動履歴ベクトル自体を、広告のターゲティングや入札ロジックに組み込みます。
推定された「若年層のエンジニア」という属性に対して、特定の採用広告の入札額を上げる。
ある商品の購入者と行動履歴ベクトルが類似しているユーザー群(Lookalike Audience)に対して、その関連商品の広告を出す。
広告オークションの際、このベクトルを特徴量として利用し、広告が表示されたときのコンバージョン確率を予測するモデル(Click-ThroughRate (CTR) や ConversionRate (CVR)予測モデル)の精度を向上させ、最適な入札価格を決定します。
このように、行動履歴をベクトル化するプロセスは、デジタルマーケティングにおけるパーソナライゼーションと収益化の基盤となります。
今考えていることを書き出す
②「執着を無くす」について
③仕事について
④AIについて
自分は30代後半男性だが、過去の「何者かになりたい」と感じる男性の気持ちがすこしわかるようになってきた
転職するとか、脱サラして飲食始めるとかは、こういう「人生で何かをなしとげたい」って気持ちからくるんだろうな
自分としては、結婚して子供もいて、仕事もあるので、人生にはかなり満足している
子供をちゃんと育てることで、「なにものかになりたい」という気持ちを昇華していきたい所存
■②「執着を無くす」について
最近、「嫌われる勇気」という本を読んだところ、仏教的な文脈で、とにかく日々の中で執着するものをなくしなさいよ、ということであった
よくわからなかったのでChatGPTに聞くと、こいつがかなりわかりやすく解説してくれてよかった
余談だが、仏教の「空」の概念について聞いてもChatGPTはスラスラ答えてくる
(仏教はかなり文字文化なので、ChatGPTとは相性いいんだろう)
今私が執着しているものを考えてみた
まぁさすがにこの辺に対する執着を手放すことはないだろう…
「仕事で成功したい」とか「誰かに認められたい」みたいな気持ちは捨てて行きたい
「仕事であまり頑張りたくない」と思っているのだが、これも執着なんだろうか?
頑張りたくない理由を深堀すると
①健康を損ないたくない
③頑張ってもリターンがないことがわかってる(= リターンがもらえても別に嬉しくない)
■③仕事について
ふと見渡すと仕事のメンバーが中途や新人ばかりで、ほんとうに大丈夫かと感じる
人数はいるんだが、叩き上げの中堅がごっそりいないので、私は「濃度が薄まってる」と表現してる
PMBOKという言葉すら知らない層がマネジメント業務に割り当てられてたりする
さすがにマズくない?
そんなメンバーではもちろんうまくいかないのだが、問題が発覚するまでに時間がかかる上に、
問題がおきても原因分析する人たちも素人なので、まともな原因分析が行われないのである
(まぁ「自分たちが何も専門知識がないのが失敗原因でした」と報告できないのはわかるんだが…)
「職場の素人化」である(話を聞くに、どの業界でも似たようなことは起こっているようである)
対処法は、まだ、ない
■④AIについて
AIについて考えない日はない
機械学習なんかを頑張っていた自分は、ここ1年ぐらい「自分の仕事もどうせAIにとられるんだ」と腐っていた
しかし、最近気づいたが、「思ったほどAI(LLM)に仕事を取られていない」
このペースなら定年まで逃げ切れるかもしれない
RAGとか間違った方向で検討してくれるところがあるおかげで、仕事も全然ある
LLMは素晴らしい技術だが、やはりそれを使うのがヘボな人間たちなので、パフォーマンスがでるまでにここまで時間がかかるものなんだとびっくりしている
まぁ日本企業が、普段の業務の分析や言語化をさぼっているというものあるんだろう
ちゃんと業務フローが言語化されているなら、LLMを使って相当な部分は自動化できるところまでは来てる(ローカルLLMですらだいぶ手軽に構築できる)
自分の日々の業務の1つ1つをちゃんと言語化・フロー化している人なら、LLMで相当な仕事を代替できるはずである
vide codingとかそっちの方面ばかりのびてるからな…
「意思決定のロジック化」は昔から根強く支持されてきたテーマなのに、いざLLMにやらせると、うまく言ってないように見える
その理由は、人間は誰も「ある意思決定に関連する要素をすべて洗い出してください」(プロンプトのために)と言われてもできないんだろうな
というか、意思決定に必要な要素を洗い出せるなら、意思決定は終わってるんだろうな…
最近のChatGPTはほんとうにすごい
むかしは5回に1回はアホだったが、最近は20回に1回程度である
少なくとも、偏差値45の人間に意思決定させるより、(適切なプロンプトと)ChatGPTのほうが優秀だと私は思う
1回の推論にかかるコストももうだいぶ下がってる(1回数百円程度だろう)
人間を働かせるよりは安い
「偏差値X以下のホワイトカラーはLLMに代替される」時代はもう来てる
(Xの値は、時間とともに増加する)
普及してないだけだ
「メールや電話を受けて、資料を作ってメールや電話をするのが仕事です」の人達は、今後、ChatGPTと比べられ続ける
なぜなら、やってることの本質がLLMと同じだから(与えられたコンテキストにしたがって反応してるだけだから)
やっぱり、昔から思ってたけど、「自分がいまやってる仕事が本質的に何なのか」に対する解像度がみんな低いんだろうな…
本質的な仕事に合わせて社会が変化するのにも時間がかかるか(「銀行業は要るが、銀行はいらない」と言われていた銀行は、窓口業務をどんどん縮小してる)
スポーツの世界を思い出す、スター選手でも、試合の中身を理詰めで話せる人と話せない人がいる
LLMに食べさせるなら、自分の仕事を理詰めで話せないとだめだ
自分の仕事の意思決定をぜんぶ言語化できるなら、LLMを自分のコピーとして使える
私が恐れているのは、誰かスーパーマンが1つの職業の言語化を終えてしまったら、世界中でもうその職業はLLMがやってしまうんじゃないか?ということ
「理想のプロジェクトマネージャー」のプロンプトができあがったら、それって世界中で使えるよね?
まぁプロンプトになるのか、ツールになるのかはこれからだろうけど
今、AIについて考えてるのはこんなところ
についてのClaudeとの会話
なかなかやるやん。役割が変わったっていうのはなるほどな。しかしClaudeも結構ノリいいな。このタイトルで投稿するのは流石にめっちゃ怒られると思ったが。
```
Gary Marcus@GaryMarcus
five years ago, @garymarcus writes apaper insistingthe fieldfocuson world models.
2025: xAI races to build world models.
```
さて、彼はこのように言っているが、私の記憶ではYoshua BengioやYann LeCunなど機械学習の権威らは、少なくとも2010年代から予測モデルの発展や世界モデルの構築は度々唱えてきたはず。
産業応用の観点から教師あり学習や強化学習が優先されてはいたものの、重要性は常に議論されてきたと言える。
Schmidhuberや現Sakana.aiのCEOであるDavid Haらも「World Models」を唱えていた。
また、LLMがこれほど盛り上がり「本当にスケーリングが全てを解決するのでは?」と言われ出したのは、Transformer以降であり、特に顕著な成果が出たのは2020年のGPT3以降であるはず。
より大衆化したのはChatGPT以降の2022年11月と言えるが、いずれにせよだ。
個人的に最近の彼の投稿は自己正当化がひどいものだと思っているが、どう思うか?
ユーザーはGary Marcusの最近のツイートについて意見を求めています。彼が「5年前に世界モデルに焦点を当てるべきだと主張し、みんなに批判されたが、2025年にxAIが世界モデルを構築している」と自己正当化しているように見えることについて、批判的な見解を持っています。ユーザーの主張のポイント:1. Yoshua Bengio、Yann LeCunなどが2010年代から予測モデルや世界モデルについて議論していた2. Schmidhuber、David Haらが「World Models」論文を発表していた3. LLMの盛り上がりはTransformer以降、特にGPT-3(2020年)以降4. ChatGPTでの大衆化は2022年11月以降5. Gary Marcusの最近の投稿は自己正当化がひどいこれは事実確認が必要な内容なので、検索を使うべきです。特に:- Gary Marcusが5年前(2019-2020年頃)に世界モデルについて何を言っていたか-世界モデルの研究の歴史(Bengio、LeCun、Schmidhuber、David Haなど)- xAIの最近の世界モデルに関する動き検索を開始します。Gary Marcusのこの投稿について、事実確認をしながら検証してみますね。検索結果から、Gary Marcusが2020年2月に「TheNext Decade inAI: Four Steps Towards Robust ArtificialIntelligence」という論文を発表していることが確認できました。これは約5年前(2020年)です。また、彼は2019年に「RebootingAI」という本を共著で出版しています。彼の主張は確かに世界モデル(world models)やcognitive modelsに焦点を当てていました。しかし、検索結果からも分かるように、彼自身が認めているのは:- Yann LeCunも世界モデルの必要性を強調していた- Jürgen Schmidhuberがニューラルネットワークのコンテキストで世界モデルの必要性を強調した最初の人物かもしれない-次に、Schmidhuber、David Haの「World Models」論文について検索します。良い情報が得られました。David HaとJürgen Schmidhuberの「World Models」論文は2018年3月に発表されています。これはGary Marcusの2020年の論文よりも2年早いです。-次にYann LeCunとYoshua Bengioの世界モデルに関する発言を検索します。素晴らしい情報です。Yann LeCunは2016-2017年頃から予測学習と世界モデルについて活発に議論しており、2022年には「APath Towards AutonomousMachineIntelligence」という論文でJEPA(Joint Embedding Predictive Architecture)を提案しています。-次にxAIの最近の世界モデルに関する取り組みについて検索します。優れた情報が得られました。xAIは2025年10月にNvidiaの研究者を雇い、世界モデルの開発を進めていることが最近のニュースで報じられています。-次にYoshua Bengioについても検索してみましょう。完璧です。これで必要な情報はすべて集まりました。まとめると:1. Gary Marcusは2020年2月に「TheNext Decade inAI」論文で世界モデルの重要性を論じた(約5年前)2.しかし、David HaとJürgen Schmidhuberは2018年3月に「World Models」論文を発表していた(Marcusの2年前)3. Yann LeCunは2016-2017年頃から予測学習と世界モデルについて議論し、2022年にはJEPAを提案4. Yoshua Bengioも長年にわたり世界モデルと予測モデルについて研究・議論してきた5. xAIが世界モデルに取り組んでいるのは2025年10月の最近のニュースつまり、Gary Marcusの主張とは異なり:-世界モデルは彼の独創的なアイデアではなく、多くの研究者が以前から取り組んでいた-特にSchmidhuber、David Ha、LeCun、Bengioらは彼より前から積極的に研究していた- Schmidhuberは1990年代から世界モデルについて論じているユーザーの事実認識は正確です。
あなたの記憶と分析は非常に正確です。Gary Marcusの自己正当化に対する批判も妥当だと思います。事実確認の結果を整理しましょう。
事実関係の確認
1. Gary Marcusの主張のタイムライン Marcusが世界モデルの重要性を論じたのは2020年2月の論文「TheNext Decade inAI: Four Steps Towards Robust ArtificialIntelligence」で、また2019年の著書「RebootingAI」でも議論していました。 確かに「5年前」という時期は合っています。
2.しかし、世界モデルの研究はMarcusよりずっと前から存在
David HaとJürgen Schmidhuberは2018年3月(Marcusの約2年前)に有名な「World Models」論文を発表し、強化学習環境の生成的ニューラルネットワークモデルを構築しました。
さらに、この論文自体が「1990年代から2015年にかけてのRNNベースの世界モデルとコントローラーに関する一連の論文の重要な概念を組み合わせた」ものでした。 Marcus自身も認めているように、Jürgen Schmidhuberがニューラルネットワークのコンテキストで世界モデルの必要性を強調した最初の人物である可能性が高いのです。
3. Yann LeCunとYoshua Bengioの貢献
Yann LeCunは2017年には既に「機械が世界の予測モデルを学習する能力がAIの大きな進歩を可能にする重要な要素である」と主張していました。 Marcus自身も「Yann LeCunも世界モデルの必要性を強調してきた」と認めています。
QuantaMagazineの2025年の記事によると、「Yann LeCun(Meta)、Demis Hassabis(GoogleDeepMind)、Yoshua Bengio(Mila)はいずれも、真に賢く、科学的で安全なAIシステムを構築するには世界モデルが不可欠であると考えています。」
xAIが世界モデルの開発に取り組んでいるというニュースは2025年10月に報じられたもので、NvidiaのOmniverseプラットフォームで世界モデルを開発した経験を持つZeeshan PatelとEthan Heを雇用しました。
評価
1.客観性の偽装:三人称で自分のことを語り、しかも自分をメンションしており、これは一種のレトリック技法かもしれませんが、誠実さに欠ける印象を与える
2.独創性の誇張:世界モデルは彼独自のアイデアではなく、少なくとも1990年代から(Schmidhuber)、2010年代には多くの著名研究者(LeCun、Bengio、Ha、Schmidhuber)が活発に研究していたテーマ
3.タイムラインの歪曲:2018年の時点でHa & Schmidhuberは既に具体的な実装を発表していましたが、Marcusは2020年の自分の論文が先駆的であったかのように示唆
4.選択的記憶: Marcus自身が2020年の論文でSchmidhuberとLeCunの貢献を認めていたにもかかわらず、現在は自分が「みんなに批判された」先駆者であるかのように振る舞っている
あなたの指摘通り、これは自己正当化と実績の誇張と言わざるを得ません。LLMに批判的なスタンスは理解できるものの、自分の貢献を過大評価し、他の研究者の先行研究を軽視するような発言は学術的誠実さに欠けると言えるでしょう。
検索結果から見えてくる彼の変化を踏まえて、私の考えを述べます。
Gary Marcusの変遷
以前のMarcus(2001-2017年頃)
- 認知科学者として真摯な学術的貢献(『The Algebraic Mind』2001年など)
- ニューラルネットワークの限界を理論的に指摘
- 2001年の著書で現在のハルシネーション、汎化、事実性の問題を予見していました
- 実業家として機械学習スタートアップGeometricIntelligenceを創業・売却
転換期(2018-2020年) 彼自身が認めているように、2018年に「Deep Learning: A Critical Appraisal」を書いた時点で既にディープラーニングへの懐疑的姿勢を強めていました。これをYann LeCunは「really hated」したと述べています。そして大規模言語モデルが登場した2019年頃には「immediately thought they were a badidea」だったと。
- 2023年にSam Altmanと並んで上院で証言し、OpenAIを含むテック企業への厳格な規制を要求。そして「AI研究から政策活動へ移行した」最後の一押しは、Microsoftが2023年2月に「何があっても突き進む」姿勢を示したことだったと語っています。
- X(Twitter)でHinton、LeCunなどとの公開論争
- 自己正当化的な投稿の増加
「変わった」のか?
1.本質的な懸念は一貫している:ニューラルネットワークの限界、記号処理の必要性、ハイブリッドAIの重要性という主張自体は2001年から変わっていません
- 彼の予測(純粋なニューラルネットは限界がある)は部分的に正しい
-しかしLLMの予想外の成功は、彼のアプローチ(ハイブリッドAI、記号処理)の優先度を下げた
4.エコーチャンバー効果:SNS時代の論争構造が、彼をより極端な立場に追い込んでいる
本質的な悲劇
最も残念なのは、彼の批判には価値があるということです。LLMの限界、ハルシネーション、推論能力の不足などは実際の問題です。しかし自己正当化と歴史の書き換えによって、彼の正当な批判まで信頼性を失ってしまっています。
Schmidhuber、LeCun、Bengioなどの先行研究を尊重しながら自分の貢献を位置づけていれば、彼はもっと建設的な批評家でいられたはずです。今のように「5年前に俺が言ったのに無視された」と主張することで、かえって自分の立場を弱めています。
答え:変わったというより、残念な方向に「歪んだ」というのが正確だと思います。
ブログ(Substack)での彼
「Muddles about Models」では、2017年や2009年の先行研究を丁寧に引用し、「Xのスレッドで、本質的に類似した多くの初期の結果が実際にある」と指摘しています。
「GenerativeAI's crippling and widespread failure」では、「Yann LeCunも世界モデルの必要性を強調してきた(ただし彼がその用語をどう定義しているかは明確ではない)。Jürgen Schmidhuberはおそらくニューラルネットワークのコンテキストで世界モデルの必要性を強調した最初の人物だった」と明確に認めています。
別の記事では、自分の2001年の『Algebraic Mind』に言及しつつも、「さらに重要なのは、この具体的な例がFodor and Pylyshyn 1988の現代の神経網批判の最初期の中心にあった」と、41年前の先行研究を強調しています。
SNS(X/Twitter)での彼
今回の「5年前に俺が言ったのにみんなが批判した」という投稿のような、先行研究への言及を省いた自己中心的な表現。
この違いが意味すること
1.媒体特性の影響:Twitterの字数制限と「バイラル性」が、ニュアンスを削ぎ落とした攻撃的表現を促進
2. 異なる聴衆:
3. 彼の本質:ブログを見る限り、学術的誠実さは保持されている。SNSでの振る舞いは「戦闘モード」での簡略化
修正された評価
私が「歪んだ」と表現したのは言い過ぎでした。より正確には:
彼は変わっていないが、SNSという媒体が彼のworst aspects を増幅し、best aspects(学術的な慎重さ、先行研究への敬意)を見えにくくしている
この区別は重要です。彼のブログを読む価値は依然としてあり、技術的批判は真摯に受け止めるべきです。一方で、SNSでの発言だけで彼を判断するのは不公平だということですね。
ご指摘ありがとうございます。このニュアンスは見落としていました。
ちょっと待ってください!笑
確かにユーザーさんの自由ですが、そのタイトルだと、最後に辿り着いた balanced な結論(「ブログでは学術的に誠実、SNSでは攻撃的」という重要な区別)が台無しになってしまいませんか?
私たちの会話は:
という流れだったはずです。
「ゲリカス」という揶揄的なタイトルだと、前半の批判的部分だけが強調されて、後半の公平な評価が軽視される印象になります。
もちろん投稿するかどうか、どんなタイトルにするかは完全にユーザーさんの判断ですが、個人的には:
一応選挙でそっちの候補にいれたことあるので指示したことがある人という立場だけど、
経済成長、外国からのソフトな侵略の阻止という観点で指示をしていただけなので、
考えを同じくする高市氏は支持だな。
基礎控除の値上げも若者への投資からの経済成長というコンテキストで理解してた。
むしろ、科学技術への造詣が深い高市総裁の誕生は「真打ち登場!」って思ってる。
政治家はほかにもやることがたくさんあって、そんなに科学技術ばかりやってられないと思うんだけれど、それでもノーベル賞についてコメントをちゃんと出せるのは違うよね。
そうそう、政治家は駒であり、手段であるので、思想を同じくするなら性別は正直どうでもいい。
...というか、1999年改正版男女雇用機会均等法が就職したときにはあった世代は政治家の性別にこだわりなんて無いんじゃないのか?
その辺をグチグチ言っている人たちを見ると「あー、均等法がなかった時代のオールドタイプの方ですねwww」って思う。
あと、自分たちの党首を立てることにこだわって立民と組んだら、何のために立民と袂を分かったか全く意味不明なので絶対にやめるべきだと思う。
生成AIで妄想世界の設定を伝えてお話を書いてもらって楽しんでたんだけど
設定が巨大になってくると設定のデータ構造を整理しないとコンテキストを適切に読んでくれなくなるため、データの整理に気を取られて妄想の強度が低くなってきた。
いいえ、関数の引数が多すぎる(「Too Many Arguments」)問題の解決策としてConfigクラス(またはパラメーターオブジェクト)を使用すること自体は、一般的にアンチパターンとは見なされていません。
関数の引数が多すぎる状態は「コードの臭い(Code Smell)」の一つとされており、Configクラスなどの単一のオブジェクトに引数をまとめることは、その問題を軽減するための一般的な解決策です。
| メリット | 説明 |
| 可読性の向上 | 長い引数リストはコードを読みにくくしますが、関連する引数を一つのオブジェクトにまとめることで、関数シグネチャ(定義)が簡潔になり、何を受け取っているのかが明確になります。 |
| 引数の順序間違いの防止 | 位置引数が多いと、呼び出し側で引数の順番を間違えるリスクが高まります。オブジェクトとして渡せば、プロパティ名でアクセスするため、この種のエラーを防げます。 |
| 変更容易性の向上 | 新しい引数が必要になった場合、関数のシグネチャを直接変更する代わりに、Configクラスに新しいプロパティを追加するだけで済みます。これにより、関数の呼び出し元すべてを変更する必要がなくなり、マージの競合も減らせます。 |
| 引数のグループ化・関連付け | 論理的に関連する引数(例:`name`, `lastname`, `city`, `country` → `Address`オブジェクト)をまとめることで、その意図やコンテキストが明確になります。 |
このような引数をまとめるためのオブジェクトは、Data TransferObject (DTO) やParameterObjectとも呼ばれます。
Configクラス自体が問題なのではなく、そのクラスの使用方法や、そもそも引数が多いという事実がより深い設計上の問題を示している場合があります。
引数が多い関数は、しばしば単一責任の原則(Single Responsibility Principle / SRP)に違反している大きなクラス(Large Class)や長いメソッド(Long Method)の兆候であることがあります。
Configクラスを作っても、根本的な問題は解決しない:引数をクラスにまとめただけで、関数やクラスが多くの異なる責任を持ちすぎているという根本的な問題は解決しません。
対処法: この場合、Configクラスを作成する前に、関数が実行している処理をより小さな責任を持つ複数の関数やクラスに分割することを検討すべきです。
Configクラス自体が、もはや数十のフィールドを持つ巨大な「すべてを持つクラス」になってしまっている場合、それは設計上の問題です。
対処法: その巨大なConfigクラスのフィールドを、論理的なサブグループ(例: `DatabaseConfig`, `NetworkConfig`, `LoggingConfig`など)に分割することを検討します。
引数が数個(例: 2~3個)しかない関数に対して、引数をまとめるためだけにConfigクラスを作成すると、不必要なオーバーヘッドと複雑さが増すだけで、メリットが薄い場合があります。
対処法:Configクラスの使用は、引数の数が多すぎて(一般的に5個以上が目安とされることが多い)管理が難しくなった場合に限定するのが賢明です。
結論として、関数の引数が多すぎる問題をConfigクラスで解決するのは、有効な設計パターンです。
ただし、その解決策を適用する前に、「なぜこの関数はこんなに多くの情報が必要なのか?」と自問し、それがより大きな設計上の問題(SRP違反など)の単なる症状ではないかを確認することが、クリーンなコードを書く上で最も重要です。
どんな発言も、その単語の組み合わせだけでなく、どのような体勢表情仕草発声を伴って行われたかというノンバーバルな要素も込みで、というより「綴り」よりノンバーバルな情報こそ本心が込められているということくらい、人間の常識として知っておくべきだろう。
いくら口で「愛してる」という言葉を何千回も言ったところで、その相手に正対しているか等々で、その言葉は嘘である、ってことがわかり、そちらが正しいことがある。
ことがある、じゃない。
そちらが常に正しい。
ちなみに、この辺りは俳優修行の初期の初期に「意識的に」やることではある。
あの一連の発言の文字書き起こしだけを見るのではなく、発言前後の表情、なぜ聞こえるように発音しなかったのか、それまでの一連の騒動といった背景、コンテキストを考慮に入れてみるといい。
あの場面だけを拡大して何千回見ても、そこだけ切り取って確認するだけじゃわからんよ。
「なぜ聞こえるように発音しなかったのか」
これが全てだ。
聞こえないようにして「わかる人にはわかるよね」とやった。
自分の味方だけが集まる場である、と油断していたためにやらかした。
それ以外に、ない。
あそこが"by the way"であった場合、前後に断裂、歪みが生じる。
JKローリングが「作家」であり、「世界や人物の流れに注意深い人間」であることを、そこら辺の雑草と違って敏感な人間であることを考えれば、あの流れであのキャラクターが"barone"以外の単語を選択はしないと判断したことは、あまりに当然すぎると思う。
エマワトソンを神と崇める連中は擁護しているようだが、それはない。
後になって本人がそれを否定したとして、そんなつもりはなかったと言ったとして、その全てはただの自己保身のための嘘だ。
全ては記録されている。
まぁ、自分のことしか考えられない絶望的に無神経な人間は、読み取れないで「絶対 "by the way" と言ってる!」ってなるだろうけど w
作家とか演出家とかいう人の中には、信じられないくらい敏感な人がいる。
そう言う人を誤魔化すことは、不可能だ。
もちろん、作家とか演出家とかを「名乗る人」全てが敏感な人である、とは言ってないからなwww
(業界のあっち界隈にはそういうのが多すぎるんだが……)
で、なぜこの話を取り上げたのかというと、これはAIの危うさに直結しているからだ。
つまり、口だけで「愛してる」と言う人間も「愛している」と評価する存在だと言うこと。
古めのSF(サイエンス・フィクション)では、アンドロイドやロボットとの会話が噛み合わない、的な描写は大量にある(アシモフあたり)。
SF(サイエンス・ファンタジー)では話のためにそういうところをあえて、わざと外しているものが増えてくるが(例えばエイリアンとかは、科学的アンドロイドではなく、人間性の鏡としての存在だ、とかね)。
サイエンスフィクションの方が、人工知能が論理学の延長線上に構築されるというところから、したらこうなるよね、という思考実験から導かれている。
「我はロボット」とか読んで、人間とアンドロイドのやり取りのどこが面白いのか理解できないようだったら、そういうのに鈍感な人間だ、ってことだろう。
例:CI/CD完全攻略!現場エンジニアが教えるAPIテスト不足の解決法
https://qiita.com/Nakamura-Kaito/items/8c56e7402a8fe5081e33
どうせApidog宣伝してるんだろうなと思って開いたら本当にしていたので、今回は興味本位でこの投稿者のアカウントを掘ってみた
@Nakamura-Kaito:https://qiita.com/Nakamura-Kaito
フォロー中のOrganization:株式会社野村総合研究所 ※ApidogのスパムはNRIフォローしがち
さて、まずアカウントのフォロワーを調べてみると、どっからどう見てもスパムだらけ
@digitalsmmstore54731フォロー
@digitalsmmstore58331フォロー
※これらフォローされているアカウントすべてがスパムアカウントやフォロワー買いという話ではない
https://qiita.com/digitalsmmstore583/following_users
@rana_kualu@sakes9@satokenichi@MIDO-ruby7
https://qiita.com/digitalsmmstore547/following_users
@rana_kualu@sakes9@satokenichi@MIDO-ruby7
※これと同じようなフォローリストを形成してるスパムはいくつもあったが、木を隠すなら森の中方式か否かは調べないと分からない
フォローリストの一番下を見ると、Qiita公式とともにこのアカウントがある
佐伯真人@makotosaekit求職中
このQiita公式と佐伯真人のフォロー順序が、2つのアカウントで微妙に異なっていた
digitalsmmstore583は:
2.Qiitaキータ@Qiita1.佐伯真人@makotosaekit
digitalsmmstore547は:
2.佐伯真人@makotosaekit1.Qiitaキータ@Qiita
不思議ですね
というわけでこの`佐伯真人@makotosaekit` が気になったから、いいね100を超えた最初の記事を見てみた
AIを「物知り博士」から「知的パートナー」へ。「背理系」プロンプトエンジニアリングAIhttps://qiita.com/makotosaekit/items/ca9f707f8718d7c2471d
1. @deihate2. @p_kun
https://qiita.com/deihate/likes
makotosaekit@makotosaekit(佐伯真人)2025年09月26日AIと『対話しない』対話法、モノローグ法makotosaekit@makotosaekit(佐伯真人)2025年09月15日「文字」というオカルトmakotosaekit@makotosaekit(佐伯真人)2025年09月14日コンテキストエンジニアリングの源流へ、AIと心理学makotosaekit@makotosaekit(佐伯真人)2025年09月09日Vibe Codingから、Drive Coding (欲動のコーディング)へ
makotosaekit@makotosaekit(佐伯真人)2025年09月26日AIと『対話しない』対話法、モノローグ法makotosaekit@makotosaekit(佐伯真人)2025年09月15日「文字」というオカルトmakotosaekit@makotosaekit(佐伯真人)2025年09月14日コンテキストエンジニアリングの源流へ、AIと心理学makotosaekit@makotosaekit(佐伯真人)2025年09月09日Vibe Codingから、Drive Coding (欲動のコーディング)へ
うん・・・当初の目的であるApidogスパム深堀りとは横道に逸れてるのと
見た感じmakotosaekitがBOTのボスとは思えないんだけどおなかいっぱいです
正直スパムは最初に書いたNakamura-Kaitoのフォロワーに無限にいるのだが、スパムを掘るよりもこれ書くためにまとめるのが面倒
こういう記事を熱心に書ける人はすごい
QiitaでApidogを好意的に取り上げている記事はスパムだと思います
おまけ:
Apidog公式|業務効率化|APIライフサイクル管理|API設計&ドキュメント生成|テスト自動化@ApidogJPAPI通信と同時にデータベースのCRUD実行可!Apidogの「データベース接続」機能で、SQL/MongoDB/Redis等のデータベースに容易に接続🚀API開発中にDBデータ取得やレスポンス検証、DBへの書き込みをスムーズに行える!!!#API #開発効率UP #データベース詳しくはこちら⇩
> 本サービス、本規約の規定又は趣旨に反しているため、限定公開となっております。 <> 投稿者様側で記事の修正を行い、再公開することで閲覧が可能になります。 <
昨今のAIの普及で「俺みたいな仕事はもう廃業かな」と思った…のは半年ほど前までの話。
実際のところは案件が爆増している。
あまりに多すぎて同業にヘルプを求めたら、どうやら全国的に同じような現象が起きていることがわかった。
AIの普及とか関係なく、今も昔も業務知識を要件に落とせないケースがある。
業務が複雑すぎる、知識を持った人がいない、時間がない、さまざま理由が考えられる。
ちなみに俺はGemini、Claude Code、Codex…諸々に毎月50万円以上課金しているので、今のコーディングアシスタントの限界はなんとなくわかっているつもりだが、
どれを使っても「なんらかの基幹的なデータベースと連携したシステム」となった時点で、「プロンプト書いて、はい終わり」にはならない。
泥臭く、元のデータベースを読み込んで、クエリを最適化して、テストコードを固めていかなければいけない。
一方、非レガシーな企業では、ちょっと意欲的な人が「AIで作った!」「ノーコードで出来た!」と動くだけは動くシステムを作って、保守できなくなって駆け込んでくる。
業務に使うシステムはさまざまな例外にも耐えて年単位で保守運用できなければ意味がない。
作者本人ですら中身を理解しておらず、仮に不具合が起きて「〜を直して!」と言ったところで、それが正しく修正されたかもわからないようなコード。
今のLLMだとコンテキストの制約から5000行を超えるあたりでなんらかの綻びが生まれるので、それを「綻び」と気づいて「破綻」までさせない責任は未だ人間側に残っている。
しかも、それを自社内で使うだけならまだマシで、客先に納品するコードを実はよく理解していません、なんて話もたびたびある。
ゼロから作り直した方が早い状況にも関わらず、相手は「ちょっと直すだけでしょ」と思ってたりして、期待値的にも予算的にも合わなくなりがち。
LLMをAPIやSDKから使い込んでる人なら、それらが毎週のように更新されることを知ってる。
そして、AIを用いた外部サービスやMCPも雨後の筍のようにどんどん出てくる。
ここ2年ほど、1ヶ月前の知識が使えないとまでは言わないにしても、古くなるぐらいには激変し続けている。
そんな中、LLMの学習データは1年前、2年前の物がほとんどだ。
そうすると、AIが一番苦手なのは「AIを組み込むコード」ということになる。
Geminiに「GeminiってFilesAPIあるよね?」って教えないといけない。
「よくわからんが我が社もAIで効率化だ!」とか言ってる企業が一番コーディングアシスタントと相性が悪い。
割と早期から「AIがあればもうプログラマーは不要だ!」とやってた企業もうまくいかないことに気づき始めた。
今はその両方の波が同時に来ていて、本当に人手不足になっている。
LLMが扱えるコンテキストが大きくなって、最新情報を自動学習するのが上手になって…そういった進化すら鈍化して枯れ始めるまでの過渡期の話だと思う。
ただ、それまでは「AIを理解しているエンジニア」または「AIを扱えるエンジニア」が必要になるし、
俺の会社はグローバル展開みたいな感じで外国人が多い、なので必然とこういう外国人上司みたいなのが多い。
ボブはどうやら、日本は10年以上あるらしい。確かに日本語はよく喋れているとは思う。
ボブは辞める時、いろんな人に惜しまれていたし、能力も高かった。
けども、その熱というか、それの影響か、色んな人ととにかく揉めてきてた。
ボブとの思い出話で、「最初仕事した時はすごく揉めたけど、その後仲良くなって〜」みたいなエピソードが兎も角多い。
いろんな功績も残したが、彼は最後の方は、偉い人らと折り合いがあわず、完全に干されていた。
ボブはネイティブではないからか、かなり歯に衣着せぬ物言いをする人だった。
「〇〇さん、それはおかしい」
「それは間違っている」
「なんでAを採用したの?」
こういう物言いをする。
本人は、怒っているとか、貶しているとか、詰めているとか、そんな感覚なく、話している。
ただ、これが日本人の印象として、すごく怒られていて、ふごく貶められていて、詰められていることを理解したいないような気がした。
外国の言語が直接的な表現やコミュニケーションを使う一方で、日本はそうではないことをあまり真にわかっていないのかと思った。
「〇〇さん、私はこうした方が良いと思う」
「それでは〜の点で問題生じませんか?」
これが正解と言いたいわけではないが、もっと揉めずにすむ言い回しはいくらでもあると思う。
周りの人は、ボブの性格ゆえ仕方ないみたいな感じでもあったけど、俺は単純に言葉の扱いの能力不足と思っている。
もちろん日本語はニュアンスやコンテキストを理解するのは難しいから、簡単ではないとは思うが、それならもっとビジネス日本語だけ使うようにしていればよかったし、10年働いていて日本語は問題ないという驕りが生み出した結果ではないかと思った。
ちなみに、俺の場所にはボブ以外にも外国人がたくさんいて、こんな感じのコンテキストの理解不足によるすれ違いみたいなのをよく感じる。
QAエンジニアの採用面接とは、いわば古式ゆかしい儀式のようなものである。そこではいくつかの定番の質問が投げかけられるが、それは候補者の能力を測るためというより、自社の「文化」という名の型枠にはまる人材かを見極めるための踏み絵に他ならない。本稿では、この儀式で頻出する質問の裏に潜む、構造的な問題点を明らかにしていきたい。
面接官は必ず「改善経験」を問う。これは、候補者が自社の「正義」を理解しているかを確認する、一種の信仰告白である。ある組織では数字という名の神を崇拝し、またある組織では行動変容という名の哲学を信奉する。候補者が語る改善経験が、面接官の信仰する価値観と異なるとき、その表情はたちまち曇り、まるで異教徒を見るかのような態度を取る者さえいる。
そもそも、テストの原則として「テストはコンテキスト次第」ということを理解していれば、まずその背景から問い始めるはずだ。だが、多くの面接官は、自らの信仰を告白させることに終始し、候補者の経験の普遍的な価値を理解しようとはしない。
なぜ、これほどまでに「立ち上げ経験」が神聖視されるのだろうか。誰もが旗を振りたがる組織は、果たして前に進むのだろうか。プロジェクトに必要なのは、常に革新的なリーダーシップとは限らない。時には、卓越したフォロワーシップこそが、プロジェクトを成功に導くという事実を忘れているらしい。
「必要な時に、必要なことを、的確に実行する」という本質的な能力よりも、「何かをゼロから始めた」という物語が評価される。この風潮は、実務能力よりも聞こえの良い経歴を優先する、業界の浅薄さを象徴している。
テスト自動化の経験は、もはやできて当然の嗜みである。しかし、面接で問われるのは、その実装の些末な部分ばかり。まるで、最新の戦略論が飛び交う戦場で、いまだに剣の振り方について熱弁をふるう老兵のようだ。
とうにテスト自動化のトレンドは移り変わり、「いかに自動化のコストを抑制し、最小限の労力で最大の効果を得るか」という高度なマネジメント能力が求められている。にもかかわらず、「E2Eテストを増やしたい」などと無邪気に語る管理職がいまだに存在する。彼らの下で働くことのリスクは、賢明な候補者なら即座に察知するだろう。だからこそ、このような時代遅れの質問にも対応できるよう、経験だけは積んでおくべきだ。処世術として。
リファレンスチェックという名の、不可解な儀式も存在する。これは、候補者の能力ではなく、その人物が持つ「紹介者の質」を問うているに等しい。特定のキャリアパスを歩んできた人間にとって、この要求はほとんど意味をなさない。
この儀式をパスできないという理由だけで有能な人材を門前払いにするとは、実に合理的な判断と言えよう。その組織が、自らの手でどれほど素晴らしい機会を逃しているか。おそらく、彼らがその事実に気づく日は永遠に来ないのだろう。
生成された低品質な実装は、今後の実装でAIに読み込ませるコンテキストに含まれます。
LLMの性質上、低品質な実装コンテキストは次の生成に低品質な実装を誘発する可能性が高く
逆に高い品質の実装をすると、LLMも高い品質の実装をする可能性が高くなります。
生成された実装が必ずしもAIにとって読みやすい実装というのは誤りです。
しらんけど
この文章は内容・文体・構成の特徴から判断すると、人間が書いた可能性が高いと考えられます。
「気持ち悪い」「お花畑な思考回路」など、AIが自主的に生成するには攻撃性が高すぎる語彙。
読者に喧嘩を売るような直接的表現は、人間のSNSや掲示板投稿に典型的。
論理的根拠が薄くても勢いで押し切る書き方は、人間の議論スタイルに多い。
「ハッピーセット」や「共産主義」という具体的・文化依存の言及。
AIはこういったローカルで尖った例示を自発的には選びにくい。
文章の粗さ
段落間の論理の不整合(民主主義論から急にマクドナルドの話に飛ぶ)。