AI
作成日時:2024-08-01以前
更新日時:2024-08-01
AIを使った圧縮技術
もうある。
どうやって完全に同一の内容を復元できるか。
完全さを求めなければそれでいいか。
AI機能付きカメラ
昨今のAI補正付きカメラでは、文字がゆがんだりすることもあるらしい。
その場合の法的価値はどうなるか。
BOSCARによるプロンプトエンジニアリング
プロンプトエンジニアリングとは? 16種類の手法を記述例とともに解説 - ログミーTech
色々なプロンプト手法があるが、結局は人間相手に適切に質問をするようにプロンプトを書くのが一番効果的なように思えてきた。
それならば人間相手で使われるフレームワークを使用すればよい。
BOSCARフレームワークを使ったプロンプトがよいと考える。
背景(B)と目的(O)を告げ、対象(S)を明確にする。
制約(C)と前提(A)を与え、成果物(R)を明示する。
- Directional Stimulus Prompting(方向性刺激プロンプティング)
- Few-shot prompting
- 観点整理と具体性。
- 5W2H。
人間と一緒
人間が理解できない文章をAIに渡しても、正しく理解してもらえるわけがない。
人間相手に出すような文章を。
BOSCARを使用する。
意図を伝える力
A「エンジニアが学ぶべき言語は何ですか」
B「日本語」
というネタがあるが、ネタではないと考えるようになった。
相手がAIにしろ、人間にしろ、意図が伝わらなければ仕事は上手くいかない。
考えを上手く伝えるには
論理学、ドキュメントライティング、ヒューマンスキルの学習である。
ユースケース
- トランスパイル
- 自動テスト作成
- レビュー
- IaC
- プロトタイプ
- ペアプロ
契約
ソースコードなどに生成AIを用いて作成されたものが含まれる場合。
顧客と同意を取っておく。
著作権に対する認識合わせ。
mcp
- tool:実行
- prompt:ユーザーにもう一度聞くよう尋ねることができる
- resource
AI時代に生き残るため
AIをうまく扱うには下記が必要。
- 適切な情報をAIに渡す能力
- 豊富な知識
故に下記を行わなければならない。
- 自然言語を扱う能力の向上
- 既知の未知の増大
自然言語を扱う能力の向上
AIに渡すプロンプト、およびドキュメントは正しく書かなければならない。
Garbage in, garbage out - Wikipedia
ゴミみたいなインプットからは、ゴミみたいなアウトプットが出る。
つまり、ゴミみたいなプロンプトからは、ゴミみたいな結果が出る。
意図した結果ではなかったり、ハルシネーションが発生しうる。
RAG、MCP、Agentic codingなどにおいて、AIに渡すドキュメントも同様。
また、コンテキストは適切に渡さなければならない。
人間と同じで、前提条件や背景を提供されないと正しい結果を出しづらくなる。
認知負荷が高まる状態となる。
既知の未知の増大
ある技術の存在を知らなければ、AIに質問や提案ができない。
また、AIの出力内容を適切に読み取ることができない。
例えば、“MVCC”という単語を知らない人間が、AIに”MVCC”を質問する可能性は0に近い。
なぜならば、存在も知らないから。(→未知の未知)
例えば、ある問題を解決する方法AとBがあったとする。
最適解はBであるが、ユーザーがBの存在を知らない場合、
AIに対してAを前提とした問題解決の方法を尋ねてしまう。
当然AIはAによる問題解決の方法を出力する。
豊富な知識がなければ、AIをうまく扱うことができない。
故に既知の未知を増大させる。
「AIがあれば学習は不要」ということは全くない。
もともとのスキルの高い人間がAIをうまく使いこなせ、
スキルのない人間は使いこなせない。
というような記事を何件か見たことがある。
これらのスキルは対AI以外でも必須
上記のスキルは、AIに対して意図を明確に伝えるために必要。
だが、これらはAIに対してだけではなく、人間に対しても同様のことが言える。
設計書やチャットの文章が滅茶苦茶ならば、意図を明確に伝えられない。
知識がなければ顧客に良い提案をできない。
仮にエンジニアを辞めたとしても、これらのスキルは生きる。
どの職種に再就職しようが、人間社会で生きていくならばこれらのスキルはあったほうが良い。