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
DAGで表現するお気持ちネットワーク / Okimochi
Search
erukiti
February 16, 2018
Technology
3
2.5k
DAGで表現するお気持ちネットワーク / Okimochi
erukiti
February 16, 2018
Tweet
Share
More Decks by erukiti
See All by erukiti
LLMをねじ伏せる/Conquer the LLM
erukiti
0
34
鮮度が高すぎて世界で誰も正解を見つけてない課題に取り組んでいる/ Freshness issues
erukiti
1
560
実演TypeScript + GitHub Copilot
erukiti
9
3.9k
Function Calling対応Playgroundを作って検証してみた/LLMMeetup#3
erukiti
0
360
プロンプトを管理しやすくするツールを作ってみた / I created a tool to make the prompts easier to manage.
erukiti
3
1.6k
実践モブプログラミング/ mob programming practice
erukiti
3
1.3k
今日からアウトプットを始めよう / let's start the output from today
erukiti
1
610
Markdownをスクリプト言語として走らせてみた / actual-code
erukiti
0
4k
もくもく執筆会 for 技術書典5 / techbook_meepup
erukiti
0
120
Other Decks in Technology
See All in Technology
kcp: Kubernetes APIs Are All You Need #techfeed_live / TechFeed Experts Night 28th
ytaka23
1
190
動画配信サービスのフロントエンド実装に学ぶ設計原則
yud0uhu
1
140
サービス開発におけるVue3とTypeScriptの親和性について
tsukuha
10
1.8k
知識と実践を紡ぐGenAI / Connecting Knowledge and experience with GenAI
aki_moon
2
180
Real World Type Puzzle and Code Generation
yukukotani
4
640
TailwindCSSでUIライブラリを作る際のハマりどころ
shuta13
0
230
アプリ・TVで"旅なか体験"をもっとスマートにしてみた_team 4@NOT A HOTEL
xx23xy
0
110
[2024년 5월 세미나] 생성형 AI와 함께하는 데이터 분석가 커리어
datarian
0
1.3k
テストコードを書きながらCompose Multiplatformを乗りこなす
subroh0508
0
150
AWSの生成AI入門書を執筆しました🎉
minorun365
PRO
0
150
パフォーマンス最適化のベストプラクティス
databricksjapan
0
210
LINEヤフーのウェブアクセシビリティ
lycorptech_jp
PRO
2
190
Featured
See All Featured
What the flash - Photography Introduction
edds
64
11k
Build The Right Thing And Hit Your Dates
maggiecrowley
25
2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
242
1.2M
Build your cross-platform service in a week with App Engine
jlugia
226
17k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
660
120k
The MySQL Ecosystem @ GitHub 2015
samlambert
244
12k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.7k
Robots, Beer and Maslow
schacon
PRO
155
8k
Transcript
DAGͰදݱ͢Δ ͓ؾ࣋ͪωοτϫʔΫ @erukiti
@erukiti • Ҿ͖͜ΓؾຯϑϦʔϥϯεΤϯδχϟʔ • ϑϩϯτΤϯυɾόοΫΤϯυɾΠϯϑϥΛҰ௨Γ • JS/TS͕͖ɻ2/20ʹJSϝλϓϩษڧձΓ·͢ • ಉਓࢽॻ͍ͨΓۀԽͨ͠Γಉਓࢽॻ͍ͨΓ͍ͯ͠·͢ •
4/22ͷٕज़ॻయ4ͰɺϒϩοΫνΣʔϯɾ҉߸௨ ՟ͷٕज़ΛJSͰղઆ͢ΔຊΛग़͢༧ఆͰ͢
ҙ: ͋·Γٕज़తʹ ౿ΈࠐΜͰ͍·ͤΜ • ઃܭɾ࣮ݧίʔυॻ͍ͯΔஈ֊Ͱ͢ • ࢦఠͱ͔ٙͱ͔͋ΕΣϧΧϜͰ͢ʂ • Ϩϕϧ͗ͨ͢Γɺత͕ͣΕ͍ͯͨΓͨ͠Β͝ΊΜͳ ͍͞
• GoogleDocumentͷਃ͠ࠐΈͰɺαΠυνΣʔϯͱ͔ε έʔϦϯάʹڵຯ͋Δͬͯॻ͍ͨؾ͕͢Δ(͝ΊΜͳ͍͞)
͓ؾ࣋ͪ
ྫ: ίϯςϯπΫϦΤΠλʔ • খઆΛॻ͍ͨΒײ͕ཉ͍͠ɻࢮ͵΄Ͳཉ͠ ͍ɻʢͱΑ͘ஶऀͷํ͔Βฉ͘ʣ • Ͱʮ͜ͷখઆ͖ͳΜͰ͕͢ۀ൛ങ͍ ·ͤΜʯΈ͍ͨͳͷΘ͟Θ͟ಡΈͨ͘ͳ͍ʢͦ ͏͍͏ϑΝϯͷ෩্ʹஔ͚ͳ͍ϠΧϥ࣮ ࡍʹ͍Δʣ
Πϯλʔωοπѱҙʹຬ͍ͪͯΔ • ΧδϡΞϧʹԌ্ • ݴΛ͛Δίετ͕͗͢Δ • ͦͦ1ରଟɻͷྗ
Πϯλʔωοπѱҙʹຬ͍ͪͯΔ • ΧδϡΞϧʹԌ্ • ݴΛ͛Δίετ͕͗͢Δ • ͦͦ1ରଟɻͷྗ ߈ܸଆ͕༗ར͗͢Δ
ϙδςΟϒͳ͓ؾ࣋ͪ • ʮ͜ͷখઆ໘ന͍ʯͱ͔ϙδςΟϒͳ͓ؾ࣋ ͚ͪͩΛूΊΔ͕͍͍͋ͬͯͷͰʁ • ΈΜͳ͕ωΨςΟϒͱݸผʹઓͬͯফ͢Δ ΑΓɺϙδςΟϒͳ͓ؾ࣋ͪΛΒͬͯɺ ࣍·ͨؤுΔͷ͕ྑ͍ͷͰ
ͦ͜Ͱ͓ؾ࣋ͪΛDAGͰදݱ
͓ؾ࣋ͪTxʢτϥϯβΫγϣϯʣ • ͓ؾ࣋ͪTxɺ1ʙnͷϙδςΟϒͳධՁΛදݱ ͢ΔͷͰɺίϝϯτΛఴ͑Δ • ͓ؾ͍࣋ͪ͘ΒૹͬͯݮΒͳ͍͠ϦΞϧλΠ Ϝ͡Όͳ͍͍ͯ͘ (Ұຊͷ͡Όͳͯ͘Α͍) • 1Ҏ্ͷPrevHashΛؚΊΔDAGߏ
(TxDAG)
͓ؾ࣋ͪλά • ͨͱ͍͍͑খઆΛॻ͍ͨਓʹɺNovelλάͷ͓ؾ࣋ ͪTxΛൃߦ • JavaScriptͷهࣄͳΒ͖ͬͱJavaScriptλά • λάͨͿΜ֊ߏʹͳΔɻখઆͷѪՈͷதͰ ൊ৭ʑ͋ΔΘ͚Ͱ…ɻ •
͔ͨ͠͠Βλάͷforkͱ͔ʁ
Novel Novel Novel Novel
͓ؾ࣋ͪείΞ • TxDAGΛݩʹPageRankͬΆ͍ܭࢉΛͯ͠ɺ͓ؾ࣋ͪε ίΞΛׂΓग़͢ • NovelλάͰ͓ؾ࣋ͪείΞͷߴ͍ਓ͕ൃߦ͢ΔNovelλ άͷ͓ؾ࣋ͪTxՁ͕ߴ͍ͣɻݴ͍͑ΔͱNovel ʹ͓͍͓ͯΊ͕ߴ͍ • NovelͰ׆༂ͯ͠Δ͚Ͳઐ֎ͩͱμϝμϝͳਓ͍Δ͔
ΒɺҟͳΔλάʹରͯ͠ͷӨڹྗ࣋ͨͳ͍
NovelείΞ: 10 NovelείΞ: 40 NovelείΞ: 100 NovelείΞ: 1000 /PWFMείΞɿ Ճࢉલ
جຊతͳTx 5Y ର Ճσʔλ 0LJNPDIJ ର5Y63- ʙ O ίϝϯτ λά
.PEFSBUJPO ର5Y ༰ /FX$POUFOU ର63-PS#MPCใ 4JHO$POUFOU ର63- 3FWPLF ର5Y
Peer to Peer • WebRTCͷData Channelͱ͔͋ΓͳͷͰ • TxΛΓͱΓͯ͠TxDAGΛߏங • ֤PeerTxDAGΛݕূ
• ωοτϫʔΫҡ࣋ͷߩݙͰΠϯϑϥείΞ(ͨ ͱ͑ɺOkimochi.infraλά)Λऔಘ
ΠϯϑϥείΞ͕ߴ͍Peerɺ ͖ͬͱImportantPeerͰ͋Δ
ImportantPeer • ImportantPeer͚͕ͩϚϧνγάͰൃߦͰ͖ΔTx ͕͋Δ • ImportantPeerΠϯϑϥείΞථDNSͷ Ϩίʔυʹిࢠॺ໊ͱ͔ͰબΕΔͱ͍͍Μ͡Ό ͳ͍͔ͳ • ImportantPeerτʔΫϯؔ࿈ͷTxΛൃߦ͢Δ
͓ؾ࣋ͪτʔΫϯ • Novel͓ؾ࣋ͪείΞ͕ߴ͍ਓ = NovelʹԿΒ ͔ͷܗͰߩݙͯ͠Δਓ • ImportantPeer͕είΞΛݩʹτʔΫϯΛ֤ࣗ ʹൃߦ͢Δ •
׆༻ྫ: ಉਓࢽଈചձͰτʔΫϯࢧ͍
͓ؾ࣋ͪΛۚͰങ͏ • Novelλάʹ҉߸௨՟ΛدଃͰ͖Δ (Patron.Novelε ίΞ্͕͕Δͱ͔) • ImportantPeer͕ड͚ೖΕ༻ͷΥϨοτΛੜ͢Δ (Bridge) • ߩݙऀNovelτʔΫϯΛόʔϯ͢Δ͜ͱͰNovelʹ
دଃ͞Εͨ҉߸௨՟ͷҰ෦Λ Bridge ͔Βड͚औΕΔ
ImporantPeerؔ࿈Tx 5Y *NQPSUBOUPOMZ σʔλ 5PLFO(FOFSBUFE ZFT ୭ʹ͍͘Βੜ͞Ε͔ͨ 5PLFO4FOE3FRVFTU OP ୭ʹ͍͘ΒૹΓ͍͔ͨ
5PLFO4FOU ZFT ୭ʹ͍͘Βૹ͔ͬͨ %POBUF3FRVFTU OP ͲͷλάʹԿΛدଃ͢Δ͔ %POBUFE ZFT دଃ͞Εͨ҉߸௨՟ͱλά 5PLFO#VSO3FRVFTU OP λάɾ೩͢τʔΫϯ 5PLFO#VSOFE ZFT ϦΫΤετ*%ͱ҉߸௨՟ͷ5Y*%
͓ؾ࣋ͪωοτϫʔΫͷԠ༻ྫ • ࢄDB, ࢄετϨʔδͱ͔ • ৺ͳϑΝϯ͚͕ͩಡΊΔ࡞৴ (ࢄετϨʔδͷԠ༻) • ҉߸ϝʔϧ৴ •
͓ؾ࣋ͪωοτϫʔΫͷϑΟʔυͰใऩू • ͓ؾ࣋ͪωοτϫʔΫऔҾॴ (ҟੈքసੜখઆτʔΫϯͱ έϞφʔֆࢣτʔΫϯΛऔҾ͢Δ)
՝ʢͨͿΜ͍ͬͺ͍͋Δʣ • ΞοϓσʔτͲ͏͢Δ͔…ɻείΞܭࢉࣜͱ͔৭ʑ࣮ݧͨ͠Γ मਖ਼ͨ͠Γ͕ඞཁʹͳΔɻ • λά͔ͳΓྲྀಈతʹͳΔͣɻ৽نλάͷੜʹίετΛઃ ͚Δ͖͔Εͳ͍ɻ໊લۭؒͷୣ͍߹͍͋ΔͩΖ͏͠… • Tx͚ͩ͡Όͳͯ͘ɺQuery/Resultͱ͍͏ܗࣜඞཁͳؾ •
͓ؾ࣋ͪωοτϫʔΫͷ֎ʹ͋Δίϯςϯπͱͷͭͳ͗ࠐΈ ΛͲ͏͢Δ͔
͓ؾ࣋ͪωοτϫʔΫ • ϙδςΟϒͳ͓ؾ࣋ͪΛૹΓ͋ͬͯΫϦΤΠλʔୡͷԠԉ Λ͢Δ • ʮৼΓࠐΊͳ͍ٗʯ໓ • ΫϦΤΠςΟϒͷੈքʹ͓͍ͯɺखΛಈ͔͢ਓɺϑΟʔυ όοΫΛฦ͢ਓʢಛʹϙδςΟϒͳͷʣɺۚΛग़͢ਓ͕ ਖ਼ٛ
• ͓ؾ࣋ͪωοτϫʔΫͱͯ͠Πϯϑϥҡ࣋͢Δਓਖ਼ٛ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠