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
機械学習チームのモノレポ移行
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
[email protected]
October 06, 2023
Programming
760
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習チームのモノレポ移行
「モノレポへの移行 LT -生産性の高いアーキテクチャに向けた第一歩-」の発表資料
https://findy.connpass.com/event/296339/
[email protected]
October 06, 2023
More Decks by
[email protected]
See All by
[email protected]
製造業にRAGを導入する開発体制の変遷 / ManuAI1
caddi_eng
2
120
バラバラな見積明細と戦う話 / ManuAI2
caddi_eng
0
120
LLMに図面は読めるか – 製造業の「暗黙知」を突破するコンテキスト設計3つのアプローチ / LLMcontext
caddi_eng
1
250
「定型」を許さない製造業データへの挑戦 高度な絞り込みと意味検索を両立する実践 / ElasticON
caddi_eng
0
340
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
820
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
17k
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
670
製造業の会計システムを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
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
320
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.7k
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.3k
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
370
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
550
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
200
楽しそうなつよつよエンジニアと目が死んでる僕/A brilliant engineer having a blast, and dead-eyed me.
3l4l5
2
110
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
220
琵琶湖の水は止められても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
660
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
350
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
200
プロポーザルを書いてもらう
pvcresin
0
440
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.4k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
350
Making the Leap to Tech Lead
cromwellryan
135
10k
Tell your own story through comics
letsgokoyo
1
1k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
340
sira's awesome portfolio website redesign presentation
elsirapls
0
320
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
590
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
460
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
570
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Transcript
Koki Nishihara
Koki Nishihara (github ) CADDi AI Team, Tech Lead MLOps
Complicated-subsystem team OSS pydantic, Pants 10 27 @nishikoh PyCon APAC 2023
LT CADDi Tech Blog
CI Pull Request
CI Pull Request
Bazel Pants : 3rd party plugin : Python Python Pants
Bazel Pants
polyrepo monorepo + dir BUILD polyrepo monorepo app 1 ├──
src 2 │ └── main.py 3 ├── Dockerfile 4 ├── poetry.lock 5 ├── pyproject.toml 6 └── tests 7 └── test_main.py 8 pants.toml 1 projects 2 ├── app_1 3 │ ├── src 4 │ │ ├── BUILD 5 │ │ └── main.py 6 │ ├── BUILD 7 │ ├── Dockerfile 8 │ ├── poetry.lock 9 │ ├── pyproject.toml 10 │ └── tests 11 │ ├── BUILD 12 │ └── test_main.py 13 └── app_N 14 ├── ... 15
pants.toml [GLOBAL] 1 pants_version = "2.17.0" 2 backend_packages = [
3 "pants.backend.python", 4 "pants.backend.python.lint.black", 5 "pants.backend.python.lint.flake8", 6 "pants.backend.python.lint.isort", 7 "pants.backend.python.lint.docformatter", 8 "pants.backend.python.lint.bandit", 9 "pants.backend.python.lint.autoflake", 10 "pants.backend.python.lint.pyupgrade", 11 "pants.backend.python.lint.pylint", 12 "pants.backend.experimental.python.lint.ruff", 13 "pants.backend.experimental.python.lint.add_trailing_comma", 14 "pants.backend.python.typecheck.mypy", 15 ] 16 17
--changed-since --changed-dependees=transitive CI p50 30 , p75 90 , max
20 format lint test pants fmt --changed-since=origin/main --changed-dependees=transitive 1
Python CADDi Tech Blog
WebAPI Python
3rd party package : 300 : 30 3rd party package
300 packege 5
Good CI/CD format 1
More must git clone git lfs .git/ GitHub Actions disk
git lfs 300 3rd party
More Pants model registry git lfs GitHub Actions hosted runner
Cloud Build GitHub Actions larger runners
CADDi Tech Blog
Software Engineering at Google Build Systems and Build Philosophy
PyCon APAC 2023 “Pants Python Monorepo” Python, Pants
CADDi https://recruit.caddi.tech