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
Snowflake ✕ LangChain でできること
Search
Toru Hiyama
March 10, 2025
410
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Snowflake ✕ LangChain でできること
Toru Hiyama
March 10, 2025
More Decks by Toru Hiyama
See All by Toru Hiyama
Snowpark for Python を効率的に使いこなすスタートライン(UDF)
toru_data
0
110
SPCSでエンドツーエンドな深層学習に挑戦してみた
toru_data
1
190
Streamlit Meetup Workshop:Streamlitのコントリビューションに挑戦してみよう
toru_data
0
140
Featured
See All Featured
The SEO identity crisis: Don't let AI make you average
varn
0
560
Designing for Performance
lara
611
70k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
The Pragmatic Product Professional
lauravandoore
37
7.4k
New Earth Scene 8
popppiees
4
2.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
360
Writing Fast Ruby
sferik
630
63k
GitHub's CSS Performance
jonrohan
1033
470k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
240
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Transcript
© 2025 NTT DATA Japan Corporation © 2025 NTT DATA
Japan Corporation Snowflake ✕ LangChain でできること SnowVillage Data Heroes Talk ~ SnowflakeのAI/LLMについて語ろう! 2025年3月10日 株式会社NTTデータ Snowflakeビジネス推進室 檜山 徹 1
© 2025 NTT DATA Japan Corporation 2 Snowflake Cortex Agents
… 爆誕! https://www.snowflake.com/en/blog/ai-data-agents-snowflake-cortex/ Cortex Agentsについては、解説ブログも書いたので、もしよかったら見てみてください!
© 2025 NTT DATA Japan Corporation 3 自分でもエージェント作ってみたくない…?
© 2025 NTT DATA Japan Corporation 4 Snowflake ✕ LangChain
でできること ここ一ヶ月で、Snowflakeで使えるLangChainのバージョンもv0.1からv0.3に 上がっています(=LangChainの波動を感じる…!) ▪ 2025年1月30日の私のつぶやき(v0.1) ▪ 2025年3月10日時点のライブラリ(v0.3) https://repo.anaconda.com/pkgs/snowflake/ LangChainについて、 は後ほど
© 2025 NTT DATA Japan Corporation 5 【2025年最新】 Snowflake ✕
LangChain でできること
© 2025 NTT DATA Japan Corporation 6 自己紹介 檜山 徹(ひやま
とおる) 株式会社NTTデータ Snowflakeビジネス推進室 所属 X(Twitter) @toru_data
© 2025 NTT DATA Japan Corporation 7 【2025年最新】 Snowflake ✕
LangChain でできること 本日はSnowflake上で動作させられるLangChain機能をいくつかご紹介します。 • Python UDFでドキュメント取り込み by Snowpark&LangChain • LangChain Agent on Snowflake(Snowflake Anacondaライブラリ) • LLMツール • RAGツール • SQLツール • LangGraph on Snowflake(持ち込みライブラリ) これにより、 Snowflake ✕ LangChain の世界観を理解し、 LangChain on Snowflake を今すぐ始められるようになることを目指します 他にも色々あると思うよ! 今回は一例ということで。
© 2025 NTT DATA Japan Corporation 8 LangChain とは? LLMを統合することで、様々なLLMアプリケーションを構築するためのOSS
モデル メッセージ Chain エージェント チャットボット ドキュメントの要約 データ分析
© 2025 NTT DATA Japan Corporation 9 Python UDF でドキュメント取り込み
© 2025 NTT DATA Japan Corporation 10 Python UDF でドキュメント取り込み
Snowpark Python UDF と LangChain の DocumentLoader を使って、 スケーラブルに様々なドキュメントの取り込みを行います。 Loader.load() UDF File Path PDF Text aa.pdf bb.xlsx このドキュメントは、~~ ユーザー名 ユーザーID ・・・ xx.docx 概要 XXシステムは、~~ 出力テキスト … … File Path aa.pdf bb.xlsx xx.docx … 入力ドキュメント Loader.load() Loader.load()
© 2025 NTT DATA Japan Corporation 11 Python UDF でドキュメント取り込み
試しに、PDF を読み込むドキュメントローダーを作成します。 ▪ UDF実装(load_pdf 関数) ▪ UDF呼び出し 今回の検証コードはまとめて GitHubに上げているので、 まったりと御覧ください。
© 2025 NTT DATA Japan Corporation 12 Python UDF でドキュメント取り込み
実行した結果、12個のPDFファイルを10秒でテキストに変換できました PDFだけでなく、オフィス(パワポ、Wordなど)・Webページなども取り込める ストリームを使った差分更新もでき、効率的
© 2025 NTT DATA Japan Corporation 13 LangChainエージェント
© 2025 NTT DATA Japan Corporation 14 LangChain エージェントとは? 様々なツールを活用して、入力されたプロンプトに対する回答を出力できるLLM機能
➢ 今回は、組み込みの Zero Shot ReAct エージェントを利用した動的なツール選択により、 いい感じの出力を生成することを期待します。 ユーザー入力 出力 エージェント ツール LLM RAG SQL …
© 2025 NTT DATA Japan Corporation 15 LangChain エージェント ツール(LLM)
LangChainのLLMクラスを継承し、 Snowflake Cortex用のLLMモデルを 作成しています。 コードでは、モデルの指定やセッションの 入力、Complete関数の呼び出しを 行っているだけで、実は簡素です。
© 2025 NTT DATA Japan Corporation 16 LangChain エージェント ツール(RAG)
次の2つのクラスを継承して、RAGを ツール化しています。 • Snowflake: CortexSearchRetriever • LangChain:BaseTool
© 2025 NTT DATA Japan Corporation 17 LangChain エージェント ツール(SQL)
Snowflakeの任意のテーブルにクエリを 実行できるツールです。 どんなテーブル・カラムがあるかを調査し たり、エラー内容を自己解決したりする ように構成しています。 参考:https://medium.com/snowflake/just-the-gist-developing-a-custom-langchain-tool-that-uses-snowpark-session-6dd86316c464
© 2025 NTT DATA Japan Corporation 18 これまで作成したツールをもとに、 エージェントを定義します。 LangChain
エージェント エージェント定義
© 2025 NTT DATA Japan Corporation 19 LangChain エージェント 実行の様子
その1 ▪ 与えたツールを使って情報収集… ▪ 失敗したら自分でやり直し
© 2025 NTT DATA Japan Corporation 20 LangChain エージェント 実行の様子
その2 SQLクエリで取得した結果と、RAGで取得した結果を組み合わせて、 最終的なインサイトをエージェント自ら生成できた。(すごくない…?)
© 2025 NTT DATA Japan Corporation 21 LangGraph
© 2025 NTT DATA Japan Corporation 22 LangGraph LangGraphは、LangChainよりも柔軟にLLM実行グラフを構築できるOSS from
langgraph.graph import END, START, StateGraph from langgraph.graph.message import add_messages from langgraph.prebuilt import ToolNode, tools_condition class State(TypedDict): messages: Annotated[list, add_messages] graph_builder = StateGraph(State) graph_builder.add_node("chatbot", chatbot) tool_node = ToolNode(tools=[tool]) graph_builder.add_node("tools", tool_node) graph_builder.add_conditional_edges("chatbot", tools_condition) graph_builder.add_edge("tools", "chatbot") graph_builder.add_edge(START, "chatbot") https://langchain-ai.github.io/langgraph/tutorials/introduction/#part-3-adding-memory-to-the-chatbot
© 2025 NTT DATA Japan Corporation 23 LangGraph の環境準備 2025年3月10時点ではLangGraphがSnowflake
Anacondaパッケージに 存在しないため、パッケージアップロードを実施し、SiSで使えることを確認する。 といっても、アップロード自体は、天下のSnowflake CLI様により2コマンドだけ。
© 2025 NTT DATA Japan Corporation 24 LangGraph を実行してみる SiS上でLangGraphが動く!
今回はここまでですが、もっと 複雑なグラフを組んでいくことも できそうです!
© 2025 NTT DATA Japan Corporation 25 おわりに Snowflake ✕
LangChain により、Snowflakeに蓄積されたデータを使って、 LLMで自律的に分析させることの未来が垣間見えました! どこまで実用できるのか?は正直私も分かってません( ここ重要!)が、 Snowflakeで様々なLangChainの機能が「動くこと」は確認できました。 • https://github.com/THiyama/LangChain-Snowflake-Test • 現地参加の方は、実際に動いている様子を見ながら話しましょう! 今後、Snowflakeもこの領域をどんどん強めていくと思うので、 我々もしっかり追従(むしろ追い越し)していきましょう
None