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
勉強会3_LLMを活用する技術について
Search
milky04
May 19, 2024
Programming
0
70
勉強会3_LLMを活用する技術について
社内勉強会資料です(2023/11/15)
milky04
May 19, 2024
Tweet
Share
More Decks by milky04
See All by milky04
勉強会5_画像生成AIの仕組みと学習・i2i対策
milky04
0
9
勉強会2_機械学習のモデル学習と開発について
milky04
0
60
勉強会4_アップデートされたAssistantsAPIを試す
milky04
0
2.4k
勉強会1_SlackのAIチャットボットを作ってみた
milky04
0
73
Other Decks in Programming
See All in Programming
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
130
ふつうの技術スタックでアート作品を作ってみる
akira888
1
490
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
Deep Dive into ~/.claude/projects
hiragram
14
2.5k
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
11k
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
350
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
3
450
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
120
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
630
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
550
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
760
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
240
Featured
See All Featured
Docker and Python
trallard
44
3.5k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
We Have a Design System, Now What?
morganepeng
53
7.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
950
Music & Morning Musume
bryan
46
6.6k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Become a Pro
speakerdeck
PRO
28
5.4k
Code Review Best Practice
trishagee
69
18k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
A better future with KSS
kneath
239
17k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Transcript
LLMを活用する技術について
はじめに • LLM(Large Language Model(大規模言語モデル))が話題ですが、 LLMを使 用したシステム・アプリケーション開発はどのように行うのか? →LLMを活用する技術のうち、「LangChain」と「Open Interpreter」について、 簡単に解説や紹介をしていきます。
• 実際にコードも見て、 (時間の許す限り)動かしていきます。 ※最新の情報が反映できていない部分があるかもしれません。
LLMとは • Large Language Model(大規模言語モデル)の略 • 大量のテキストデータを使ってトレーニングされた自然言語処理モデル • ファインチューニング等により様々な自然言語処理タスクに適応可能 •
例:テキスト生成/分類、感情分析、情報抽出、文章要約、質問応答 →ChatGPTはLLMの応用例の1つ。LLMを対話特化にファインチューニング したもの。
LangChain • LLMと連携するアプリの開発を支援するライブラリ • 言語モデルアプリケーションの構築に使用可能な、多くのモジュー ルを提供している • モジュールを個別に使用したり、組み合わせたり繋げて(Chain)複雑 なアプリケーションの作成が可能
LangChainの主なモジュール • Language Model : 言語モデルによる推論の実行 └LLM : テキスト生成モデル └ChatModel
: チャットモデル • Prompt Template : ユーザー入力からのプロンプトの生成 • Chain : 複数のLLMやプロンプトの入出力を繋げる • Agent : ユーザーの要求に応じてどの機能をどういう順番で実行するかを決定 • Memory : 過去のやりとりに関する情報を保持 • Retrieval : 検索拡張生成 (RAG) • Callback : ロギング、モニタリング、ストリーミングなどで利用
Open Interpreter • LLMを活用して開発されたオープンソースのツール • 自然言語による対話を通じてローカル環境でコードを実行し、結果を返す • ローカル環境で動作するため、OSを直接操作させることが可能であり、ファイル容 量やネット接続の制約がない •
対応言語:Python/R/JavaScript/shell/AppScript/HTML • 例えば以下のような様々な事が可能 └「YouTubeから動画をDLしてアニメーションを作成して」「動画に字幕をつけて」 └「ローカルにあるファイルを開いて中身を書き換えて」など →AIアシスタントの開発等に有用
Open Interpreterの仕組み 1. ユーザー入力受付&LLM初期化 2. ユーザー入力に関連したcode snipetsを取得(自然言語で問い合わせると Pythonコードのチュートリアルを返すAPIにリクエストして取得) 3. LLMへの指示とcode
snipets、ユーザー入力、ユーザーのOS等の情報をまとめ てpromptを作成し、LLMに投げる 4. エラー発生等うまくいかない場合は目標達成するまで再実行 ↑上記流れを繰り返す • 仕組みの詳細については以下参考 └Open Interpreterのログ解析して、何が行われているのか確認してみた └Open Interpreterの実装を読み解く
実際にコードを見ていきます • GoogleColab • https://colab.research.google.com/drive/1MpqkWFNs0UFH47AJgpGaVc 7umirZCDRd?usp=sharing
おわりに • こうした技術を活用して、LLMを使用したシステム・アプリケーション開発を することで、アイデアや工夫次第で様々な可能性が広がると思います。 • 技術の発展スピードが凄く、追うのは中々大変ですが今後も注目であり、こ の先どう進歩していくか色々な意味で楽しみですね(先日もOpenAI DevDay で発表がありましたね)。 •
今回紹介した他にもLLM関連の技術は様々なものがあるので、興味のあ る方は調べてみてください。