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
[2024 창구 성장 지원 세미나] LLM과 온디바이스LM으로 스팸필터 앱 서비스 만들기
Search
Beomi
September 03, 2024
Programming
0
57
[2024 창구 성장 지원 세미나] LLM과 온디바이스LM으로 스팸필터 앱 서비스 만들기
Beomi
September 03, 2024
Tweet
Share
More Decks by Beomi
See All by Beomi
1인개발로 AI서비스앱 만들기: 1, 10, 100, 1000, 10000, 그리고 100000명까지 (feat. Smart Spam Filter)
beomi
0
18
[2024.11.27] SK WaveHill Meetup - LLM Fine-tuning
beomi
0
170
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
180
[PyCon Korea 2024 Session] 우리 모두는 스팸에서 자유로울 권리가 있다 - Smart Spam Filter 개발기
beomi
0
170
[2024.08.30] Gemma-Ko, 오픈 언어모델에 한국어 입히기 @ 머신러닝부트캠프2024
beomi
0
1.1k
[PyConKR 2019] 온라인 뉴스 댓글은 정말 사람들의 목소리일까? - PART2
beomi
3
3k
AWS Lambda를 통한 Tensorflow 및 Keras 기반 추론 모델 서비스하기
beomi
4
1.3k
GDG Campus SummerParty: 쓸데많은 웹 크롤러 만들기 with Python
beomi
3
1.4k
PYCON KR 2017 튜토리얼: 나만의 웹 크롤러 만들기
beomi
1
910
Other Decks in Programming
See All in Programming
複数アプリケーションを育てていくための共通化戦略
irof
10
3.8k
F#で自在につくる静的ブログサイト - 関数型まつり2025
pizzacat83
0
290
Using AI Tools Around Software Development
inouehi
0
1.2k
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
CSC307 Lecture 17
javiergs
PRO
0
110
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
210
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
200
業務自動化をJavaとSeleniumとAWS Lambdaで実現した方法
greenflagproject
1
110
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
120
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
lnit
1
160
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
600
Passkeys for Java Developers
ynojima
3
860
Featured
See All Featured
Speed Design
sergeychernyshev
31
990
Being A Developer After 40
akosma
90
590k
Fireside Chat
paigeccino
37
3.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
910
The Invisible Side of Design
smashingmag
299
51k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Docker and Python
trallard
44
3.4k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
BBQ
matthewcrist
89
9.7k
A better future with KSS
kneath
239
17k
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