공부하고 기록하는, 경제학과 출신 개발자의 노트

분류 전체보기 548

SK Tech Summit 2023 - Squash: 딥러닝 서비스 추론속도 개선기

Squash: 딥러닝 서비스 추론속도 개선기 https://youtu.be/xUDmsGS_xjg?si=lF1vYad7ssUdcnBx 발표자: 제현우 자원 최적화 목표 - Efficient AI 작년: image sensor와 AI 기술 결합한 intelligent CiS (iCiS) 소개했음 Always-On: 휴대폰 전면 카메라가 사람의 존재 확인 -> 모바일 화면 깨우기 이미지 센서에서 동작하는 초경량 AI 알고리즘이 필요... 경량화, 최적화 기법 체득. Quantization, Pruning, Knowledge Distiliation 그렇지만 AI 서비스 하다 보면 마주하는 근본적인 문제 - computation cost 특히 딥러닝 서비스는 특정 API 호출이 많아지면 응답 지연 발생... 서비..

학습일지/AI 2024.01.31

FastAPI, SQLAlchemy 프로덕트에서 alembic을 쓰지 않은 이유

작은 사이드 프로젝트 중간에 투입돼서 코드 개선을 하게 되었는데, FastAPI + SQLAlchemy (postgres) + Alembic으로 구성된 기존 방식에서 Alembic을 atlas로 변경했다. Python으로 구성하는 API Server + ORM + DB migration tool 조합의 정석으로 많이 쓰이지만, 글 작성 기준 alembic 최신버전인 v1.13.1 프로덕트를 써보니 장점보다는 단점이 더 크게 느껴졌다. 당연하게도, 내가 느낀 단점이나 불편함이 alembic 프로덕트 자체의 한계는 아닐 수도 있다. 문서에서 내가 놓친 부분이 있을 수도 있다. 이런 고민을 하게 된 상황은 아래와 같은 조건에서였다. Python으로 production level의 웹 서비스를 목표로 상정하고 ..

Designing Event-Driven MicroServices: Patterns

https://www.youtube.com/playlist?list=PLa7VYi0yPIH0IpUKXb3q7NSjpJGO9GGGZ Designing Event-Driven MicroservicesMicroservices are the foundation of Cloud-Native Distributed Systems. Learn the principles of microservices and how they can be extended to build Event-Drive...www.youtube.com   conflent에서 제공하는 강의목록.From Monoliths to Microservices Monolith와 Microservice는 딱 잘라서 나뉘는 게 아니라, 아키텍처 스펙트럼의 Bounda..

데이터야놀자 2023 - Whisper 모델의 불필요한 Weight 줄여서 학습비용 절약하기

https://youtu.be/MDE2HRsfr7g?si=7s4yRsOlUSZ8_nnu Socar AI Research 조충현님. STT 모델 경량화 연구내용의 소개. 카셰어링 업체가 자체 STT를 구축해야 했던 이유? CS 상담사의 업무에는 여러 가지가 있다. 상담가이드 문서 검색, 유저 정보 확인, 예약내역 확인, 상담내용 기록... 이걸 매 상담마다 반복해야 함. 이렇다보니 상담이 많아지면 대기시간이 길어짐... CS만족도 하락. 상담원은 고객업무에만 집중하도록, 상담 외 업무는 AI를 사용하는 방향으로. 그러려면, 고객과 상담원의 대화 내역을 문서화하는 작업은 필수. 문서가 있어야 AI가 뭐라도 할 수 있기 때문. Whisper: OpenAI에서 공개한 오픈소스 STT. 코드와 weight 공개되..

학습일지/AI 2024.01.18

NHN Forward 22 - 벡터 검색 엔진에 ANN HNSW 알고리즘 도입기

https://youtu.be/hCqF4tDPNBw?si=wYvWqiYFzX5UDr6R 대충? 거의 정확하다! 벡터 검색 엔진에 ANN HNSW 알고리즘 도입기 NHN Cloud 로그플랫폼개발팀 권성재. 벡터 검색엔진 운영하면서 새로운 알고리즘 도입하기까지. 기존 방식의 문제점, 해결책, C++ 구현체 말고 Golang에 적용하기까지. 헷갈릴 수 있어서 용어 정리하자면 ML 기술 결과물로 나온 Vector 값의 검색 관련 내용임. ML이나 AI 기술 자체에 관련된 건 아니다. HNSW 도입 배경 기존 방식인 KNN: 점 두개의 L2 Distance 계산. 검색 대상으로 들어온 Vector가 있으면 기존 DB에 있던 모든 Vector 간 거리를 일일이 계산 -> 가장 거리가 가까운 K개 응답. 따라서, 데..

학습일지/AI 2024.01.01

HashiConf 2023 - Create a Terraform provider with the Plugin Framework

https://youtu.be/16qs7LJSyps?si=SK1HvENWtcuePAEY terraform에서 3,000가지가 넘는 provider를 구분해서 provisioning할 수 있는 이유 -> Provider 때문. Plugin 같은 건데, RPC로 terraform core와 통신하고 / 필요한 resource, data source를 가져올 수 있게 한다. Target API와 https로 통신할 수 있는 Go Client Library를 사용. How to Create a Provider? 보통 목적은 세 가지일 것. Update Existing Provider 기능 추가, 버그 수정 등... for Contribute 단, 오늘 소개하는 프레임워크는 SDKv2인 최신 버전이라서 약간 다를..

강연 2023.12.29

데이터야놀자 2022 - ElasticSearch에서 NLP 처리를 위한 Vector 데이터 검색하기

https://youtu.be/aW5_voFk938?si=hEwqM1kQCDBAwbd0 ES Advocate 김종민님 전통 검색엔진으로서의 ES '사용자가 입력한 query'가 포함된 Docs를 Text Matching 방식으로 찾는다. Docs 저장할 때 Tokenizer 사용해서 text -> index 변환 해당 docs가 query를 얼마나 많이 포함하고 있는지를 TF 같은 요소를 기반으로 점수 계산. -> 연관도 높은 결과를 가져온다. LLM 등장으로 '검색엔진이 질문 의미를 이해하고, 적합한 결과를 가져오는 형태'의 서비스를 제공하려는 시도가 늘었음. query와 매칭되지는 않지만, query의 해답인 'connection speed requirements' 정보를 포함한 docs를 리턴하는 ..

학습일지/AI 2023.12.10

질문이 무기가 된다

‘해결해야 할 문제가 무엇인가‘를 정의할 수 있는 능력이 ‘논점사고'이다. 논점사고는 ‘상황을 다각도로 보고, 끊임없이 질문하며 근원을 찾아가는' 능력이며, 의문을 가지고 질문하는 것이 핵심이다. 논리적이고 이성적인 질문의 중요성을 강조하지만, 이에 못지않게 ‘직관과 경험' (i.e. 이게 핵심인 것 같은데..? 같은 감각) 을 강조한 것이 특이점. 컨설팅업계 종사자라서인지 ‘단기적, 효율적인 문제해결' 위주의 사례가 많고, 그나마도 일본 내 영업사례에 한정되어 있다는 점이 아쉽다. 컨설팅업의 입장에서 클라이언트가 ‘현상을 해결해 달라’는 요구를 받았을 때, 어떤 식으로 논점을 정의하고 클라이언트에게 전달해야 하는지를 소개한다. 전반적으로 컨설팅 회사의 문제해결법을 소개한다는 인상이 강하다. 눈앞의 상황..

세줄요약 독서 2023.11.24

Naver Engineering Day 2023 - AI 경량화: 더 빠르고 저렴한 AI 서비스

AI 경량화: 더 빠르고 저렴한 AI 서비스 https://www.youtube.com/watch?v=NVNCPGWe5Ss Naver Biz CIC / AI Serving Dev Inference Latency 서버 부하 전력소모 효율 ... 모델의 아키텍처가 성능을 좌우하는데, 서비스 상황에 맞춰 아키텍처 자체를 실험적으로 바꾸며 최적값을 찾기 위한 작업은 어렵다. 아키텍처를 고정한 채, 효율성을 더 높이기 위한 삽질기. 실험에 사용한 조건 중 num_thread 고정 dynamic allocation에서 발생하는 속도차이 무시하기 위함. 같은 모델이라도 다소 느린 속도. 경량화 이론은 매우 어렵지만, 서비스 적용을 위한 코드 수정은 (이론에 비하면) 쉬운 편이다. AI 모델 트렌드는 '더 큰 모델, ..

학습일지/AI 2023.11.07

큰돈 버는 기회는 모두가 어렵다고 할 때 찾아온다

20년 전 일본 주택개조업에서 성공한 두 명의 창업자의 성급한 일반화의 오류로 점철된 책 2003년에 쓰인 책인데, 이게 왜 2021년에 1쇄로 재판되었는지 도저히 이해가 안 간다. 출판사가 양심이 없는게 분명하다 비법이라며 소개하는 모든 지식이 낡았다. 2000년대 초반 직장인 자기계발서 문법에서 향수를 느낄 수 있다 내가 이 책을 사서 봤다는 것 자체가 ‘이들의 마케팅 수법이 훌륭하다'는 방증 같아서 기분이 묘하다. ‘모두가 어렵다고 할 때' 라는 책 제목의 키워드와 2021년이라는 발행년도 때문에 ‘고금리로 인한 경기침체' 라는 현재 상황을 토대로 쓴 책인 줄 알았는데, 그런 건 전혀 없고 그냥 ‘요즘 시대는 어렵다'는 식의 두루뭉술한 시대의식으로 쓰였다. 내용은 요약할 것도 없고, 이 책이 왜 가..

세줄요약 독서 2023.10.29