AI在软件开发中的应用 ChatGPT与GitHub Copilot的潜力.docx

AI在软件开发中的应用 ChatGPT与GitHub Copilot的潜力.docx

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

AIを活用したソフトウェア開発

ChatGPTとGitHubCopilotの可能性

東大物性研 本山裕一

2023-04-26@物性アプリオープンフォーラム

PAGE

PAGE2

背景

2022年は実用可能な生成モデルが一気に広まった激動の年

StableDiffusion,ChatGPT,...

高性能なモデルがwebアプリとして公開され、多くの人が気楽に触れられるようになった

技術的な発展?広まりが急すぎて、倫理や制度が追いついていない?

遅かれ早かれこの技術には向き合わざるを得ない

太田邦史(東大理事?副学長)「人類はこの数ヶ月でもうすでにルビコン川を渡ってしまったのかもしれないのです。むしろ、どのようにしたら問題を生じないようにできるのか、その方向性を見出すべく行動することが重要であると思います。(中略)積極的に良い利用法や新技術、新しい法制度や社会?経済システムなどを見出していくべきではないでしょうか」

https://utelecon.adm.u-tokyo.ac.jp/docsgenerative-ai

目的

生成モデルのうち、GPTなどの大規模言語モデル(LLM)に絞る

LLMとはどういうもので、何をやっているのだろうか?

技術的な詳細にはあまり立ち入りません(専門外なので)

LLMを上手く使うにはどうすればよいのだろうか?

プロンプトエンジニアリング

LLMをソフトウェア開発に活かせるか?

ChatGPT

GitHubCopilot

GPT

GPT

(GenerativePre-trainedTransformers)

PAGE

PAGE4

Transformerベースの大規模?事前学習済み?言語モデル

言語モデル

単語や文章が生成される確率をモデル化したもの

穴開きの文章に対して、穴に入る単語とその確率の組を返す

末尾を穴とみなすと文章の続きが書ける

教師なし学習が可能

Thisisa()=>pen[5%]

すでにある文章から適当に単語を抜いて、もとの文章を再出力できるかをみればよい

あるいは頭から再生産させる

Transformerベースの大規模?事前学習済み?言語モデル

Transformer

self-attentionをコア技術とした深層学習アーキテクチャ

ある単語と、その周りの単語(文脈)との関連度を考慮できる

従来の再帰型ネットワークよりも長い文章を扱える

事前学習

大量の文章であらかじめ教師なし学習しておく

解きたいタスクに応じて教師あり学習でファインチューニングすることで高性能を達成した

PAGE

PAGE6

GPT-3

T.Brown(NeurIPS2020)

175GparamsのGPTを570GB以上の文章で事前学習したもの

定性的にも振る舞いや性能が向上した

出力する文章自体はかなり自然

文意には問題がある(アライメント問題)

正確さ

倫理観

InstructGPT

L.Ouyang,etal.,arXiv:2203.02155

学習済みのGPT-3に対して、教師ありファインチューニング

入力プロンプトと望ましい結果の組で学習データを用意

入力プロンプトをGPTで作り、対応する結果を人間がつくる

ファインチューニングしたものをSFT(SupervisedFineTuning)モデルと呼ぶ

出力された文章の「良さ」を評価するモデル(Rewardmodel)を別に用意する

文章の正しさや倫理観

これ自体がファインチューニング済みのGPT-3

次のトークン(単語)の代わりにスコアを出力する

スコアが「相対評価」を再現できるように学習する

ひとつのプロンプトに対して複数の候補を生成

人間がそれぞれの候補の相対順位を生成、それを学習する

SFTとRewardmodelで強化学習する

PAGE

PAGE9

GPTの応用

ファインチューニングに使うプロンプト?提案の組を変えることで様々なタスクに応用できる

ChatGPT

2者の会話を学習する

OpenAICodex

プログラムを学習する

他のプログラムと組み合わせて更に強力に

BingAI

GPT-4に基づくChatAI+ウェブ検索を用いた情報補完

GitHubcopilot

Codexに基づいており、テキストエディタ中でコードを自動提案

PAGE

PAGE9

プロンプトエンジニアリング

生成モデルに指示を与えることで、何かしらの出力を得たい

より良い出力を安定して得るためにどのような入力をすればよいか?

様々な一般的手法が提案されている

日々活発な研究が続い

文档评论(0)

数据相关的文档 + 关注
实名认证
服务提供商

数学毕业,从事大数据工作十几年,涉及二三十个行业

1亿VIP精品文档

相关文档