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
ruffとmypyでラクしてLangChain開発しません?
Search
gura105
October 10, 2024
0
930
ruffとmypyでラクしてLangChain開発しません?
LangChain Meetup Tokyo #3の登壇資料
gura105
October 10, 2024
Tweet
Share
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Making Projects Easy
brettharned
116
6.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Writing Fast Ruby
sferik
628
61k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
780
The Cult of Friendly URLs
andyhume
79
6.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
A better future with KSS
kneath
239
17k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
910
How STYLIGHT went responsive
nonsquared
100
5.6k
The Invisible Side of Design
smashingmag
299
51k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Transcript
ruffとmypyでラクして LangChain開発しません? 2024.10.09 1
© 2024 Algomatic Inc. 2 最近のお仕事 https://note.com/algomatic_oa/n/n6b48170c547a?sub_rt=share_b
© 2024 Algomatic Inc. 3 LangChainを使い始めるときの課題 新しいライブラリやFWを使うときの常であるが • どのインスタンスにどんなメソッドが⽣えているか分から ない
• 各インスタンス‧関数の引数‧戻り値の型が分からない LCEL(LangChain Expression Language)を書いていても書き⽅が 合っているかわからない ▶次のような問題が起きる • 実⾏するまでエラーが起きるかわからない ◦ エラーログを⾒ながらコードを修正する • LLMに関連したコードは実⾏に時間がかかりがちなので実 ⾏ -> エラー -> 修正 -> 実⾏ ...というループを繰り返してい るとバカにならない • コードのオートフォーマットやリンティング ◦ black, flake8, autopep8, isort, ... ▪ 何をどういう順番に⼊れれば良 いのか ◦ 特にプロトタイプ開発であれば、 ▪ 環境構築に時間をかけず ▪ コア部分は後の本番開発にも引 き継げる程度に品質を保ちたい 課題①: 学習コスト 課題②: コード品質
© 2024 Algomatic Inc. 4 静的型検査とプロジェクト管理ツールを使って Rust製のリンター‧フォーマッター - isort, black,
flake8といったツールの統⼀を⽬指 したツール - リンターやフォーマッターこれ⼀つでOK - フォーマッターはやや厳しすぎるきらいがあるが configで調整可能 OSS製の静的型チェッカー - スタブファイル(pyi)をもとに静的型検査を⾏う - 基本的にはCLIツールだが、VSCodeやCursorの mypy Extensionを⽤いることでエディタ上でリ アルタイムにFBしてくれる - Pylanceでも良いが、CursorなどのVSCode以外 での利⽤を考えたときに第⼀候補となる Ruff mypy (参考)https://github.com/a5chin/python-uv/tree/main 以下のツールをuvやdevcontainerを使ってパッケージ化することでプロトタイプ⽤開発環境として運⽤している
© 2024 Algomatic Inc. デモ