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
aigame & webllm
Search
oggata
February 24, 2025
Technology
80
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
aigame & webllm
oggata
February 24, 2025
More Decks by oggata
See All by oggata
セルから世界へ ------Life Gameからパックマン、そしてWorld Modelまでの世界生成シミュレーション入門
oggata
0
390
MESAワールドモデルとマルチエージェントによる人間行動シミュレーション :仮想から現実世界への架け橋
oggata
0
27
ecological_niche_reward_function_v3
oggata
0
13
NextGen Chore
oggata
0
12
MESA_MINI_DINOv2_Pipeline
oggata
0
13
Self-Introduction
oggata
0
32
Gaming & PhisicalAI
oggata
0
68
savanna_sim.py
oggata
0
6
Beyond LLM:世界モデルが切り拓くフィジカルAIの時代
oggata
0
29
Other Decks in Technology
See All in Technology
Agentic Web
dynamis
1
200
「エンジニア進化論」2028年の開発完全自動化、エンジニアはどう進化するか
cyberagentdevelopers
PRO
4
3.1k
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
290
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
350
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
570
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
580
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
220
チームで進めるAI駆動アジャイル×ウォーターフォール
kumaiu
0
140
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
360
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
110
On-behalf-of Token exchange with AgentCore Identity
hironobuiga
2
120
protovalidate-es を導入してみた
bengo4com
0
160
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
580
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
160
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
450
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
We Are The Robots
honzajavorek
0
240
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
New Earth Scene 8
popppiees
3
2.3k
Building Applications with DynamoDB
mza
96
7.1k
Everyday Curiosity
cassininazir
0
230
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Transcript
AIGAME X WEBLLM AIGAME X WEBLLM Play
RETRO AGENT SDK RETRO AGENT SDK https://oggata.github.io/retro-agent-sdk
AI X GAME AI X GAME
バズったら、 OPENAIの料金が 高くなる… バズったら、 OPENAIの料金が 高くなる…
マインクラフトで前方に 100x100x100のサイズでコン クーとの構造物を作るコマンド は? /fill ~ ~ ~ ~100 ~100
~100 concrete LOCAL LLM? LOCAL LLM?
MACHINE LEARNING COMPILATION(MLC) MACHINE LEARNING COMPILATION(MLC) https://www.cmu.edu/flame/research/2024/machine-learning-compilation-for-large-language-models.html CLI / Server
mlc_llm serve Android MLC JVM iOS MLC Swift Web browser WebLLM webgpu + wasm ios android os AMD / Nvidia model-lib model compilation platform native runtime model weight mlc weight conversion pre-converted weight original model weight
WEB LLM CHAT WEB LLM CHAT 新鮮なココナッツミルクを使ったカレーのレシピを紹介しよう: 材料 ココナッツオイル 大さじ2ニンニクのみじん切り
大さじ2おろし ショウガ 大さじ2玉ねぎ(みじん切り)小1/2個青唐辛子 (種を取り除き、みじん切り) 2~3本ココナッツミルク(または アーモンドミルク、ココナッツミルク) 大さじ2~3塩 適量コリ アンダー、パセリ、コリアンダーなどのフレッシュハーブ 作り方 小鍋または中くらいの大きさの鍋にココナッツオイルを入れ、 よくかき混ぜながら中弱火で溶かす。 にんにく、しょうが、玉ねぎのみじん切りを加え、香りが出るま で2~3分炒める。 みじん切りにした青唐辛子を加え、1~2分炒める。 すりおろしたココナッツミルクを加え、炒めた材料を加える。 カレーを沸騰させたら弱火にし、鍋にふたをして、途中で混 ぜながら、とろみが少しついてココナッツミルクが泡立ち始 めるまで約10~12分煮る。 必要に応じて塩を加える。 お好みでフレッシュハーブを加え、さらに1~2分煮る。 温かいうちにご飯や麺と一緒に食べる。お好みでフレッシュ ライムジュースを添える。 フレッシュココナッツミルクとフレッシュハーブで作るカレーをお 楽しみください。
セキュリティ、プ ライバシー保護 オフライン利用 レスポンス時間 短縮 コスト削減 特定業務への カスタマイズ エッジデバイス の活用
WHY LOCAL LLM ? WHY LOCAL LLM ?
import {ChatCompletionMessageParam, CreateMLCEngine, MLCEngine} from '@mlc-ai/web-llm'; const model = 'Llama-3.2-3B-Instruct-q4f32_1-MLC';
this.engine = await CreateMLCEngine(model, { initProgressCallback: ({progress}) => this.progress.set(progress) }); this.ready.set(true); await this.engine!.resetChat(); const systemPrompt = ` The user will ask questions about their todo list. Here's the user's todo list: ${this.todos().map(todo => `* ${todo.text} (${todo.done ? 'done' : 'not done'})`).join('\n')}`; const messages: ChatCompletionMessageParam[] = [ {role: "system", content: systemPrompt}, {role: "user", content: userPrompt} ]; const chunks = await this.engine!.chat.completions.create({messages, stream: true}); let reply = ''; for await (const chunk of chunks) { reply += chunk.choices[0]?.delta.content ?? ''; this.reply.set(reply);
LET’S TRY AIGAME X WEBLLM LET’S TRY AIGAME X WEBLLM