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
Scalaつまみ食い - CADDi STUDDi
Search
[email protected]
December 10, 2021
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scalaつまみ食い - CADDi STUDDi
[email protected]
December 10, 2021
More Decks by
[email protected]
See All by
[email protected]
製造業にRAGを導入する開発体制の変遷 / ManuAI1
caddi_eng
1
100
バラバラな見積明細と戦う話 / ManuAI2
caddi_eng
0
100
LLMに図面は読めるか – 製造業の「暗黙知」を突破するコンテキスト設計3つのアプローチ / LLMcontext
caddi_eng
1
210
「定型」を許さない製造業データへの挑戦 高度な絞り込みと意味検索を両立する実践 / ElasticON
caddi_eng
0
260
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
800
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
17k
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
660
製造業の会計システムをDDDで開発した話
caddi_eng
3
2.4k
【CADDI VIETNAM】Company Deck for Engineers
caddi_eng
0
2.3k
Other Decks in Programming
See All in Programming
共通化で考えるべきは、実装より公開する型だった
codeegg
0
250
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
140
AIエージェントで 変わるAndroid開発環境
takahirom
2
680
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.2k
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
500
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.5k
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
170
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
yield再入門 #phpcon
o0h
PRO
0
600
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
880
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
530
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
400
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
400
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
A designer walks into a library…
pauljervisheath
211
24k
The Spectacular Lies of Maps
axbom
PRO
1
860
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
660
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Marketing to machines
jonoalderson
1
5.6k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
Thoughts on Productivity
jonyablonski
76
5.2k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Test your architecture with Archunit
thirion
1
2.3k
Transcript
4DBMBͭ·Έ͙͍
4DBMBͬͯͲΜͳݴޠʁ 4DBMBҰൠతͳϓϩάϥϛϯάํ๏Λ؆͔ܿͭΤϨΨϯτ͔ͭܕ҆શͳํ๏Ͱදݱ͢ΔͨΊʹઃܭ͞Εͨ ϞμϯͳϚϧνύϥμΠϜݴޠͰ͢ɻͦΕΦϒδΣΫτࢦݴޠͱؔܕݴޠͷػೳΛεϜʔζʹ౷߹͍ͯ͠·͢ɻ #Z4DBMB%PDVNFOUBUJPO IUUQTEPDTTDBMBMBOHPSHKBUPVSUPVSPGTDBMBIUNM º ͯ͢ͷ͕ΦϒδΣΫτ ɾΫϥε ɾτϨΠτ ͯ͢ͷ͕ؔ
ɾߴ֊ؔ ɾΧϦʔԽ ɾύλʔϯϚονϯά ͋͘·ͰϝΠϯΦϒδΣΫτࢦɺͦ͜ʹؔܕͷΤοηϯεΛ͍͍ײ͡ʹ༥߹͍ͤͯ͞ΔΠϝʔδ ʢݸਓͷײͰ͢ʣ ؔܕ ΦϒδΣΫτࢦ
4DBMBͬͯͲΜͳݴޠʁ w ੩తܕ͚ w ܕਪ w δΣωϦΫε w +BWB7JSUVBM.BDIJOF +7.
্Ͱಈ࡞ w 4DBMB͔Β+BWBͷϓϩάϥϜΛݺͼग़ͤΔ w (BSCBHF$PMMFDUJPO ࠓ4DBMBܥʢYʣͷΛ͠·͢ 4DBMBग़͍ͯΔͷͰ͕͢ɺ݁ߏ༷มΘΓ͍ͯ͠Δͷͱ ࣮ͰऔΓೖΕ͍ͯΔͱ͜ΖΛฉ͔ͳ͍ͷͰʜʢ֤छϥΠϒϥϦ͕ͦΜͳʹରԠͰ͖͍ͯͳ͍ʣ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
DMBTT ίϯετϥΫλ WBM WBSΛ͚ͭΔͱϝϯόʔʹͳΔ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
DMBTT WBM͕͍͍ͭͯΔͷͰެ։͞Ε͍ͯΔ WBSʹ͢ΔͱՄมʹͳΔ QSJWBUFWBMͱ͢ΕӅ͢͜ͱͰ͖Δ
DMBTT WBM͕͍͍ͭͯΔͷͰެ։͞Ε͍ͯΔ WBSʹ͢ΔͱՄมʹͳΔ QSJWBUFWBMͱ͢ΕӅ͢͜ͱͰ͖Δ
DMBTT WBM͕͍͍ͭͯͳ͍ʢϝϯόʔͰͳ͍ʣ ͷͰࢀরͰ͖ͳ͍
DMBTT ϝιουఆٛ 4DBMBͰ৽͍͠ΦϒδΣΫτΛฦ͢ ͜ͱ͕ଟ͍ ϝιουͷݺͼํ
ίϯύχΦϯΦϒδΣΫτ ͋ΔΫϥεͱಉ͡ॴͰಉ໊ͷΦϒδΣΫτΛఆٛͨ͠ͷ ޓ͍ͷϓϥΠϕʔτϝϯόʔʹΞΫηεͰ͖Δ ϓϥΠϕʔτϝϯόʔʹΞΫηεՄ
ίϯύχΦϯΦϒδΣΫτ ͋ΔΫϥεͱಉ͡ॴͰಉ໊ͷΦϒδΣΫτΛఆٛͨ͠ͷ ޓ͍ͷϓϥΠϕʔτϝϯόʔʹΞΫηεͰ͖Δ 6TFSBQQMZΛݺͼग़͍ͯ͠Δ OFXͰͳ͍͜ͱʹҙ 4DBMBͷBQQMZͱVOBQQMZͱ͍͏ϝιου໊ লུͯ͠ݺͼग़͢͜ͱ͕Ͱ͖Δ ͜ͷྫͰ6TFSBQQMZ lUBOJHVDIJz
ͱಉ͡ҙຯ
DBTFDMBTT ৭ʑศརͳͷΛੜͯ͘͠ΕΔ ɾίϯύχΦϯΦϒδΣΫτ͕ੜ͞ΕΔ ɾϑΟʔϧυͷ֤߲͕WBMએݴͱಉ͡ҙຯΛ࣋ͭ ɾDPQZϝιουΛ࣋ͭ ɾͰͷൺֱ͕ͯ͢ͷϑΟʔϧυ໊ͷ͕Ұக͢Δ͔Ͳ͏͔Ͱผ͞ΕΔ ɾNBUDIͰ༻Ͱ͖Δʹͯ͘͠ΕΔ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
4FRྻΛද͢ίϨΫγϣϯ BQQMZϝιουΛݺͼग़͍ͯ͠Δ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
4FRྻΛද͢ίϨΫγϣϯ ୈҾͷཁૉΛऔಘɻൣғ֎ͳΒୈҾͷؔΛ࣮ߦ ୈҾɿ*OU*OUͷؔ Ҿͷ*OUఴࣈΛද͕͢ࠓճৗʹΛฦ͢ͷͰΘͳ͍ͷͰʮ@ʯ
4FRͷNBQ NBQϝιουͰද
4FRͷGMBUUFO NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ
4FRͷGMBU.BQ NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ NBQ fl BUUFO fl BU.BQͰʂ
GPSࣜͰΑΓݟ͘͢ NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ NBQ fl BUUFO fl BU.BQͰʂ
GPSࣜೖΕࢠʹͳͬͨNBQ fl BU.BQͷ γϯλοΫεγϡΨʔ
0QUJPO<"> ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
0QUJPO<">ɿཁૉͷऔಘ ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ ΛऔΓͩͯ͠ΈΔ ύλʔϯϚονͰ͍͚Δ
0QUJPO<">ɿNBQͰม ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ NBQϝιουͰม fl BU.BQ͋ΔΑ GPSࣜ͑ΔΑ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
0QUJPOܕͷίϯϏωʔγϣϯ 0QUJPOܕΛෳΈ߹Θͤͯॲཧ͢Δํ๏ΛΈͯΈ·͢ ͓ ࣍ͷσʔλߏ͔ΒࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલͱͱʹग़ྗͤΑ ग़ྗɿ lKJSPz lIBOBz
͓ʮWEB+DB PRESS Vol.112 ࣮ફScalaʯΑΓ
BWFSBHFϝιουΛߟ͑Δ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑ΔʢJGࣜฤʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ ࠃޠӳޠΛडߨͨ͠Γ͍ͯ͠ͳ͔ͬͨΓ͢ΔͷͰ0QUJPOͰදݱͰ͖ͦ͏ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑Δʢ0QUJPOฤʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ #FGPSFJGࣜ "GUFS0QUJPONBQ fl BU.BQ ࢀߟɿWEB+DB
PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑ΔʢGPSࣜʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ #FGPSFJGࣜ "GUFS0QUJPONBQ fl BU.BQ "GUFSΛGPSࣜͰॻ͘
ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
͓·͚ɿʹՃ͑ͯฏۉҎ্ͷΈग़ྗ͍ͨ͠߹ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊͯ ͦΕ͕Ҏ্ͷ߹ʹ ໊લͱͱʹग़ྗͤΑ GPSࣜͰ͜Μͳ;͏ʹॻ͚Δ ࠨͷGPSࣜҎԼͷγϯλοΫεγϡΨʔ ࢀߟɿWEB+DB PRESS Vol.112
࣮ફScala
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
ߴΧΠϯυܕʜͷલʹ 4DBMBʹ৭ʑͳܕ͕͋Γ·͢ΑͶʢಥʣ *OU 4USJOH .Z$MBTT
0QUJPO<">ͱ͔4FR<">ͱ͔͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> ฒߦॲཧͷͨΊͷܕ 4VDDFTTͱ'BJMVSF͕͋Δ
0QUJPO<">ͱ͔4FR<">ͱ͔͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> ֨ࢠ͕۩ମతͳܕ
NBQͱ͔GMBU.BQͬͯϝιου͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"# 0QUJPO<#>
EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> ˞'VUVSFNBQ fl BU.BQͷγάωνϟͪΐͬͱӕ͍͍ͭͯ·͢
ͳΜ͔γάωνϟࣅͯͳ͍Ͱ͔͢ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"# 0QUJPO<#>
EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> 0QUJPO<"> 4FR<"> 'VUVSF<">ΛଋͶͨ֓೦ɺੜΈग़ͤͦ͏͡Όͳ͍Ͱ͔͢ʁ
)FMMP IJHIFSLJOEFEUZQFʢߴΧΠϯυܕʣ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"#
0QUJPO<#> EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> '<"> EFGNBQ<#> G"# '<#> EFG fl BU.BQ<#> G"'<#> '<#>
ߴΧΠϯυܕΛఆٛͯ͠ΈΔ 0QUJPO 4FR 'VUVSFΛ·ͱΊΔ֓೦͕ ͭ͘Εͨ ͜ΕΒΛ)JHIFS,JOEͷΠϯελϯεͱͯ͠ ఆٛͰ͖ͨ ͜Ε͕ϑΝϯΫλʔɺϞφυͳͲͷ֓೦ʹͭͳ͕͍ͬͯͨΓ͠·͢ Ͱɺ͜ΕͳʹʁͳΜͷʹཱͭͷΑʁ·ͨผͷػձʹͰʜ
·ͱΊ w 4DBMBΛͬ͘͟Γͭ·Έ͙͍ͯ͠Έ·ͨ͠ w ·ͩ·ͩղઆͰ͖͍ͯͳ͍ػೳ֓೦͕ͨ͘͞Μ͋Γ·͢ w .BQ4FRͷΠϯελϯεΛؔͱͯ͠͏ w ܕΫϥε w
JNQMJDJUDMBTTʹΑΔطଘͷܕͷ֦ு w FUDʜ w 4DBMBॻָ͍͍͍ͯͯ͠৭ʑֶΔݴޠͳͷͰੋඇࢼͯ͠Έ͍ͯͩ͘͞ʂ