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
GitHub Copilot Behind the Scene
Search
Yuki Hattori
September 13, 2023
Technology
1
1.6k
GitHub Copilot Behind the Scene
Yuki Hattori
September 13, 2023
Tweet
Share
More Decks by Yuki Hattori
See All by Yuki Hattori
AI-Powered Development with GitHub Copilot 20240202
yuhattor
10
3.5k
AI-Powered Development with Copilot
yuhattor
0
91
Bringing Open-Source Brilliance to Scrum Teams: A Guide to Enhanced Collaboration
yuhattor
0
140
GitHub Copilot for IT Professionals - 考え方のポイント
yuhattor
1
220
GitHub Universe JP Keynote
yuhattor
0
89
GitHub Universe 主要アップデート
yuhattor
0
400
InnerSource for Developer Experience and Competitive Advantages
yuhattor
0
95
GitHub Copilot Workshop
yuhattor
1
1.2k
GitHub Copilot and Copilot X Introduction
yuhattor
0
320
Other Decks in Technology
See All in Technology
Python と Snowflake はズッ友だょ!~ Snowflake の Python 関連機能をふりかえる ~
__allllllllez__
2
140
IPUT App Dev. Co. -Overview 2024/4
iputapp
0
120
M&A戦略を支えるデータマネジメント (MIDAS Tech Study #16 GENDA Komiyama)
kommy339
0
100
2024春 注目のWeb系 OSS & SaaS 3選
makies
0
180
DMM.com アルファ室採用案内資料
hsugita
1
220
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
3.8k
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
330
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
4
660
Building a RAG-poweredAI chat appwith Python and VS Code
pamelafox
0
150
Next.js に疲れた私は Vue3 に癒やされた
akagire
0
130
How to do well in consulting–Balkan Ruby 2024
irinanazarova
0
140
AWS学習者向けにAzureの解説スライドを作成した話
handy
3
190
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Music & Morning Musume
bryan
41
5.6k
The Mythical Team-Month
searls
216
42k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
22
1.6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
Agile that works and the tools we love
rasmusluckow
325
20k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Gamification - CAS2011
davidbonilla
77
4.6k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
Making the Leap to Tech Lead
cromwellryan
125
8.5k
Transcript
の裏側と Tips & Tricks Yuki Hattori Customer Success Architect GitHub
Japan
December, 2022 GitHub Copilot Agenda GitHub Copilot 101 Demo Behind
the curtain Tips and Trick Q&A
None
開発者の⽣産性向上 本当の問題に集中でき、満⾜度も向上 イノベーションを加速 より速くプロトタイプやイノベーションを実現 スキルギャップを埋める 新しい開発⾔語や技術を習得 開発者に⼤きな アドバンテージを提供
55% 46% 74% のコードがCopilotによるもの 速くタスクを完了 がより満⾜する仕事に 集中できたと証⾔ プロジェクトの⽂脈に即したコードを提案
OpenAI Model 文脈 提案
今後のGitHub Copilot リファクタリング (コード翻訳) コードレビュー (コード解説) ドキュメント化 今後のGitHub Copilot ユニットテスト
コードエラー検知 デバッグ コードレビュー AI による Pull Request 現在のGitHub Copilot コメントをコードに変換 繰り返すコードを補完 代替⼿段を表⽰ 1 計画 2 分析 3 設計 4 実装 5 テストと統合 6 メンテナンス X エディタを⾶び出し SDLC 全体を AI で⽀援
GitHub Copilot X Copilot for Pull Requests Copilot for Docs
Copilot for the CLI Copilot Chat
GitHub Copilot Future コードやドキュメントから、ユニットテストを 自動生成 TestPilot Codespaces上に存在するすべてのコードを使う ことで提案を改善 GitHub Copilot
for *Your* Codebase キーボードを使わずにコードを書く Copilot Voice https://githubnext.com/
None
December, 2022 GitHub Copilot GitHub Copilot Behind the curtain
GitHub Copilot の裏側 • GitHub Copilot の仕組み • GitHub Copilot
がエディタの情報をどのように取るのか = GitHub Copilot Prompt Crafting • Tips and Tricks
GitHub Copilot の 3 Layer Copilot Platform Copilot Client OpenAI
Model API * 上記は GitHub Copilot のアーキテクチャを抽象化した図です Githubによって開発及び保守。 認証、セキュリティ、プライバシー Githubによって開発及び保守。 カスタムプロンプト作成と自動補完 ユーザーエクスペリエンスを提供 OpenAI によって開発 GitHub が Azure でホスティング スケーラブルなデリバリー
GitHub Copilot のモデル GitHub Copilot のモデル選定重要事項 • 精度 • 速度
←とても重要 現在は GPT3.5-turbo の派生版である Sahara-base を利用 Codex は今は利用していません *今後変わる可能性があります
Large Language Models LLM To k 1. Attention 2. Tokenization
3. Autoregressive(自己回帰型) Very Very …. Very Large Neural Network To,k ens To,k,ens in To,k,ens, in . Tokens in. To,k,ens, in, . テキストはトークンに分割され、モデルに1つずつ供給されます。 前のトークンに基づいて次のトークンを予測する、訓練済のモデルです。
Prompt Crafting • Language Marker: プログラミング⾔語情報 • Path Marker: 現在のファイルへのパス
• Neighboring Tabs: ⾮アクティブなオープンしているタブ • Code Retrieval: コードベースの中の他の場所のコード (New) Language Marker の例 "html": "<!DOCTYPE html>", "python": "#\!/usr/bin/env python3", "ruby": "#\!/usr/bin/env ruby",
December, 2022 GitHub Copilot GitHub Copilot Tips and Tricks
None
None
None
None
None
None
None
None
Tips and Tricks: あまり気にしすぎない • 「知っている」と「知らない」では GitHub Copilot の飼い慣らしに差はでますが、 GitHub
ではそれを意識しないでも高いコード提案ができるようにプロダクトを作っています。 • 結局のところ「良いコーディング」をすれば、提案されるコードも「良いコード」になります。 • 人間にとって良いコーディング • 文脈を知らない人でもわかるようなコーディング • ミスを誘発しないような確かなコーディング
None
None