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
[2024 창구 성장 지원 세미나] LLM과 온디바이스LM으로 스팸필터 앱 서비스 만들기
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Beomi
September 03, 2024
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[2024 창구 성장 지원 세미나] LLM과 온디바이스LM으로 스팸필터 앱 서비스 만들기
Beomi
September 03, 2024
More Decks by Beomi
See All by Beomi
[Devfest Incheon 2025] 모두를 위한 친절한 언어모델(LLM) 학습 가이드
beomi
1
1.7k
[I/O Extended 2025 인천] 1인 개발 서비스를 위한 Gemini CLI 사용기
beomi
0
210
1인개발로 AI서비스앱 만들기: 1, 10, 100, 1000, 10000, 그리고 100000명까지 (feat. Smart Spam Filter)
beomi
0
120
[2024.11.27] SK WaveHill Meetup - LLM Fine-tuning
beomi
0
250
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
260
[PyCon Korea 2024 Session] 우리 모두는 스팸에서 자유로울 권리가 있다 - Smart Spam Filter 개발기
beomi
0
250
[2024.08.30] Gemma-Ko, 오픈 언어모델에 한국어 입히기 @ 머신러닝부트캠프2024
beomi
0
1.3k
[PyConKR 2019] 온라인 뉴스 댓글은 정말 사람들의 목소리일까? - PART2
beomi
3
3.3k
AWS Lambda를 통한 Tensorflow 및 Keras 기반 추론 모델 서비스하기
beomi
4
1.4k
Other Decks in Programming
See All in Programming
Heart of Swift Concurrency
koher
0
230
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
0
140
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
240
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
150
LLMは4年分のCompose移行を再現できるのか?実プロダクト279件のXMLで探る自動化の境界線
makun
0
540
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
160
XHTMLが残したもの
yosuke_furukawa
PRO
2
690
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
1.1k
AI駆動開発にグラフDBを重ねてみた
satoshi256kbyte
2
780
Intent as Code
shoppingjaws
6
910
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
140
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
Designing for Performance
lara
611
70k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
How STYLIGHT went responsive
nonsquared
100
6.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.2k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Music & Morning Musume
bryan
47
7.4k
Designing Experiences People Love
moore
143
24k
Transcript
None
LLM과 온디바이스 LM으로 스팸필터 앱 서비스 만들기 이준범 (Beomi) AI/ML
GDE
AI/ML GDE로 활동하고 있어요 KcBERT, KoAlpaca, Llama-Ko와 같은 한국어 오픈
언어모델 연구를 합니다. 이번 세션에서 개발기를 다루는 "Smart Spam Filter", AI 기반 스팸차단 앱 서비스를 만들었어요. 안녕하세요, 이준범(Beomi)입니다👋
스마트 스팸 필터? - 언어모델이 탐지하는 스팸 문자
앱스토어 #2
매일같이 쏟아지는 스팸/스미싱 문자
한땀 한땀 키워드?
이거, 사람이 해야할 일일까? (개개인이 각자 해결해야할 문제일까?)
이거, 사람이 해야할 일일까?🙅 (개개인이 각자 해결해야할 문제일까?)
“1개는 사람이 할 수 있어. 10개도 할 수 있겠지. 하지만
1000개, 1만개는 할 수 없어. 그건 기계가 해야하는 영역이야.”
LLM은 강력한 분류기
"이거 스팸이야?" 한 문장 Prompt으로도 가능! LLM은 그 자체로 강력한
스팸 분류기
"이거 스팸이야?" 한 문장 Prompt으로도 가능! + 개발용 JSON으로도 가능!
LLM은 그 자체로 강력한 스팸 분류기
간단히 LLM을 API로 만들어도 OK LLM을 서비스로 만들어보자
간단히 LLM을 API로 만들어도 OK LLM을 서비스로 만들어보자
LLM은 "비싼" 분류기
LLM을 서비스하려면 얼마나 들지? (e.g., GPT4o) System prompt 합쳐서 대략
103 tokens → $0.005 / 1K tokens → $0.0005 / 1 SMS → 0.7원 / 1문자 한사람: 10문자/day = 7원 나혼자(1) = 1달에 210원 가족+친구들(10) = 1달에 2,100원 일반사용자(1만) = 1달에 210만원 if 5만명 유저 → 1달에 1050만원(!!)
1년 API 비용, 1.2억? 😨
Q1. 정말 큰 모델이 필요한가? Q2. 직접 학습한 LM으로도 가능한가?
다양하게 제공되는 작은 LLM (e.g., Gemini-Flash 1.5) 문자 하나당 약
100 tokens → $0.00008 / 1K tokens → $0.000008 / 1 SMS → 0.01원 / 1문자 한사람: 10문자/day = 0.1원 나혼자(1) = 1달에 3원 일반사용자(1만) = 1달에 3만원 if 5만명 유저 → 1달에 15만원(!)
작은 모델의 문제: 성능!
한국 스팸을 잘 모르는 LLM 🤔
데이터를 모아보자, 어디서?
None
몇년동안 쌓인 1만3천개 문자, 스팸 3천개+
1. 수동 라벨링 → 고성능, 알고있는 스팸 분류는 완벽하게 가능.
→ 시간이 엄청나게 오래 걸림 2. LLM 라벨링 → Prompt engineering이 필수. → 성능이 낮음 데이터 라벨링은 어떻게?
OpenAI GPT4o + Gemini 1.5 Pro + Claude 3.5 Sonnet
여러 LLM으로 라벨링 하기
여러 LLM으로 라벨링 하기
None
어떤 모델을 쓸까?
어떤 모델을 쓸까?
Encoder 모델과 Decoder 모델
Encoder BERT Fine Tune
Encoder 모델과 Decoder 모델 Llama-3-Open-Ko Fine Tuned KcBERT-tiny Fine Tuned
Inference Server, GPU?
Text Generation Inference
Text Embedding Inference (feat. Apple Silicon)
LM API Latency
LM API Security: CloudFlare Zero Trust Tunnel
LM API Security: CloudFlare Zero Trust Tunnel
CF Tunnel 이슈: Latency ++
Argo Smart Routing (유료)
CF Tunnel Argo로 ICN 서버: Low Latency
On Device LM
개인 데이터에 대한 우려
On Device Machine Learning
On Device Machine Learning
Hugging Face models → TFLite / Core ML
Hugging Face models → TFLite / Core ML
On Device, 잘 동작!
서버가 죽어도 앱은 동작한다!
ML 모델 사이클
주기별로 모델 업데이트 1) Raw 데이터 (로그 등)
주기별로 모델 업데이트 2) 데이터 라벨링
주기별로 모델 업데이트 3) 모델 학습 & 평가
주기별로 모델 업데이트 4) 모델 서빙
LLM으로, 지속 가능한 On Device 모델 성능 향상 LLM으로 자동화
EOD