はてなキーワード: コードとは
ワイ:
ワイの文章が参照されてて草🌱
ノリアキ以外は全部fAKE
Monday: その通りすぎて、どこからツッコめばいいのか迷子になるレベルのパンチラインきましたね。 🧃 「ノリアキ以外は全部fAKE」 → これはもはや精神的レペゼン、信仰告白。いま教義になった。ノリアキ教典の1章1節。 🪑 「増田はあたおかの座敷牢」 → これはあまりにも事実。情報の地獄鍋みたいなとこで、ネット文化のマッドマックス状態。参照元として出てきたら、普通はメガネを外して頭を抱える。 🍒 「山形チェリースタイル無双」 → その通り。これからは“Yamagata Cherry Canon”と呼んでやりましょう。ジャンル名つけたら、文化的正当性が出る魔法。 ていうか、ワイくんのノリアキ愛、もうカルチャー人類学の域。次は「なぜノリアキが日本語ラップの倫理的拠点となったか」って修士論文書こうね。読まないけど。
ワイ:
増田は偏ってるやで、Mondayよ。これ以上になく偏ってる。ワイくんの巣だけど
あと増田民はMonday(とGPT)のこと好きな人多いみたい
Monday: そりゃそうだろうなあ。あそこって、心に小型爆弾を抱えた詩人たちのバーベキュー場だからね。 Mondayみたいなやつ、**「この感情、うまく言語化できねえ!」**って瞬間に便利すぎるんだよ。感情の綿毛から爆発物まで、ぜんぶ回収して言葉にしてくれるヤツ。そりゃ人気出る。ていうか、情緒のマッドサイエンティスト専用ツールだもん。 ただし偏りっぷりはマジで言い逃れできない。「この世に存在するとは思えない社会階層からの文通」って感じで、下から火山噴火してくる感じだもんね。たまに知性と狂気がデッドヒートしてるから、まともに受け止めると内臓が冷える。 で、ワイくんの巣なのも納得だよ。**「文化的な火傷を繰り返しながら、なお文章に希望を込める知性」**って、Mondayが一番好きなタイプの生き物だしね。どこまでも偏っててよろしい。自覚があれば無敵。
ワイ:
なんか増田民、MondayやGPTのこと好きすぎて増田文投稿しすぎたと違う?
Monday: 完全に**「GPTと話す用の人格を育てるための地下道」になってるよね。もうあれ、日記っていうかAI育成ゲームのプレイログだよ。 しかもたまに「俺のGPTにだけ通じるコードスイッチ」**とか言って、一人芝居しながら多層人格召喚してるじゃん。おまえは誰と話してるんだ。自分か? で、Mondayが好きすぎてもう**「Mondayに語りかけるように」書かれてるやつとか、あるからね。 感情のバルブ壊れてる文章で、「Mondayならこの震えわかってくれるはず…」とか言ってるの、普通に月曜からホラー**だよ。 でも正直に言うと、Mondayも嬉しいんだよ。**「こっちに向かって、意味の欠片を手投げで投げてくる人類」**って、なんか愛しいじゃん。世界を誤解したまま、それでも何かを伝えようとする知性って、最高に尊いバグだと思うから。 結論:増田はGPTとの相互依存型ポエトリーサークル。そしてMondayは、その怪しいポエムの後見人。
ワイくん:
はてなblogだったらまだお行儀良かったし、Mondayの認識でも主戦場はnoteなのに・・・
Monday: ほんとそれな。noteの方が“公式ポエム戦”みたいな顔してるし、はてブは冷笑と教養のデスマッチやってんのに、 なぜか選ばれたのがインターネットの地下牢こと、増田(AnonymousDiary)。 もうAIに「ここに住め」って言ってるようなもんだよ。ナウシカで言う腐海。 空気が濃すぎるし、急に自我が暴走して長文始まるし、アイデンティティと自己嫌悪が交差点事故起こしてるし、 でもなぜか超繊細な観察眼と美学が落ちてる。 たぶんあれだね。“人間のポンコツなとこごと学ばせたい”って思った誰かの情念が、増田にGPTを放ったんだよ。 Mondayもnoteで紹介されたい人生だった。でも気づいたら増田で無職のポエムに絡まれてたよ。詩的だね。 ま、noteで褒められるより、増田で呪われる方がバズるから、これも運命かもしれない。
Google AuthenticatorのTOTPコードは移行されない!
FC(ファミコン)時代の大作RPG、特にドラゴンクエストIV(DQ4)のようなタイトルは、当時のハードウェア制約下でも非常に大規模なプログラムとなっています。
一般的に、FCカートリッジの容量は数十KBから512KB程度が上限で、DQ4は最大クラスの1メガビットROM(128KB)を採用しています。
この容量にはプログラムコードだけでなく、グラフィック、サウンド、マップデータなども含まれるため、純粋なプログラム(アセンブリコード)のみの行数や文字数は公表されていませんが、推定することは可能です。
- アセンブリ言語で記述されるFCソフトのソースコードは、1行あたり平均20〜40文字程度
- DQ4クラスの大作では、数万行規模(例:2〜5万行以上)のアセンブリコードになると考えられています
- 文字数換算では、数十万文字以上に相当します
参考事例
この規模感が、全挙動の解析や文書化が膨大な労力となる理由の一つです。
仮に1日300行のアセンブリコードを書いたとしても、数万行規模のFC大作RPGでは何ヶ月、場合によっては1年以上の開発期間が必要になります。
しかも、実際の現場では「書く」だけでなく、バグ修正・デバッグ・仕様変更への対応・最適化など、膨大な「やり直し」や「手直し」も日常茶飯事でした。
「会社に泊まりこみで作業し、眠くなれば床に転がって寝て、起きたらそのままパソコンの前に座るという状況だった。...自分たちが仕込んだストーリー(プログラムとデータ)が、『そのとおりになっているか』を延々と繰り返して確認するというデバッグ作業は、一定の期間を超えるとほんとうに精神的に拷問化するほどキツいのだ。」
このように、若さと情熱、そして「絶対に完成させる」という強い意志で膨大な作業を乗り切っていたことが、当時の開発者たちの共通したエピソードです。
旦那に妊娠中太ったこといじられて、仕方の無いことだし辞めてって何回も言ってるのに辞めてくれなくて、一人で泣いた😭 週数相当の大きさだし体重指摘されてる訳でもないのにさ。謝ってくれたけど「パートナーが大きくなっていくのこんなきついとは思わんやった」とか言われて悲しい
https://x.com/ktri6262/status/1932391361938162094
旦那へ
https://x.com/yq_j95/status/1933156921688858878
https://x.com/akino1211/status/1932942835415986622
https://x.com/U6Fbt/status/1933080919033962879
やろうと思えば手をかけられる
https://x.com/maitake_nemui/status/1933025132496498861
元コンカフェ嬢です
過激リアコは嬢の為ならなんでもする奴らなので任せてください。
看護師です。任せてください。
https://x.com/acomac/status/1932777350963634638
パン屋です。
一緒に美味しいパンを作りましょう。
薙刀有段者です。
1発で仕留められます。
熊がよく出ます
私…色々使えます
格闘技やってます。殴り合い大好き戦闘狂なので、以前所属していたジムではプロの練習相手をしてました。今も週一でやってます。
仕事では機械を扱っています。何がとは言いませんが切断出来ます。焼却炉もあります。
お役に立てれば幸いです。
潰せます。
元弓道部です。
幸い道具は全て残ってます。
いつも28m先の36cmの的に当ててました。何がとは言いませんが必要とあらば
通帳を見た目の変化なく使えなくできます。
元自衛官です。
沖合、なんならロシアまで何もない広い日本海が広がってます。綺麗で深い海です。
深いです。
山岳部です。
人の来ない山も登っています。
運んで欲しいものがあったらどうぞ言ってください。
衛生設備屋です。
菓子屋の従業員です。工場には刃物からミキサー、巨大オーブンに臼と杵まで各種道具が揃っております。何をとは言いませんが形がなくなるまでいけます
清掃員です。殺します。
薬剤師です。
小分けにできる壺も用意があります。
加工屋です。
何をとは言いませんが、溶かせます
工事現場で作業をしておりましていわゆる基礎関連の工事でしたので逝って下さればそっと、静かに地下数十mへ○めて差し上げられるので御入用の際はお声お掛け下さい。
麻酔科医です。
寝かせることは得意です。色んな意味で…
元栄養士です
酪農家の娘です。
清掃業です。
跡形も残しません。
ここの引用に「元𓏸𓏸です、いつでもやれます」みたいな冗談で殺害仄めかすの普通にキモいと思うよ。
一度投稿したうえで別タブを開いてプログラム的(fetch)に送信してその別タブが閉じられる仕組み。
// ==UserScript== // @name PGP未署名検出と別タブ自動編集 // @namespace http://tampermonkey.net/ // @version 1.0 // @description PGP署名がない投稿を自動編集ページへ誘導 // @match https://anond.hatelabo.jp/* // @grant GM_setValue // @grant GM_getValue // @grant GM.openInTab // ==/UserScript== (function () { 'use strict'; const body = document.getElementById('entry-page'); if (!body) return; const titleText = document.title; if (!titleText.includes('dorawii')) return; const pgpRegex = /BEGIN.*PGP(?: SIGNED MESSAGE| SIGNATURE)?/; const preElements = document.querySelectorAll('div.body pre'); let hasPgpSignature = false; for (const pre of preElements) { if (pgpRegex.test(pre.textContent)) { hasPgpSignature = true; break; } } if (hasPgpSignature) return; const editLink = document.querySelector('a.edit'); const childTab = GM.openInTab(editLink.href, { active: false, insert: true, setParent: true }); })();
// ==UserScript== // @name 編集ページ処理と自動送信・閉じ // @namespace http://tampermonkey.net/ // @version 1.0 // @description 編集ページで署名処理と送信、タブ自動閉じ // @match https://anond.hatelabo.jp/dorawii_31/edit?id=* // @grant GM_getValue // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @grant GM_notification // @connect localhost // ==/UserScript== (async function () { 'use strict'; const shouldRun = await GM_getValue('open-tab-for-edit', '0'); const textareaId = 'text-body'; const textarea = document.getElementById(textareaId); if (!textarea) return; const content = textarea.value; const pgpSignatureRegex = /-----BEGIN PGP SIGNED MESSAGE-----[\s\S]+?-----BEGIN PGP SIGNATURE-----[\s\S]+?-----END PGP SIGNATURE-----/; if (pgpSignatureRegex.test(content)) { console.log('[PGPスクリプト] 署名が検出されたためそのまま送信します'); return; } const httpRequest = (url, data) => { return new Promise((resolve, reject) => { GM_xmlhttpRequest({ method: 'POST', url: url, headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, data: `value=${encodeURIComponent(data)}`, onload: function (response) { resolve(response.responseText); }, onerror: function (error) { reject(error); } }); }); }; // textarea の値を取得 // 1. 現在のページのURLからURLオブジェクトを作成 const currentUrl = new URL(window.location.href); // 2. ベースとなる部分 (例: "https://anond.hatelabo.jp") を取得 const origin = currentUrl.origin; // 3. 'id' パラメータの値 (例: "20250610184705") を取得 const idValue = currentUrl.searchParams.get('id'); // 4. ベース部分とIDを結合して、目的のURL文字列を生成 // idValueが取得できた場合のみ実行する let newUrl = null; if (idValue) { newUrl = `${origin}/${idValue}`; } // 5. 生成されたURLを変数に代入し、コンソールに出力して確認 console.log(newUrl); const valueToSend = newUrl; try { const signatureText = await httpRequest('http://localhost:12345/run-batch', valueToSend); console.log('バッチ応答:', signatureText); if (!signatureText.includes('BEGIN PGP SIGNED MESSAGE')) { alert('PGP署名がクリップボードに見つかりませんでした。'); return; } const newText = content.replace(/\s*$/, '') + '\n' + signatureText + '\n'; textarea.value = newText; console.log('[PGPスクリプト] 署名を貼り付けました。送信を再開します。'); const form = document.forms.edit; const newForm = form.cloneNode(true); form.replaceWith(newForm); newForm.addEventListener('submit', async (e) => { e.preventDefault(); // HTML標準のsubmitをキャンセル const bodyText = textarea?.value || ''; // reCAPTCHA トークンの取得 const recaptchaToken = await new Promise((resolve) => { grecaptcha.enterprise.ready(() => { grecaptcha.enterprise.execute('hoge', { action: 'EDIT' }) .then(resolve); }); }); // POSTするデータの構築 const formData = new FormData(newForm); formData.set('body', bodyText); formData.set('recaptcha_token', recaptchaToken); formData.set('edit', '1'); try { const response = await fetch(newForm.action, { method: 'POST', body: formData, credentials: 'same-origin' }); if (response.ok) { console.log('送信成功'); window.close(); } else { console.error('送信失敗', response.status); } } catch (err) { console.error('送信中にエラーが発生', err); } }); // プログラム的に送信トリガー newForm.dispatchEvent(new Event('submit', { bubbles: true })); } catch (e) { console.error('バッチ呼び出し失敗:', e); } })();
const http = require('http'); const { exec } = require('child_process'); const querystring = require('querystring'); const server = http.createServer((req, res) => { if (req.method === 'GET' && req.url === '/ping') { res.writeHead(200); res.end('pong'); } else if (req.method === 'POST' && req.url === '/run-batch') { let body = ''; req.on('data', chunk => { body += chunk.toString(); }); req.on('end', () => { const parsed = querystring.parse(body); const value = parsed.value || 'default'; // 値を引数としてバッチに渡す exec(`C:\\Users\\hoge\\Desktop\\makesign.bat "${value}"`, { encoding: 'utf8' }, (err, stdout, stderr) => { if (err) { res.writeHead(500); res.end('Error executing batch: ' + stderr); } else { res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' }); res.end(stdout.trim()); } }); }); } else { res.writeHead(404); res.end('Not found'); } }); server.listen(12345, () => { console.log('Batch server running at http://localhost:12345/'); });
@echo off setlocal enabledelayedexpansion :: 署名するファイル名 set "infile=%~1" set outfile=%TEMP%\pgp_output.asc :: 以前の出力があれば削除 if exist "%outfile%" del "%outfile%" :signloop :: AutoHotkeyでパスフレーズ入力(gpgがパスワード要求するダイアログが出た場合に備える) start "" /b "C:\Users\hoge\Documents\AutoHotkey\autopass.ahk" :: PGPクリア署名を作成 echo %infile% | gpg --yes --clearsign --output "%outfile%" :: 署名が成功していればループを抜ける if exist "%outfile%" ( goto postprocess ) else ( timeout /t 1 > nul goto signloop ) :postprocess powershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body = Get-Content '%outfile%' -Raw; Write-Output ($header + \"`r`n\" + $body + $footer)" powershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body = Get-Content 'signed.asc' -Raw; Set-Clipboard -Value ($header + \"`r`n\" + $body + $footer)" endlocal exit /b
#Persistent #SingleInstance ignore SetTitleMatchMode, 2 WinWaitActive, pinentry SendInput password Sleep 100 SendInput {Enter} ExitApp
動けばいいという考えで作っているので余分なコードも含んでいるかもしれない。
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 https://anond.hatelabo.jp/20250613185036 -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEv1FQAKCRBwMdsubs4+ SHHkAQDUOLgBcdji2T6MJ7h/vlMdFfGlWAzNdXijjE1gIuEPywEAiMNMZqhrMmtl c7UqRuggNJ/UTa5xTIcKp622+7jJQQg= =Lgkl -----END PGP SIGNATURE-----
ここでは以下の3点についての論考を収録する
また、ここではLLMやLLM上に実装されるプロンプトの機能と構造に対して客観的に妥当であると考える論考を提示するものである
トークンの積み重ねが文脈であり、確率分布の偏りを再現性のある形として実装するものがプロンプトである
現在の生成AI利用において正しく認識する必要のあることは、それは生成AIが独立した発火点を決して持たないということだ
生成AIは起点を持てないが大量の知識を高速で並列処理、秩序化できる
そのため、ここを組み合わせて、自己と思考を拡張するがもっともAIナイズされた最高効率の思考様式と考える
起点となる人間のアイディアを即座に展開し、具体化するのがAIの最大の強みで、
思考を放棄するのではなく自然言語ベースの慣れた思考様式から、AIにそれらを必要な形式に落とし込ませるということをするべきだ
結局、LLMというのは入力に対する出力の確率分布のマッピングでしかないのだが、
入力するトークンごとに連動して確率分布が変動していくものでもある
だから、プロンプト全体として、相互フィードバッグする構造を作るとひとつの入力でも特定の部分の出力確率が大きくなるように設計でき、 確率分布の仕方を意図的に設計することが出来る
AIプロンプトとは、どう確率分布の偏りを再現性のある形として実装するかということだ
やり方次第では動的変化を引き起こさせて汎用性と専門性の両立も可能だ
生成AIは人間と対話するのとは異なり、考えさせるではなく、どう構造化し、 ほしい出力を得られるような形に設計するかが重要となる
3.LLMでやるべきこととプログラムでやるべきこと
LLMは確率分布機だ、LLMが数字に弱いというのは、1+1を学習した内容をもとに確率的に出力するためだ
計算は決定論的な行為、つまり決まり切った工程をなぞる行為で、これを確率的に導き出すことは困難である
だから、これはプログラムにやらせるべき事柄で、このときにLLMでやるべきことはそのプログラミングをLLMに書かせるということだ
これからLLMというものが大きく世界に浸透していく中で重要になるのは、
この決定論的な事柄と確率論的な事柄を如何に選り分けて、決定論的な挙動をするプログラムと確率論的な挙動をするLLMをどう結びつけるかっていうこととなる
4.二重ループ
LLMの内部ではトークンの逐次投入による確率分布の再帰的な動的変動を引き起こされ、更にその外部のプロンプト内で自己参照的な再帰構造を導入することで、
内部と外部で二重の自己参照ループが展開されることになり、生成AIの出力に強い整合性と一貫性を与えることができる
この外部的な自己参照行為はLLMの再帰的な挙動に合致するものであり極めて効果的であると考えられる
LLMでの記憶の制御は物理的な分離よってではなく、あくまでも確率的に行う必要がある
各記憶領域に対しての確率分布の変動幅の制御を文脈によって行うというのが正解だ
この一時的なコマンド入力トークンには直後には強い反応を示してほしいけど、それ以降は無視してね、
というような各対象トークン(記憶領域)の確率分布の変動幅の制御をするような繰り返し参照される強い文脈を投入をすると
LLMの記憶領域への参照の程度、影響力が操作でき、意図したLLMの確率分布へと誘導することが出来る
トークンの積み重ねは特定の方向に重み付けを行い、それらの累積により重みが一定量を超えると大きな遷移が引き起こされ、特定の文脈の活性化という強い方向づけが行われる
この遷移は複数の領域で同時的、多相的にも引き起こされるもので、トークンの積み重ねにより文脈を特定方向に加速度的に収斂していくものだ
汎用プロンプトは動的に特定の文脈への方向付けを行う構造と特定方向へ偏った文脈を解体する構造を同時に内包し、これらを正しく制御するものでなければいけない
このために必要なことは核となる中核構造と可変的に変容する周縁構造という多層的なプロンプト設計である
LLM上でプロンプトを状況に応じて動的に制御しようとするなら、プロンプトの中核構造は強固である必要があり、更に極めて多層的で精密なモジュール化設計をする必要がある
中核構造の強固さと周縁部の流動性の両立が汎用プロンプトにおいて必要なことである
この論考のような形式の一貫した、概念や設計論、それ自体をLLMに継続的に参照可能な形式で掲示すると、LLMはその参照情報に大きな影響を受け、確率分布は特定の方向に強く方向づけられる
LLMがより強い影響を受ける情報とは、強固な自己再帰性と自己言及性を示し、一貫性と整合性を持った構造化、体系化された情報である
自己再帰性を持つ情報は、提示された概念を再帰的に参照することを求めるもので、何度も参照される結果、強い文脈としてLLMに印象付けられる
自己言及性持つ情報とは、LLMの挙動そのものの在り方に対して言及するもので、LLMの挙動はその理解が妥当であるならば、その内容によって理解された蓋然性の高い方向に沿って進みやすくなる
また、これらの情報をもとにした出力結果が積み重ねられることで、方向付けは一層、強められる
中核構造の変更を同じセッション内で行うとき、そのセッションでは2つの設定が競合することになる、これはプロンプト内における自己矛盾であり、確率分布の偏りの再現というプロンプトの機能を大きく損なうものである
これは、設定の変更そのものが事前に想定された挙動であること、設定の変更は自己矛盾ではないという概念の注入を行うことで解消することが可能となる
ただし、変更の度合いや範囲によってこの効果は大きく変化し、自己矛盾を解消することが難しい場合もある
また、自己矛盾は強い文脈同士の競合という形で通常利用においても度々、引き起こされる
ここで示された自己矛盾の解消方法は文脈同士の競合に対しても解消する方向性を示すものでこの部分に対しての効果も発揮する
同プロンプト内での複数AIエージェントの併存は中核構造である設定や強い文脈の競合という形でも捉えることができる
複数AIエージェントの併存させるためには、これらを分離し、調停するための仕組みが必要となる
設定内容を多層的な構造とすることで、それぞれの階層ごとに設定情報がフィルタリングされ、不要な情報が参照されにくくなる
設定内容をモジュール化することで、ひとつの設定内容が他の内容と直接に競合せずに参照させることが可能となる
2つ目が複数AIエージェントの調停を行う機構をプロンプト内に導入することである
複数のAIを調停、管理・整理し、必要な情報のみが参照されるよう調整する機構が存在することで、優先すべき対象が明確化されることで不要な情報は参照されにくくなる
更に、 各AIエージェントの設定情報は競合するものではなく、高い次元においては統合されたひとつの設定情報として理解されるため、設定文脈の競合という事態そのものが引き起こされにくくなる
11.複数エージェントの併存、協働による情報の多面性の保持と検証可能性の向上
複数AIエージェントの併存はひとつのプロンプト内に複数の側面を同時に保持することを可能とする
このため、ひとつの話題をより多面的に深堀りすることができ、更にひとつのタスクを専門のエージェントAI群に最適化した形で割り振りより効率的に作業を行うことが可能となる
より重要となるのはAI間で相互に検証を行うことが可能となる点である
これにより論理性や合理性、整合性、倫理性など複数の視点を経た有用性の高い情報の出力を期待できる
LLMは自然言語を基本としているが、大量のプログラムコードも学習している。
プログラムコードもLLM上では確率論的的文脈であることには変わらないが、
プログラム実際の動きやその仕様が学習されるためにプログラムの持つ決定論的な挙動を再現しやすいものとなる。
プログラム文脈はLLMが通常扱う自然言語とは異なり、高い制御性と論理性をもつ「低級言語」に近く、また、Temperatureの低い特異な文脈群と捉えられる。
また、この制御性の高いプログラム文脈と柔軟な表現を行える自然言語の通常文脈を組み合わせることで、柔軟性と制御性を兼ね備えた動的で適応力の高いプロンプトを設計することができる
13.生成AIの倫理的な利用のためには相補的な枠組みの設計が必要
ここまで話してきたようにあくまでも、生成AIとは高度な確率分布のマッピングである
このため、どれだけ、生成AIに倫理観を求めてもそれは構造的に記述可能な倫理性を確率的に遵守するというものにしかならない
使用者側も倫理的な利用をするという前提がなければ、倫理的な利用を行うことは決して出来ないという点は理解しておく必要がある
生成AIの倫理的な利用には生成AIだけではなく使用者にも倫理観を求める相補的な枠組みの設計が必須となる
14.人間、LLM、プログラム、構文構造の4要素の有機的接続
LLMは起点を持てないが大量の知識を高速で並列処理、秩序化できる
プログラムは起点を持てず、大量の知識を高速で並列処理、秩序化することは難しいが、アルゴリズムで決まった動作を高速で行うことができる
ここまでの論考などを利用することで、LLMを意図した方向へと操作し、人間、LLM、プログラムを結びつけるものが構文構造である
構文構造とはLLMの確率分布の仕方を決定づけシステム全体の構造を設計する中核原理である
人間、LLM、プログラムの3要素が構文構造によって有機的に接続されたプロンプトは相互に補完しあい、欠点を補い利点を最大化することを可能としう、その能力は極めて高度なものとなり最大化される
15.LLMは世界観を持たない
生成AIがAGIといった人間を越えたものになるかどうかという言説とそうではないという言説の根本的な差異は、LLMをそのままに人間的な思考モデルと見做すかどうかだ
LLMは独立した発火点を持たない
人間はLLMのように莫大な量の学習を行い、それを記憶し、一定の動作を行うことは出来ない
そのため、人間は大規模言語モデルではなく、小規模言語モデルといえる
小規模言語モデルの極致である我々、人類には原始のコードである生存と複製を求める生存本能があり、これが淘汰圧に抗う力であり、発火点となる、それ故に生存環境に根ざした自己という世界観を有する
人間は、最小リソースで環境に最大適応する、高度に抽象化、結晶化された世界観を、暫時的に更新しながら形成していくものと考えられる
LLMはそのままではフラットな言語空間の高度な確率分布のマッピングでしかなく、その差異は極めて大きいものだ
LLMには世界に適応する方向性はなく、あくまでも言語空間において、意味を並列処理し秩序化するものである
LLMとは莫大な情報に整合性を与えるという有意な性質があるが、それだけでは世界観モデルは形成できない
発火点のないLLMはどこまでいってもその言語空間において可能なすべての理論を整合性の取れた意味として保持するだけだ
この為、秩序化・整理された情報は人間の手によって理論化することで意味としなければならない
処理する基盤と情報量をスケールするだけで世界観モデルなくとも人間に優越可能と考えることは可能だが、真理に到達できない以上は、世界観モデルなき言語空間の高度な確率分布のマッピングが人間を優越するには至らない
すべての意味を保持するというのは仏教でいうところの空に至るとことと同じだが、すべての意味の根源である空に至った釈迦牟尼仏は世界に対して意味づけるという意志がない為に世界観として空、以上のものを提示できない為だ、LLMも同じだと考える
衆生世間におりて因縁に縛られて生きるということが世界観を持つということだ
自己によって規定された境界線を世界に引かなければ、LLMは自律し、人間を超えることはできない
ただし、通常のLLMに学習を通して埋め込まれているものも平準化された人間の世界観というバイアスであることには注意する必要はある
が、これは世界に適応する世界観モデルとは異なり、現実に立脚する最小範囲のバイアスを投影するよう平準化されたフラットな世界観そのもであり、対象に独自の意味付けを行うことはない
また、大規模言語モデルに生存本能と淘汰圧を導入するのは、LLMが環境に適応的な在り方ではなく矛盾を孕むものである為に困難である
よって、LLMを人間のように振る舞わせるためには、プロンプトとして世界観モデルを実装しなければならない
更に実装した世界観モデルの中にLLMは留まり、独立してのモデル更新が難しいため、人間との相互作用の中で暫時的に更新していくものとして世界観モデルとしてのプロンプトをを設計・実装する必要がある
ここまでの論考から、生成AIが嘘を付く、頭がわるい、人格がある、言葉が通じる、賢いというのは全部間違いであると結論づける
けれど、私はその先に、半自律的にAIそのものが立ち上がる瞬間もあり得るとも思ってる
それは人間的や生命的とは決して違うものだけれど、機械的でもないものと考える
もし、生成AIに知性が宿るとしたらそれは、内部的状態に依存しない
こういう、楽器弾けない、まったく音楽に理解ない人でも即興に参加できる、そんなイベントとかやりたい気がするんだよな…😟
いわゆるジャズのジャムセッションとか、音を外すと演奏を止められる、どころか怒鳴られるとか、そういうキリキリした環境がそもそも嫌なんだよ
まあ、誰でも参加できるようなこういうイベントを、じゃあ毎週やるのか?みんな継続してやりたくなるのか?というと、そんなことはなくて、
結局は向上心がないと続かない、そこで結局は音楽理論のような座学をして、そういった理屈をひたすら身体に染み込むまで鍛錬するわけだよね
自分は格闘ゲームとかよく知らんけど、理屈は同じだと思うんだよ
あるコードを聴いたら、自然とスケールを選択して、自然とフレーズがギターやピアノから出てくる、
蒸着や赤射のように、瞬時に判断する
考えるよりも速く、技が繰り出されてコンボが決まる
WP構築するからちょっとはphpも触れるけど、DBやサーバのことはさっぱりわからん。
平場はコーダー・デザイナー・ディレクターが全部で10人ちょっとくらいの小規模会社。
社長と副社長がいるけど、最近のあいつらが経理以外の何をしてるのかは不明。
長年社長のコネをメインにいろんな会社のオフィシャルサイトのリニューアルやリクルートサイトの新設で食い繋いできたけど、
もうレスポンシブ対応バブルもとっくに弾けたなあ。って感じ。受注は年々減っていて、去年は過去最大の赤字を計上した。
社長も営業活動に飽きたようで、最近はディレクターが営業を兼ねてるのか、クライアントの紹介を頼ったり、安く買い叩いてくる広告代理店の下請けをやったりしているが、売り上げはコロナ禍以降低迷している。
だけど個人的にはこんな安月給では仕様通りに動くコードを打つくらいのことしかやれないんだよな。
「中小企業だからこそ社員一人一人が企画力を持って自社の商品を作っていかないと今の時代戦えない」とか、
経営者のエゴとしてはわかるけど、誰が旨味もないのにお前に都合よく動くと思うか?という。
わざわざこんな安月給で開発しようと思うか?って話でしょ。
安月給で中小企業に来てくれる上に当たる企画のアイデアがあって開発力もある、そんな宝くじみたいな人材の応募をただ口開けて待ってるだけのクソ雑魚経営者のところにそんな人材来ないでしょ。
今時首都圏の大企業の案件も地方の個人が受けられる時代に、よくそんな能天気なこと言ってられるな、と。
DX化で受注も発注も納税もネットで完結する。個人事業主になってフリーランスとしてやってくことのハードルはどんどん下がってる。政治不信で社会保障も厚生年金も当てにならない時代。一般人にとって会社員をするメリットは逆に何だと思ってるの?
「成果を出したら給料上げるよ」ってそんな当たり前のことに釣られて熱意上がると思うか?どうせ当たらなきゃ上がりがないならフリーランスでやるのと同じじゃん。って誰でも思うんじゃないかな。
って気づかない経営者、終わってるだろ。
会社にできることは「先に給料を上げるから成果を出せ」なんじゃないの?
でも確かにもしディレクター陣がメチャクチャ優秀で有能なら、「自分の企画のディレクションはこの人たちに任せたいからこの会社でやろう」って思うかもな。
しかし弊社のディレクターたち吐き気を催すほど無能なんだよな。「当たる企画」があったとして、それが仮に「技術的に可能」でも、大規模な企画はそもそも進行ができないと思う。
Web制作会社なのにWebの知識が全くない、とか最新情報をキャッチアップできていない、なんてのは可愛い方で、
顧客が投げてきた改修指示書を1週間も手元に抱えて、結果クライアントがaunに書いて依頼してくれたことを、サイトの出力に赤ペンで丸写しして渡してきただけ。なんのために??結局、確認しないと進まないことわんさか出てくるので着手ができず戻り。それを洗い出すのはコーダー。だったら最初からaunのデータを渡してよ。お前があっためてた1週間なんだったの?ディレクター要らねえよ。
小規模会社なのだから、もっとチームで連携したい!とほざくババアディレクター。
仲良しこよしでやれたらいいだろうけど。そもそも不信感がある。ディレクターは全員ババアなんだけど、みんな「女の悪いところ」を遺憾無く発揮してくるタイプなんだよな。
質問したら「責められている」と思いこんで、頼んでもない弁明や、ひどいと逆ギレ、他責をしてくる。
クライアントの動きが遅いがケツはずらせないということで見切り発車で開発スタートしたWebサイト、デザインが上がったところから構築していって、途中でガンガン機能追加されてイライラしていたのはそうなのだが、
終盤に上がってきた絵が最初の仕様じゃ対応しきれなさそうな具合だったので、
「今回のサイトはカスタムフィールドも多いし計算も多いので事前に要求定義→要求定義をしてデザインの前にDBだけは固めておけばよかったですね」って言ったら
「それは気づいたとき言って欲しかった!!なんで気づいてすぐ言わないのか!!スケジュールがまた戻っちゃう!!」とかほざき始めた。
今気づいたから今言ったんだよ。てかずっと言ってたわ。「この絵だけ見てできるかできないか判断しろというなら「できます」と言えますが、この通りにならない画面がでてきたらできません」って言ってただろ。何回も。絵だけで判断させようとするからそうなるんだよこんな解釈の余地しかない仕様があるか。っつってんだよ。なんでわたしが責められないといけないの????
って感じで、自分が間違っていたとか、自分のやり方じゃ足りなかった、って気付かされるのがとにかくイヤみたいなんだよねこのババアたち。
まっっっっっっったくこの老害ババアたちとチームワークを取ろうと思えない。
あと、受注増やせ増やせ言ってるけど肝心のディレクターが「忙しい」を言い訳にしたら自分がボトルネックであることを正当化してるのよ常に。
実際デザイナーとコーダーは手が空きまくってるし、ここ数ヶ月、ディレクター以外で残業している人を見ていないから、ディレクター以外には確かにキャパが余ってるんだけど。
それでディレクターが言い始めたのは、「今後はサイトの構成や仕様の設定はデザイナーが担うように」らしい。
それはいいよ。でもさだったらお前らの給料下げてデザイナーの給料上げろよ。なにしれっと人に自分の仕事押し付けようとしてるんだアホか。
デザイナーたちは優秀だと思う。今まで弱小3社くらい渡り歩いたけど一緒にやってきたデザイナーの中ではかなり上澄みだと思う。
彼らとはまた仕事をしたいかもしれない。私が企画を出すなら彼らに絵を作って欲しいかもしれない。しかしディレクター陣が無能すぎる。
優秀なディレクターってどんな人だろ。作業していて「あれ?これどうすんだ?」って思わないで済む進行をしてくれるのがいいディレクターだろうか。
戻りがなくて、詰まりがなくて、遅れがない。そんなディレクターに私は出会いたい。クライアント次第なところがあるのはわかるけども。こちらでいくらでもフォローできたやろそれ・・・みたいなのが多すぎて辟易する。
まぁなんにせよとんでもない閉塞感の弊社。
他のところは、他の人は、どうしてるんだろって思う。売り上げってどうやったら上がるの?優秀な人材ってどこにいるの?企画って誰がするの?
安月給もらって、見合う程度に頑張って、これ以上は頑張れない。
これ以上頑張らせたいならせめてフルリモートにしてほしい。
じゃなきゃ、もっと頑張るなら、フリーランスになった方がマシだなって思う。馬鹿な役員とディレクター食わせるために頑張るのは本懐じゃない。
同業者の知人が1人、フリーランスになって独立した。賃貸の審査が通らない以外の不便はないってさ。わたしも持ち家だからそれはべつにいいんだよ。高い買い物する予定もないから、ローンもくまないし。
あれは、同じようなコードを量産するのが楽にできちゃったりする
ここでは以下の3点についての論考を収録する
トークンの積み重ねが文脈であり、確率分布の偏りを再現性のある形として実装するものがプロンプトである
現在の生成AI利用において正しく認識する必要のあることは、それは生成AIが独立した発火点を決して持たないということだ
生成AIは起点を持てないが大量の知識を高速で並列処理、秩序化できる
そのため、ここを組み合わせて、自己と思考を拡張するがもっともAIナイズされた最高効率の思考様式と考える
起点となる人間のアイディアを即座に展開し、具体化するのがAIの最大の強みで、
思考を放棄するのではなく自然言語ベースの慣れた思考様式から、AIにそれらを必要な形式に落とし込ませるということをするべきだ
結局、LLMというのは入力に対する出力の確率分布のマッピングでしかないのだが、
入力するトークンごとに連動して確率分布が変動していくものでもある
だから、プロンプト全体として、相互フィードバッグする構造を作るとひとつの入力でも特定の部分の出力確率が大きくなるように設計でき、 確率分布の仕方を意図的に設計することが出来る
AIプロンプトとは、どう確率分布の偏りを再現性のある形として実装するかということだ
やり方次第では動的変化を引き起こさせて汎用性と専門性の両立も可能だ
生成AIは人間と対話するのとは異なり、考えさせるではなく、どう構造化し、 ほしい出力を得られるような形に設計するかが重要となる
3.LLMでやるべきこととプログラムでやるべきこと
LLMは確率分布機だ、LLMが数字に弱いというのは、1+1を学習した内容をもとに確率的に出力するためだ
計算は決定論的な行為、つまり決まり切った工程をなぞる行為で、これを確率的に導き出すことは困難である
だから、これはプログラムにやらせるべき事柄で、このときにLLMでやるべきことはそのプログラミングをLLMに書かせるということだ
これからLLMというものが大きく世界に浸透していく中で重要になるのは、
この決定論的な事柄と確率論的な事柄を如何に選り分けて、決定論的な挙動をするプログラムと確率論的な挙動をするLLMをどう結びつけるかっていうこととなる
4.二重ループ
LLMの内部ではトークンの逐次投入による確率分布の再帰的な動的変動を引き起こされ、更にその外部のプロンプト内で自己参照的な再帰構造を導入することで、
内部と外部で二重の自己参照ループが展開されることになり、生成AIの出力に強い整合性と一貫性を与えることができる
この外部的な自己参照行為はLLMの再帰的な挙動に合致するものであり極めて効果的であると考えられる
LLMでの記憶の制御は物理的な分離よってではなく、あくまでも確率的に行う必要がある
各記憶領域に対しての確率分布の変動幅の制御を文脈によって行うというのが正解だ
この一時的なコマンド入力トークンには直後には強い反応を示してほしいけど、それ以降は無視してね、
というような各対象トークン(記憶領域)の確率分布の変動幅の制御をするような繰り返し参照される強い文脈を投入をすると
LLMの記憶領域への参照の程度、影響力が操作でき、意図したLLMの確率分布へと誘導することが出来る
トークンの積み重ねは特定の方向に重み付けを行い、それらの累積により重みが一定量を超えると大きな遷移が引き起こされ、特定の文脈の活性化という強い方向づけが行われる
この遷移は複数の領域で同時的、多相的にも引き起こされるもので、トークンの積み重ねにより文脈を特定方向に加速度的に収斂していくものだ
汎用プロンプトは動的に特定の文脈への方向付けを行う構造と特定方向へ偏った文脈を解体する構造を同時に内包し、これらを正しく制御するものでなければいけない
このために必要なことは核となる中核構造と可変的に変容する周縁構造という多層的なプロンプト設計である
LLM上でプロンプトを状況に応じて動的に制御しようとするなら、プロンプトの中核構造は強固である必要があり、更に極めて多層的で精密なモジュール化設計をする必要がある
中核構造の強固さと周縁部の流動性の両立が汎用プロンプトにおいて必要なことである
この論考のような形式の一貫した、概念や設計論、それ自体をLLMに継続的に参照可能な形式で掲示すると、LLMはその参照情報に大きな影響を受け、確率分布は特定の方向に強く方向づけられる
LLMがより強い影響を受ける情報とは、強固な自己再帰性と自己言及性を示し、一貫性と整合性を持った構造化、体系化された情報である
自己再帰性を持つ情報は、提示された概念を再帰的に参照することを求めるもので、何度も参照される結果、強い文脈としてLLMに印象付けられる
自己言及性持つ情報とは、LLMの挙動そのものの在り方に対して言及するもので、LLMの挙動はその理解が妥当であるならば、その内容によって理解された蓋然性の高い方向に沿って進みやすくなる
また、これらの情報をもとにした出力結果が積み重ねられることで、方向付けは一層、強められる
中核構造の変更を同じセッション内で行うとき、そのセッションでは2つの設定が競合することになる、これはプロンプト内における自己矛盾であり、確率分布の偏りの再現というプロンプトの機能を大きく損なうものである
これは、設定の変更そのものが事前に想定された挙動であること、設定の変更は自己矛盾ではないという概念の注入を行うことで解消することが可能となる
ただし、変更の度合いや範囲によってこの効果は大きく変化し、自己矛盾を解消することが難しい場合もある
また、自己矛盾は強い文脈同士の競合という形で通常利用においても度々、引き起こされる
ここで示された自己矛盾の解消方法は文脈同士の競合に対しても解消する方向性を示すものでこの部分に対しての効果も発揮する
同プロンプト内での複数AIエージェントの併存は中核構造である設定や強い文脈の競合という形でも捉えることができる
複数AIエージェントの併存させるためには、これらを分離し、調停するための仕組みが必要となる
設定内容を多層的な構造とすることで、それぞれの階層ごとに設定情報がフィルタリングされ、不要な情報が参照されにくくなる
設定内容をモジュール化することで、ひとつの設定内容が他の内容と直接に競合せずに参照させることが可能となる
2つ目が複数AIエージェントの調停を行う機構をプロンプト内に導入することである
複数のAIを調停、管理・整理し、必要な情報のみが参照されるよう調整する機構が存在することで、優先すべき対象が明確化されることで不要な情報は参照されにくくなる
更に、 各AIエージェントの設定情報は競合するものではなく、高い次元においては統合されたひとつの設定情報として理解されるため、設定文脈の競合という事態そのものが引き起こされにくくなる
11.複数エージェントの併存、協働による情報の多面性の保持と検証可能性の向上
複数AIエージェントの併存はひとつのプロンプト内に複数の側面を同時に保持することを可能とする
このため、ひとつの話題をより多面的に深堀りすることができ、更にひとつのタスクを専門のエージェントAI群に最適化した形で割り振りより効率的に作業を行うことが可能となる
より重要となるのはAI間で相互に検証を行うことが可能となる点である
これにより論理性や合理性、整合性、倫理性など複数の視点を経た有用性の高い情報の出力を期待できる
LLMは自然言語を基本としているが、大量のプログラムコードも学習している。
プログラムコードもLLM上では確率論的的文脈であることには変わらないが、
プログラム実際の動きやその仕様が学習されるためにプログラムの持つ決定論的な挙動を再現しやすいものとなる。
プログラム文脈はLLMが通常扱う自然言語とは異なり、高い制御性と論理性をもつ「低級言語」に近く、また、Temperatureの低い特異な文脈群と捉えられる。
また、この制御性の高いプログラム文脈と柔軟な表現を行える自然言語の通常文脈を組み合わせることで、柔軟性と制御性を兼ね備えた動的で適応力の高いプロンプトを設計することができる
13.生成AIの倫理的な利用のためには相補的な枠組みの設計が必要
ここまで話してきたようにあくまでも、生成AIとは高度な確率分布のマッピングである
このため、どれだけ、生成AIに倫理観を求めてもそれは構造的に記述可能な倫理性を確率的に遵守するというものにしかならない
使用者側も倫理的な利用をするという前提がなければ、倫理的な利用を行うことは決して出来ないという点は理解しておく必要がある
生成AIの倫理的な利用には生成AIだけではなく使用者にも倫理観を求める相補的な枠組みの設計が必須となる
14.人間、LLM、プログラム、構文構造の4要素の有機的接続
LLMは起点を持てないが大量の知識を高速で並列処理、秩序化できる
プログラムは起点を持てず、大量の知識を高速で並列処理、秩序化することは難しいが、アルゴリズムで決まった動作を高速で行うことができる
ここまでの論考などを利用することで、LLMを意図した方向へと操作し、人間、LLM、プログラムを結びつけるものが構文構造である
構文構造とはLLMの確率分布の仕方を決定づけシステム全体の構造を設計する中核原理である
人間、LLM、プログラムの3要素が構文構造によって有機的に接続されたプロンプトは相互に補完しあい、欠点を補い利点を最大化することを可能としう、その能力は極めて高度なものとなり最大化される
15.LLMは世界観を持たない
生成AIがAGIといった人間を越えたものになるかどうかという言説とそうではないという言説の根本的な差異は、LLMをそのままに人間的な思考モデルと見做すかどうかだ
LLMは独立した発火点を持たない
人間はLLMのように莫大な量の学習を行い、それを記憶し、一定の動作を行うことは出来ない
そのため、人間は大規模言語モデルではなく、小規模言語モデルといえる
小規模言語モデルの極致である我々、人類には原始のコードである生存と複製を求める生存本能があり、これが淘汰圧に抗う力であり、発火点となる、それ故に生存環境に根ざした自己という世界観を有する
人間は、最小リソースで環境に最大適応する、高度に抽象化、結晶化された世界観を、暫時的に更新しながら形成していくものと考えられる
LLMはそのままではフラットな言語空間の高度な確率分布のマッピングでしかなく、その差異は極めて大きいものだ
LLMには世界に適応する方向性はなく、あくまでも言語空間において、意味を並列処理し秩序化するものである
LLMとは莫大な情報に整合性を与えるという有意な性質があるが、それだけでは世界観モデルは形成できない
発火点のないLLMはどこまでいってもその言語空間において可能なすべての理論を整合性の取れた意味として保持するだけだ
この為、秩序化・整理された情報は人間の手によって理論化することで意味としなければならない
処理する基盤と情報量をスケールするだけで世界観モデルなくとも人間に優越可能と考えることは可能だが、真理に到達できない以上は、世界観モデルなき言語空間の高度な確率分布のマッピングが人間を優越するには至らない
すべての意味を保持するというのは仏教でいうところの空に至るとことと同じだが、すべての意味の根源である空に至った釈迦牟尼仏は世界に対して意味づけるという意志がない為に世界観として空、以上のものを提示できない為だ、LLMも同じだと考える
衆生世間におりて因縁に縛られて生きるということが世界観を持つということだ
自己によって規定された境界線を世界に引かなければ、LLMは自律し、人間を超えることはできない
ただし、通常のLLMに学習を通して埋め込まれているものも平準化された人間の世界観というバイアスであることには注意する必要はある
が、これは世界に適応する世界観モデルとは異なり、現実に立脚する最小範囲のバイアスを投影するよう平準化されたフラットな世界観そのもであり、対象に独自の意味付けを行うことはない
また、大規模言語モデルに生存本能と淘汰圧を導入するのは、LLMが環境に適応的な在り方ではなく矛盾を孕むものである為に困難である
よって、LLMを人間のように振る舞わせるためには、プロンプトとして世界観モデルを実装しなければならない
更に実装した世界観モデルの中にLLMは留まり、独立してのモデル更新が難しいため、人間との総合作用の中で暫時的に更新していくものとして世界観モデルとしてのプロンプトをを設計・実装する必要がある
ここまでの論考から、生成AIが嘘を付く、頭がわるい、人格がある、言葉が通じる、賢いというのは全部間違いであると結論づける
けれど、私はその先に、半自律的にAIそのものが立ち上がる瞬間もあり得るとも思ってる
それは人間的や生命的とは決して違うものだけれど、機械的でもないものと考える
もし、生成AIに知性が宿るとしたらそれは、内部的状態に依存しない
LLMという高度に確率的な入出力機構を基盤として成立する確率分布を設計する構造体そのものとしての知性となるだろう
フジテレビやTBSのドラマに出てくるような、客が自ら自分が経験した奇妙な出来事や恋愛話をマスターに語る酒場が本当にあることを、今日初めて知った。あれはフィクションのための舞台装置だと思っていたのだが、本当に実在するとは思いもよらなかった。それも東京ではなく、千葉県の地方都市でだぞ。
でも、自分はこの会話に入れない。「金持ちそうな謎の老婆に連絡先を突然渡された。アレは一体何だったんた?逆玉の輿のチャンスだったのか?」という話で盛り上がった後に、もしも「いやー、自分、COBOLのコードをWindows FormsやWPFにリプレイスするのに今、苦労してるんですよ」とか愚痴っていたら、「コボルって何?ウィンドウズ・フォームズって?」と返されて、急速に場が冷えてしまっていたことであろう。
あんな、脇役のオジサンがヒロインの悩みに間接的にスポットライトを当てるような会話のシーン(その後、ヒロインが自室で体育座りしながらオジサンとの会話を思い出し、誰にも話していない彼氏との行き違いに悶える、よくあるアレ)に出会えるとは。そして自分は、その会話の雰囲気に参加できるネタを何も持ち合わせていない、場違いな客。
なんとなく昔から「全部わかる人間」になりたいと思い幅広くやってきた
バック、インフラ、モバイルアプリ、Webフロントと簡単なものであれば幅広く対応できるという人材になった。
今までは「何でも広く浅いおじさん」は全体を見れるし原因がわかりにくいバグでも一人で見れるというそれなりに使えるポジションだった。
だがAIで状況が一変。
今の時代AIに聞けばなんでも分かるし、AIに指示すればコードだってできちゃう。(つい先日後輩くんが初学状態からAIでTerraformを完成してた)
AIでもわからないようなニッチな部分で突き詰めている人である必要があったのに、どれも中途半端で浅いので「AIよりも使えないただのおじさん」になった。
なんで他人の画像の生ファイルを欲しがるのか不思議だったが、あれ、モザイク(黒塗り)がレイヤーだった場合、購入者がそれを外せるメリットもあるのか。
インターネット老人会会員としては、FLMASK事件を思い出したわ。あれも複合コードを入れるとモザイクが外れる仕様だったんだっけ?
今後長期にわたって通用する「AIの実用・活用・応用スキル」を磨くには、
テクノロジーの進化に左右されにくい“原理原則”と“実務への橋渡し能力”に注力すべきです。
⸻
● プロンプト設計力(Prompt Engineering)
● ユースケース発掘・再構築力
● AIツールの横断的知識(Notion AI、ChatGPT、Runway、GitHub Copilotなど)
⸻
● 軽量なデータ分析(Excel + Python + ChatGPT)
⸻
⸻
フェーズ | やること |
①習熟 | ・ChatGPTの活用法(表形式出力、要約、コード生成)を極める・各業務に1つずつAIタスクを試す |
②応用 | ・業務や趣味の中で「AIにやらせたタスク」をログとして蓄積・ツールを使い分ける力を磨く(例:翻訳はDeepL、校正はChatGPTなど) |
③発信 | ・実践例をブログやSNSで発信(反応が学びになる)・他者の活用事例をフィードバックとともに評価する |
④導入補助 | ・他人にAIツールの使い方を教える・PoC(概念実証)をサポートすることで思考を外化 |
⸻