考察ノート: OpenAIのcanvasは「convivial なAI」!?
この考察ノートシリーズでも、AIの発展する方向性として、人と並走する「convivial なAI」が大切な要素の一つであるという記事を書いた(もう一つは「挑発するAI」であった)。OpenAIの canvasはその一例になっているのではないかという考察。
追記:canvasの設計思想に至った、より根源的なUX思想とcanvasへの展開というお題でGemini-2.0-Flashさん、o1-preveiw-2024-09-12さんに考察してもらった、結果やいかに?
「convivial なAI」とは、
「convivial なAI」は、人間の主体性を尊重し、能力を拡張し、共に生きることを目指す、倫理的な境界線を守るAIであり、その要件としては、以下があった。
1. 人間の主体性を尊重し、奪わない
人間の思考を代替するのではなく、あくまで思考のツールとして機能する。人間の判断力を奪わない。
2. 人間の能力を拡張し、可能性を広げる
人間が自分の気持ちに気づき、目指したい方向を見つけることをサポートする。人間とAIのやり取りを通じて、人間の「解像度」を向上させる。
3. 人間との「共生」を重視する
人間と「ともに生きる」ことを目指し、単なる道具としてではなく、他者のような存在として扱われることを意識する。人間とAIの時間が楽しくいきいきとしたものであることを重視する。。
5. 人間との関係性を豊かにする
人間と自分との関係において、新たな知見を獲得するのを支援する。互いに高め合うことを支援する。自己理解を深めることを支援する。
OpenAI canvasとは
OpenAIのcanvasは、従来の人とAIのあいだの会話(チャット)に基づく相互のやり取りとは、異なるユーザーとAIとの相互のやり取り、むしろ協調作業の在り方を示す一つの例として(たぶん)開発されているものである。対象は、文書作成とプログラムの作成、プログラムはその場で実行もできる。OpenAIの2024年12月のShipmass(新機能やサービスを連続して大量に流す週間)インベントで、機能強化とFreeユーザーへの開放がアナウンスされ、さっそく使ってみた。
文章を生成するだけではなく、レビューや、書き直し、どんどん仕様を追加したり、自分でも書き加えたりしながら、まさにAIと協調しながら文章を作成するという、まさにconvivial な関係性を体験することができる。おそらく、一般的には、単なる文章生成機能にレビュー機能が付いたものとか、読み手レベルに応じた書き換えができる程度の認知度しかないのは、歯がゆいところでもある。
例えば、旅程表のテキストを貼りつけて、「旅程として整形して」とお願いすると、以下のようにインタラクティブに書き換えてくれる。
さらに、旅程表のスケジュールをみて、移動手段を追加してとお願いすると、以下のようになる。
つまり、中身を理解(という言葉は使いたくないが)上で、まるで(役に立つ旅程を作るという)意図をくみ取り、指示に従いつつ、情報を新たに(最初の文章にはなかった)追加してくれている。まさに、「能力を拡張」し、「ともに生きる」ような、そんな感触がある。さらにcanvas自体は、人間の指示あるいは人間が内容を上書きすることを前提としているので、「人間の主体性」は最大限尊重される。
中の人の解説
Andrew Ngさんは、スタンフォード大学の教授(adjunct professor)で、Google Brainの共同創設者でもあり、近年は深層学習・生成AIの教育コースDeepLearningAIをYoutubeやオンライン環境(無料で様々なツールが使える)で提供している。
12月13日(現地)、DeepLearningAIの、特別コースとして、OpenAIのcanvasが取り上げられ、7回にわたるショートコースとして無料提供された。タイトルは、「Collaborative Writing and Coding with OpenAI Canvas,」、講師は、OpenAIでcanvas開発に関わった、Karina Nguyenさん。つまり、中の人の解説を聞ける稀有なる体験である。
ショートコースなので、10分程度のビデオで、協調執筆、協調プログラミング、ゲームを作成する例、ER図の画像からSQLデータベースを作る例などが紹介される。コード実行機能が使われなかった(コードはvscodeなどにコピー&ペーストされれて実行)のは、収録時期が、python実行機能のリリースよりちょっと前だったからか。いや逆に、コード実行機能は、最後の最後に駆け込み実装されたのか。。
注目されるのは、"Training the Canvas"という回であり、中の人であるがゆえに、どのように、canvasを作るにあたってモデルをトレーニングしたかの説明がある。
"Training model to become a collaborator"(モデルを協調者にするための学習)というタイトルのスライドでは、会話の中でcanvasモードに切り替わるタイミング(Open a canvas)、ターゲットを絞った編集、全体リライト、精緻なフィードバックと、改良方法についての示唆を与えるために、より広い文脈の理解などが肝であったと紹介される。
そして、o1-previewのの出力を蒸留して、人工的なデータを作成して、これをつかった、学習を行っている。
コアのモデルの振る舞い(Core behavior)しては、以下を定義し、これらのbehaviroについて徹底的に学習を行った。
canvas自体の、開発手順も紹介。最初はモデルの振る舞い仕様からスタートし、ロバスト性とか信頼性評価が最初にきて、それから、基本的なベースとなる振る舞いを、既存のモデルに、プロンプトを与え、プロンプトの工夫のみで、すなわち、ICL(In Context Learning)やfew-shot learningを使いながら、試しながら実験し、これで良いとわかったら、人工的にデータを作成し、このデータを使って事後学習して、結果をモデル仕様の改良にもどる。実際は、赤いぐちゃぐちゃの線のようになるんだけども基本はこのループ。
モデルの振る舞いの開発ってのは、大変そうだ、ニュアンスとか詳細なスペックが必要、エッジケース(稀な事象や利用パターン)も考えないといけないし、複数ツールの相互作用(検索とか、コード生成とか)も考えないといけない。
例えば、コメントや修正案の提示では、最後は人間が評価し、結果として、gpt-4oにプロンプトを与えるよりも、学習後のcanvaのほうが品質は上回ることができた。
まとめ
「convivial なAI」を作るためには、canvasで行ったような開発の努力が必要であり、そこには「モデルの振る舞い」を明示的に定義し、その振る舞いになるように、ちゃんと作りこむというのが大きな要素を占めていることがわかる。
コアなモデルの振る舞いをちゃんと定義する。
コアなモデルの振る舞いは、canvasの設計思想、
必要となったらcanvasに自動的に切り替わる
全体のリライト、
コメントや修正例の提示、
ターゲットを絞った(書きたいことにフォーカスした)編集機能
コンテキスト(背景や文脈)のより広い理解。
これらの振る舞いは、プロンプトで試行錯誤しならがら、その成果を使って、人工的な学習データ(目的に合わせたデータでもある)を生成し、事後学習
などを行う必要があるが、これは生成AIの開発手段としては、王道でもあり、決して目新しいわけではない。しかし、原則に基づき、右往左往しながらも、ちゃんと製品レベルのアプリを作り上げた、canvas開発チームの努力に頭が下がるものである。ぜひ、Freeユーザーも、canvasをつかってみて、AIとの協調とはどんなものかを体感してほしいし、それは、人間の認識を変えて、「convivial なAI」が実現するための第一歩になるはずである。
追記:UXの原理からcanvasの設計思考への展開を考察してもらった by Gemini-2.0-Flash
はい、承知いたしました。Canvasの開発思想に至るUXの基本原則(convivialityを含む)を掘り下げ、それがどのようにCanvasの開発思想に展開されたかを、順を追って整理します。
UXの基本原則からCanvasの開発思想への展開
まず、UXデザインにおける基本原則と、それらがconviviality(共生性)の概念とどのように結びつき、Canvasの開発思想に具体的に落とし込まれたかを、以下のステップで解説します。
1. UXの基本原則の抽出
一般的なUXデザインの原則の中から、特にconvivialityと関連性が高い原則を抽出します。
ユーザー中心主義 (User-Centered Design):
ユーザーのニーズ、目標、行動を理解し、それらをデザインの中心に据える。
ユーザーが使いやすく、価値を感じられるプロダクトを開発する。
直感的な操作性 (Intuitive Usability):
学習コストが低く、初めて使うユーザーでも迷うことなく操作できるインターフェースを提供する。
ユーザーが自然に操作できるような、分かりやすいデザインを目指す。
効率性 (Efficiency):
ユーザーが目的を達成するために必要な時間や労力を最小限に抑える。
不要な手順を排除し、スムーズなユーザー体験を提供する。
フィードバック (Feedback):
ユーザーの操作に対して、適切なフィードバックをリアルタイムで提供する。
ユーザーが自分の行動の結果を理解し、安心して操作できるようにする。
エンゲージメント (Engagement):
ユーザーがプロダクトに興味を持ち、積極的に利用したくなるような魅力的なデザインを提供する。
ユーザーが楽しみながら、価値を感じられる体験を目指す。
アクセシビリティ (Accessibility):
年齢、能力、環境に関わらず、すべてのユーザーが利用できるように配慮する。
多様なニーズに対応し、包括的な体験を提供する。
2. Conviviality(共生性)の導入
これらの基本原則に、「convivialなAI」の概念を導入します。
人間の主体性の尊重:
AIを人間の代替ではなく、あくまでサポートツールとして位置づける。
ユーザーの意思決定を尊重し、AIが過度に介入しないようにする。
能力拡張:
AIとの協働を通じて、ユーザーの知識、スキル、創造性を向上させる。
AIが単なる情報提供だけでなく、思考を深める触媒となるように設計する。
共生的な関係性:
AIを単なる道具ではなく、協調者やパートナーとして捉えることができるようなインターフェースを設計する。
ユーザーとAIが互いに学び、成長できるような、インタラクティブな体験を提供する。
関係性の深化:
AIとの対話を通じて、ユーザーが自己理解を深め、新たな視点や気づきを得られるようにする。
AIとの関係性が、ユーザーにとって、より豊かで意味のあるものとなるようにデザインする。
3. Canvasの開発思想への展開
上記のUX原則とconvivialityの概念を基に、具体的なCanvasの開発思想がどのように展開されたかを、以下の順に整理します。
ユーザー中心の設計:
基本原則: ユーザー中心主義
conviviality: 人間の主体性の尊重
Canvasへの展開:
AIが主導するのではなく、ユーザーの指示や編集が中心となるワークフローを設計。
ユーザーが文章やコードを自由に修正・追加できる編集機能を実装。
直感的でスムーズな操作性:
基本原則: 直感的な操作性、効率性
conviviality: 能力拡張
Canvasへの展開:
自然な言語で指示を出せるインターフェースを設計。
文章やコードの修正がリアルタイムに反映されるインタラクティブなUI/UXを提供。
AIの提案や修正を分かりやすく提示する。
AIとの協働による能力拡張:
基本原則: フィードバック、エンゲージメント
conviviality: 能力拡張、共生的な関係性
Canvasへの展開:
AIが文章の構造を整理したり、追加情報を提案したり、ユーザーの思考を深めるサポートを提供。
レビューや書き換え機能を通じて、表現力を向上させる。
AIがユーザーの意図を理解し、能動的に提案や修正を行う。
共生的な関係性の構築:
基本原則: エンゲージメント
conviviality: 共生的な関係性、関係性の深化
Canvasへの展開:
AIを「協調者」や「パートナー」として捉えられるような、インタラクティブな体験を提供。
ユーザーがAIとの対話を通じて、自己理解を深められるようなUXをデザイン。
AIがユーザーに新たな視点や気づきを与え、創造的な活動を刺激する。
AIとの関係性を楽しく、有意義なものにする。
アクセシビリティの考慮
基本原則: アクセシビリティ
conviviality: すべての人との共生
Canvasへの展開:
テキスト読み上げ機能や、キーボード操作など、さまざまなユーザーに対応したアクセシビリティ機能を実装。
多様なユーザーが、不便なく利用できる環境を提供する。
まとめ
このように、UXの基本原則をベースに、convivialityの概念を導入することで、Canvasは単なるAIツールではなく、人間とAIが互いに尊重し、学び合い、創造性を高め合うためのプラットフォームとして開発されました。
CanvasのUI/UXには、これらの原則が随所に反映されており、人間中心の設計思想、使いやすさ、効率性、そしてAIとの共生という、バランスの取れたユーザー体験が提供されています。
感想(gemini-2.0-Flashの考察に対し):
「基本原則→convivialityの導入→canvas設計への展開」という形でまとめてくれた、ちょっと期待してたのと違うきもするが、UX的にはそうなんだろうという説明になっている。
UXの基本原則は、まあ、納得がいくものだ。
ユーザー中心主義 (User-Centered Design):
直感的な操作性 (Intuitive Usability):
効率性 (Efficiency):
フィードバック (Feedback):
エンゲージメント (Engagement):
アクセシビリティ (Accessibility):
追記:同様にo1-preview-2024-09-12に聞いてみた、
UXの思想と基本設計の推定
協調作業の促進: Canvasは、人間とAIが共同で作業を進める環境を重視しています。ユーザーインターフェースは、編集や指示が容易に行えるよう設計されており、AIからの提案も直感的に受け取れるようになっています。
直感的なインタラクション: ユーザーが自然な言葉で指示を出し、AIがそれに応じて適切なアクションを取る設計になっています。これにより、ユーザーは技術的な知識に依存せずにAIと対話できます。
文脈の深い理解: AIはユーザーの意図や文脈を深く理解するようトレーニングされており、より的確な提案や修正が可能となっています。これは、ユーザー体験を向上させる重要な要素です。
柔軟な編集機能: 全体のリライトから部分的な修正まで、多様な編集ニーズに対応できるよう設計されています。ユーザーは必要に応じてAIの提案を受け入れたり、自分で編集したりする自由があります。
持続的な改良と学習: 開発プロセスでは、モデルの振る舞いに関する詳細な仕様を定義し、ユーザーからのフィードバックやエッジケースを考慮して継続的に改良が行われています。これは、ユーザーの期待に応えるための努力を反映しています。
結論
OpenAIのCanvasは、「コンヴィヴィアルなAI」の理念を体現するようデザインされたツールであり、そのUX哲学はユーザーの主体性の尊重、能力の拡張、AIとの共生、そして関係性の豊かさを追求しています。開発の過程で、人間とAIの協調を促進するための具体的な振る舞いをモデルに組み込み、それを実現するためのトレーニングと改良が重ねられています。これにより、ユーザーはAIとの協働を通じて新たな価値を創造し、より創造的で生産的な体験を得ることができます。
感想(o1-preview-2024-09-12の考察に対し):
いや、こっちの方が、期待したものに近い。さすがo1だ(previewだけど)。「文脈の深い理解」とか、ちゃんとスライドに書いてあることも取り入れてるし、「柔軟な編集機能」がユーザーにどのような価値(自由)をあたえるのか、「持続的な改良」などの時間軸まで触れて、まさにその通り。やっぱり、o1レベルだと、考察の質が違うね。