Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
自然言語による シェルコマンドラインチャー wanna の紹介
Search
hirokidaichi
April 05, 2023
Technology
0
2.3k
自然言語による シェルコマンドラインチャー wanna の紹介
hirokidaichi
April 05, 2023
Tweet
Share
More Decks by hirokidaichi
See All by hirokidaichi
大規模言語モデル時代の開発生産性
hirokidaichi
21
12k
内製化のコツとワナ
hirokidaichi
2
1.8k
心理的安全性とソフトウェア化する社会/ Psychological Safety and Software-based Society
hirokidaichi
40
12k
Power Theory of Software Architecture
hirokidaichi
21
7.4k
Cultural Capital Theory in Software Engineering
hirokidaichi
48
15k
エンジニアリング組織論への招待:第1章(プレゼン)
hirokidaichi
6
2.6k
エンジニアリング組織論への招待:第2章(プレゼン)
hirokidaichi
3
1.1k
2つのDXと技術的負債-YAPC Tokyo 2019
hirokidaichi
55
25k
Other Decks in Technology
See All in Technology
Railway Oriented Programming を オニオンアーキテクチャに適用する by kotlin-result / Railway Oriented Programming in Onion Architecture by kotlin-result
yuitosato
2
190
日経ビジュアルデータにおける スクロールテリングと地図/nikkei-tech-talk-26
nikkei_engineer_recruiting
0
150
サーバーレス SaaS における運用監視の負荷軽減のためのアプローチ
ririru0325
0
130
TinyMLの技術動向
kyotomon
2
230
Mobbing Practices
kawaguti
PRO
2
290
クライアントサイドでよく使われる Debounce処理 をサーバサイドで3回実装した話
yoshiori
1
110
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
200
WebRTC と Wasm の関係を振り返ってみた
tetter27
0
230
で、ValhallaのValue Classってどうなったの?
skrb
1
420
生成AIの活用パターンと継続的評価
asei
10
1.3k
実は仲良し?Amplify Gen2と生成AI
mkdev10
1
240
強すぎるIAMをCloudTrailを使って適正化した話
yjszk
0
230
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
A Philosophy of Restraint
colly
203
16k
Done Done
chrislema
181
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
106
49k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Code Reviewing Like a Champion
maltzj
519
39k
Building an army of robots
kneath
302
42k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.6k
Writing Fast Ruby
sferik
626
60k
Transcript
自然言語による シェルコマンドラインチャー wanna の紹介 株式会社レクター 広木大地
広木 大地 1983年生まれ。筑波大学大学院を卒業後、2008年に新卒第1期として株式会社ミクシィに 入社。同社のアーキテクトとして、技術戦略から組織構築などに携わる。 同社メディア開発部長、開発部部長、サービス本部長執行役員を務めた後、2015年退社。 現在は、株式会社レクターを創業し、技術と経営をつなぐ技術組織のアドバイザリーとして、 多数の会社の経営支援を行っている。 著書『エンジニアリング組織論への招待~不確実性に向き合う思考と組織のリファクタング』 が第6回ブクログ大賞・ビジネス書部門大賞、翔泳社ITエンジニアに読んでほしい技術書大 賞2019・技術書大賞受賞。一般社団法人日本CTO協会理事。内閣官房、経産省、IPA、デ
ジタル庁などでDX/リスキリングに関する委員を歴任。 2022年9月、株式会社朝日新聞社社外CTO就任 2022年11月、株式会社グッドパッチ社外取締役就任 自己紹介
None
まずはデモをご覧ください。
None
wanna think / コマンドを考えるコマンド ソフトウェア開発のプロセス設計し、 AIと人間の役割を決めてステートマシンとして実装 生成 名前提案 概要生成と保存 反省とデバッグ
指示出し 実行 保存 追加指示 指示リセット 名前選択 これまでの 指示をまとめる レビュー 保存フェーズ 終了 Exit 問題があれば修正 LLM の仕事 人間の仕事
AIが提案し、人間が決める 自然言語を入力するのは意外とめんどくさい。だからできる限り ”意思決定”だけさせる。 LLM の仕事:実装したり提案したり 人間の仕事:目的の提供と意思決定
複数のNLPタスクを組み合わせたUX GPTの凄さはNLPの圧倒的な民主化。これまで使わなかったところにもふんだんに使う設計 ①ソースコード生成 ③実行結果の評価と デバッグ ②スクリプト名の 提案 ④概要文の生成 ⑤ユーザー言語の 推定
GPTのすごさはNLPの民主化 (こんなところにも使うの?がUXになる。)
スクリプトの生成プロンプト CoT:Chain of Thoughtを効かせるためにまず説明を求める。 CoT One Shot Example ユーザーの言語を入力から推定して、出力を縛る。
スクリプト名の提案プロンプト CoT:Chain of Thoughtを効かせるためにまず説明を求める。 CoT One Shot Example ユーザーの言語を入力から推定して、出力を縛る。 JSONの配列として出力を求めて、
parseし失敗したらretry。
実行結果から反省とデバッグ bashの出力をteeして、実行結果を systemプロンプトに抜粋して入力 もし、問題があればコードの修正をサジェスト。
スクリプト名の提案プロンプト CoT:Chain of Thoughtを効かせるためにまず説明を求める。 CoT One Shot Example ユーザーの言語を入力から推定して、出力を縛る。 JSONの配列として出力を求めて、
parseし失敗したらretry。
これまでの指示をまとめて概要文を作成
ユーザー言語を推定して、その言語で対話 プロンプトの能力は、英語の方が日本語よりやや高い。 また、論文やライブラリなど例が豊富。 一方、ユーザーへの応答は入力言語から自然と対応してほし い。(ときどき、英語で話し出すのを防ぐ )
Prompt Engineeringも 普通のエンジニアリング。 (既知のパターンの組み合わせと試行錯誤)
wanna think / コマンドを考えるコマンド ソフトウェア開発のプロセス設計し、 AIと人間の役割を決めてステートマシンとして実装 生成 名前提案 概要生成と保存 反省とデバッグ
指示出し 実行 保存 追加指示 指示リセット 名前選択 これまでの 指示をまとめる レビュー 保存フェーズ 終了 Exit 問題があれば修正 LLM の仕事 人間の仕事
LLMソフトウェア =組織プロセス設計
AIが提案し、人間が決める 自然言語を入力するのは意外とめんどくさい。だからできる限り ”意思決定”だけさせる。 LLM の仕事:実装したり提案したり 人間の仕事:目的の提供と意思決定
メンバーが提案し、マネージャが決める AIと人間の関係は、メンバーとマネジメントの組織設計に似ている。 メンバーの仕事:実装したり提案する マネージャの仕事:目的の提供と意思決定
すべての人が AIをマネジメントする マネージャになる。