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.7k
DAGで表現するお気持ちネットワーク / Okimochi
erukiti
February 16, 2018
Tweet
Share
More Decks by erukiti
See All by erukiti
Claude Codeを使って不確実性と戦う / claude-code-fights-uncertainty
erukiti
10
3k
Claude Code活用において、メンタルモデルを変える必要がある / rethinking-claude-code-mental-models
erukiti
20
13k
AIとの対話で加速する学び / ai learnig
erukiti
1
620
コーディングエージェントを作ってるけどうまくいかなかった話 ~あるいは二ヶ月本気でコーディングエージェントと向き合った話~ / Two Month Agent Struggle
erukiti
38
19k
Gemini 2.0 Flashで実現する高コスパAI開発 〜実践的プロンプトエンジニアリングと文書管理システムの実装例〜/gemini-2.0-flash-prompt-engineering
erukiti
17
6.5k
LLMをねじ伏せる/Conquer the LLM
erukiti
0
220
鮮度が高すぎて世界で誰も正解を見つけてない課題に取り組んでいる/ Freshness issues
erukiti
1
870
実演TypeScript + GitHub Copilot
erukiti
9
4.5k
Function Calling対応Playgroundを作って検証してみた/LLMMeetup#3
erukiti
0
550
Other Decks in Technology
See All in Technology
メモ整理が苦手な者による頑張らないObsidian活用術
optim
0
150
生成AIを活用した野球データ分析 - メジャーリーグ編 / Baseball Analytics for Gen AI
shinyorke
PRO
1
240
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
0
100
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
4
520
M365アカウント侵害時の初動対応
lhazy
7
5.1k
【2025 Japan AWS Jr. Champions Ignition】点から線、線から面へ〜僕たちが起こすコラボレーション・ムーブメント〜
amixedcolor
1
110
「育てる」サーバーレス 〜チーム開発研修で学んだ、小さく始めて大きく拡張するAWS設計〜
yu_kod
1
190
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
380
新規事業におけるAIリサーチの活用例
ranxxx
0
170
Recoil脱却の現状と挑戦
kirik
3
470
Datasets for Critical Operations by Dataform
kimujun
0
120
Amazon CloudWatchのメトリクスインターバルについて / Metrics interval matters
ymotongpoo
3
290
Featured
See All Featured
BBQ
matthewcrist
89
9.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
How STYLIGHT went responsive
nonsquared
100
5.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Making Projects Easy
brettharned
117
6.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
The Cult of Friendly URLs
andyhume
79
6.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
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ͱ͍͏ܗࣜඞཁͳؾ •
͓ؾ࣋ͪωοτϫʔΫͷ֎ʹ͋Δίϯςϯπͱͷͭͳ͗ࠐΈ ΛͲ͏͢Δ͔
͓ؾ࣋ͪωοτϫʔΫ • ϙδςΟϒͳ͓ؾ࣋ͪΛૹΓ͋ͬͯΫϦΤΠλʔୡͷԠԉ Λ͢Δ • ʮৼΓࠐΊͳ͍ٗʯ໓ • ΫϦΤΠςΟϒͷੈքʹ͓͍ͯɺखΛಈ͔͢ਓɺϑΟʔυ όοΫΛฦ͢ਓʢಛʹϙδςΟϒͳͷʣɺۚΛग़͢ਓ͕ ਖ਼ٛ
• ͓ؾ࣋ͪωοτϫʔΫͱͯ͠Πϯϑϥҡ࣋͢Δਓਖ਼ٛ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠