Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
機械学習チームのモノレポ移行
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
CADDi
October 06, 2023
Programming
790
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習チームのモノレポ移行
「モノレポへの移行 LT -生産性の高いアーキテクチャに向けた第一歩-」の発表資料
https://findy.connpass.com/event/296339/
CADDi
October 06, 2023
More Decks by CADDi
See All by CADDi
製造業にRAGを導入する開発体制の変遷 / ManuAI1
caddi_eng
3
210
バラバラな見積明細と戦う話 / ManuAI2
caddi_eng
0
180
LLMに図面は読めるか – 製造業の「暗黙知」を突破するコンテキスト設計3つのアプローチ / LLMcontext
caddi_eng
1
360
「定型」を許さない製造業データへの挑戦 高度な絞り込みと意味検索を両立する実践 / ElasticON
caddi_eng
0
500
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
920
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
17k
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
740
製造業の会計システムをDDDで開発した話
caddi_eng
3
2.5k
【CADDI VIETNAM】Company Deck for Engineers
caddi_eng
0
2.5k
Other Decks in Programming
See All in Programming
AI時代のIaC入門 〜なぜインフラをコードで管理したいのか?〜 / Introduction to IaC in the AI Era
akihisaikeda
5
1.3k
SODA - FACT BOOK(JP)
sodainc
1
40k
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
120
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.2k
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
180
AI Augmentation Techniques with Liberty
ivargrimstad
0
180
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
1.8k
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
110
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
390
ChromeでローカルLLM
ryu1013
0
180
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
170
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
200
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
600
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
550
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Embracing the Ebb and Flow
colly
88
5.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Site-Speed That Sticks
csswizardry
13
1.6k
Six Lessons from altMBA
skipperchong
29
4.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
エンジニアに許された特別な時間の終わり
watany
109
250k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
560
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