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
31
[2024 창구 성장 지원 세미나] LLM과 온디바이스LM으로 스팸필터 앱 서비스 만들기
Beomi
September 03, 2024
Tweet
Share
More Decks by Beomi
See All by Beomi
[2024.11.27] SK WaveHill Meetup - LLM Fine-tuning
beomi
0
96
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
140
[PyCon Korea 2024 Session] 우리 모두는 스팸에서 자유로울 권리가 있다 - Smart Spam Filter 개발기
beomi
0
120
[2024.08.30] Gemma-Ko, 오픈 언어모델에 한국어 입히기 @ 머신러닝부트캠프2024
beomi
0
800
[PyConKR 2019] 온라인 뉴스 댓글은 정말 사람들의 목소리일까? - PART2
beomi
3
2.9k
AWS Lambda를 통한 Tensorflow 및 Keras 기반 추론 모델 서비스하기
beomi
4
1.2k
GDG Campus SummerParty: 쓸데많은 웹 크롤러 만들기 with Python
beomi
3
1.3k
PYCON KR 2017 튜토리얼: 나만의 웹 크롤러 만들기
beomi
1
830
PYCON KR 2017: 처음부터 알아보는 웹 크롤러
beomi
3
16k
Other Decks in Programming
See All in Programming
testcontainers のススメ
sgash708
1
120
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
ソフトウェアの振る舞いに着目し 複雑な要件の開発に立ち向かう
rickyban
0
890
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
540
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
270
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
Refactor your code - refactor yourself
xosofox
1
260
第5回日本眼科AI学会総会_AIコンテスト_3位解法
neilsaw
0
170
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
CSC305 Lecture 26
javiergs
PRO
0
140
14 Years of iOS: Lessons and Key Points
seyfoyun
1
770
Security_for_introducing_eBPF
kentatada
0
110
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
510
Thoughts on Productivity
jonyablonski
67
4.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
440
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Practical Orchestrator
shlominoach
186
10k
The Invisible Side of Design
smashingmag
298
50k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
BBQ
matthewcrist
85
9.4k
The Pragmatic Product Professional
lauravandoore
32
6.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
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