Latest

[논문 리뷰] Learning Retrieval Augmentation for Personalized Dialogue Generation

[논문 리뷰] Learning Retrieval Augmentation for Personalized Dialogue Generation

이번 시간에는 Personalized dialogue generation을 RAG와 결합하여 시도한 "Learning Retrieval Augmentation for Personalized Dialogue Generation" 논문을 살펴봅니다. 특히 최근에 개인화된 AI가 주목 받고 있는데요, AI가 사용자의 페르소나, 정보, 성격 등을 반영한다면 더욱 풍성하고 도움이 되는 답변을 생성할 수 있습니다. 이를 Personalized dialogue generation이라고 하는데요. 연구팀은 어떻게 해당 문제를

By Yongwoo Song
[독서] 나는 왜 생각이 많을까?

[독서] 나는 왜 생각이 많을까?

✒️발상을 바꿔야 한다. 앞으로는 '불안해하지 말아야지'가 아니라 '불안과 더불어 살아가야지'라고 생각하자.나는 왜 생각이 많을까? | 홋타 슈고 | 서사원- 교보ebook머릿속의 스위치를 끄고 싶을 때 보는 뇌과학 이야기, 심플한 사고법은 아무나 가질 수 없다! 그러나 누구나 해 볼 수 있다! 짧게 생각하고 빠르게 행동하기 위한 필독서!

By Yongwoo Song
[독서] 자기 경영 노트 - 피터 드러커

[독서] 자기 경영 노트 - 피터 드러커

✒️성과를 올리는 모든 사람들은 목표를 달성하기 위한 실행 능력을 갖추고 있다. 이 실행 능력은 기업에서 일하든, 정부기관에서 일하든, 병원의 관리자이든, 대학의 학장이든 똑같다.피터 드러커 자기경영노트 | 피터 드러커 | 한국경제신문- 교보ebook어떻게 ‘성과를 내는 경영 리더’가 되는가 지식작업자를 위한 변화와 혁신의 5가지 법칙! 이 책의 주제는 성과를 내는 능력을 향상시키기 위한

By Yongwoo Song
[독서] 거인의 노트 - 김익한

[독서] 거인의 노트 - 김익한

✒️"기록한다는 것은 어지럽혀진 방을 멀끔히 정리해 언제고 자유롭게 활동할 수 있는 나만의 공간을 만드는 일이다."거인의 노트 | 김익한 | 다산북스- 교보ebook“살던 대로 살 것인가, 변화를 꾀할 것인가!” 인생의 전환점을 만들어 줄 단 하나의 무기, 기록! 사람은 태어난 순간부터 성장한다. 단순히 지식을 쌓고 똑똑해지는 것부터 기술적ㆍ직업적으로 일을 잘하게 되는

By Yongwoo Song
[논문 리뷰] ColBERTv2: Effective and Efficient Retrieval via Lightweight Late Interaction

[논문 리뷰] ColBERTv2: Effective and Efficient Retrieval via Lightweight Late Interaction

이번 시간에는 “ColBERTv2: Effective and Efficient Retrieval via Lightweight Late Interaction” 논문을 살펴봅니다. 기존 ColBERT에서는 query와 document 간의 token-level interaction과 document token 임베딩은 미리 저장해두고, inference 시에 불러와서 사용하는 late interaction을 통해 성능과 속도를 모두 챙길 수 있었는데요. 하지만 late interaction을 위해 모델의 space footprint (공간 사용량)이 10배 이상

By Yongwoo Song
Python async 혼내주기 - 1편: 비동기란 뭔가요?

Python async 혼내주기 - 1편: 비동기란 뭔가요?

이번 시간에는 Python으로 비동기 (asynchronous)를 처리하는 방법에 대해 알아봅니다. 비동기, 프로그래밍을 하다보면 정말 많이 마주치는 개념인데요. Python 상에서 비동기 프로그래밍을 어떻게 할 수 있을지 함께 차근차근 살펴보아요! 비동기 (asynchronous)란 뭔가요? “The world is asynchronous” 무려 2022년 AWS re:invent Keynote에서 등장한 문구입니다. 키노트 링크 도대체 비동기가 무엇이길래, AWS

By Yongwoo Song
[논문 리뷰] CITADEL: Conditional Token Interaction via Dynamic Lexical Routing for Efficient and Effective Multi-Vector Retrieval

[논문 리뷰] CITADEL: Conditional Token Interaction via Dynamic Lexical Routing for Efficient and Effective Multi-Vector Retrieval

이번 시간에는 “CITADEL: Conditional Token Interaction via Dynamic Lexical Routing for Efficient and Effective Multi-Vector Retrieval” 논문을 살펴봅니다. 최근 sparse (e.g., BM25) 와 dense (e.g., DPR) retriever의 장점을 결합한 Multi-vector retriever method가 다양한 검색 태스크에서 좋은 성능을 보여주고 있습니다. 하지만 이러한 방법은 Single-vector retriever 방법에 비해 훨씬 느리고

By Yongwoo Song
[논문 리뷰] COIL: Revisit Exact Lexical Match in Information Retrieval with Contextualized Inverted List

[논문 리뷰] COIL: Revisit Exact Lexical Match in Information Retrieval with Contextualized Inverted List

이번 시간에는 COIL: Revisit Exact Lexical Match in Information Retrieval with Contextualized Inverted List 논문에 대해서 살펴봅니다. COIL은 기존 BM25와 같은 Exact lexical match 방식과 ColBERT와 같은 Dense Retriever의 장점을 합친 모델입니다. 이를 통해 적은 컴퓨팅 비용으로도 당시의 SOTA deep LM Retriever과 유사한 성능을 내는 점이 특징입니다. 논문은 링크에서 확인할

By Yongwoo Song
[논문 리뷰] Certifiably Robust RAG against Retrieval Corruption

[논문 리뷰] Certifiably Robust RAG against Retrieval Corruption

이번 시간에는 Retrieval corruption attack을 방어하는 RobustRAG를 제안한 Certifiably Robust RAG against Retrieval Corruption 논문에 대해 알아봅니다. 최근 공격자가 RAG system에 adversarial passage를 주입하여 의도하지 않은 retrievel 결과를 유도하는 기법들이 많이 연구되고 있습니다. 관련 논문 리뷰 링크 해당 논문은 이러한 공격 방법을 방어하는 프레임워크를 제안한 논문으로, 어떻게 공격을 막았는지 한번

By Yongwoo Song
[논문 리뷰] Poisoning Retrieval Corpora by Injecting Adversarial Passages

[논문 리뷰] Poisoning Retrieval Corpora by Injecting Adversarial Passages

이번 시간에는 Dense Retrieval 시스템의 취약점을 이용한 corpus poisoning attack을 제안한 “Poisoning Retrieval Corpora by Injecting Adversarial Passages” 논문을 살펴봅니다. 본 연구에서는 corpus poisoning attack을 통해 적대적인 passage를 corpus에 삽입하여 retrieval이 의도하지 않은 공격자의 passage를 출력하도록 하는 방법을 제안합니다. 최근 RAG가 주목 받으며 다양한 시스템에 Retrieval 시스템이 적용되고 있는데, 이러한

By Yongwoo Song
[논문 리뷰] Retrieval Augmented Generation or Long-Context LLMs? A Comprehensive Study and Hybrid Approach

[논문 리뷰] Retrieval Augmented Generation or Long-Context LLMs? A Comprehensive Study and Hybrid Approach

이번 시간에는 RAG와 Long-Context LLMs의 성능을 비교하고, 두 방법을 혼합한 Self-Route를 제안한 논문을 살펴봅니다. 최근에 출시된 Gemini 1.5와 같은 모델들은 Context window size가 1 Million에 달하는 등 매우 많은 토큰을 한 번에 입력 받을 수 있습니다. 이는 영문 소설 8권을 한 번에 입력할 수 있는 양입니다. 이러한 점을 활용해

By Yongwoo Song
[논문 리뷰] Can Long-Context Language Models Subsume Retrieval, RAG, SQL, and More?

[논문 리뷰] Can Long-Context Language Models Subsume Retrieval, RAG, SQL, and More?

이번 시간에는 Long-context language model(LCLMs)의 장점과 이를 평가할 수 있는 벤치마크인 LOFT를 제안한 Can Long-Context Language Models Subsume Retrieval, RAG, SQL, and More? 논문을 소개합니다. Long-context language model(LCLMs)은 전통적인 Retriever이나 Database와 같은 외부 툴에 의존하는 방식이 아닌, 전체 corpus를 한 번에 입력하여 다양한 작업을 수행할 수

By Yongwoo Song
[논문 리뷰] Gecko: Versatile Text Embeddings Distilled from Large Language Models

Research

[논문 리뷰] Gecko: Versatile Text Embeddings Distilled from Large Language Models

이번 시간에는 구글 딥마인드에서 발표한 Gecko 논문을 리뷰합니다. Gecko는 LLMs로부터 지식 증류 (knowledge distillation)를 통해 학습한 text embedding 모델입니다. 작은 모델 사이즈로도 큰 모델과 비견되는 높은 성능을 내는 것이 특징입니다. 논문은 링크에서 확인할 수 있습니다. Abstract * Gecko라는 compact하고 versatile한 text embedding 모델을 제안 * retriever에서 LLMs로부터의 지식 증류를 활용하여 강력한

By Yongwoo Song
[논문 리뷰] Rethinking the Role of Token Retrieval in Multi-Vector Retrieval

Research

[논문 리뷰] Rethinking the Role of Token Retrieval in Multi-Vector Retrieval

이번 시간에는 구글 딥마인드 팀에서 발표한 “Rethinking the Role of Token Retrieval in Multi-Vector Retrieval” 논문을 소개하고자 합니다. 최근 LLM의 부상과 함께 RAG (Retrieval-Augmented Generation)이라는 기술도 많은 주목을 받고 있는데요, 이는 외부의 신뢰할 수 있는 지식 베이스에서 유저의 질문 (query)과 관련된 지식 소스를 참고하여 답변을 생성하는 기술입니다. 이를

By Yongwoo Song
오픈소스로 알아보는 Soft Delete

Engineering

오픈소스로 알아보는 Soft Delete

들어가며 이번 시간에는 azure-sdk-for-python의 PR을 통해 soft-delete 기법을 알아보겠습니다. 😄 어떤 점이 궁금했나요? 위 PR은 기존 코드에서 test를 위해 비활성화했던 soft-delete 기능을 다시 활성화하며, test code들을 수정한 내용입니다. 해당 PR을 읽어보던 중soft delete키워드가 문득 궁금해져 찾아보게 되었습니다. Soft Delete란? Soft Delete는 데이터베이스에서 자주 사용하는 용어로, 데이터를 삭제하지 않고, 삭제된 것처럼 표시하는

By Yongwoo Song
AI 모델에게 특정 기억을 잊게 할 수는 없을까? - Unlearning

Research

AI 모델에게 특정 기억을 잊게 할 수는 없을까? - Unlearning

모두의 연구소 PERSONA LAB에서 진행한 세미나의 내용들을 참고하여 정리하였습니다 😄 들어가며 이번에 NeurIPS’23에서 구글이 무려 $50,000 상당의 캐글 컴페티션을 개최했는데요 (대회 링크), 컴페티션의 주제는 “Machine Unlearning” 입니다. Machine Learning은 많이 들어봤어도, Machine unlearning은 생소한 개념인데요, 어떤 주제인지 함께 알아봅시다 😄 Machine Unlearning? Machine unlearning은 말 그대로 기존에 모델이 학습했던 특정

By Yongwoo Song
오픈소스로 알아보는 Monkey Patch

Engineering

오픈소스로 알아보는 Monkey Patch

들어가며 어느날 azure-sdk-for-python의 한 PR 을 살펴보며 Monkey Patch 관련하여 궁금한 내용을 정리해보았습니다. 😄 👉 해당 PR 링크: https://github.com/Azure/azure-sdk-for-python/pull/31265 어떤 점이 궁금했나요? PR을 쭉 읽어보던 중 아래 내용이 눈에 띄었습니다. 골자는 다음과 같습니다. 1. Contributor가 어떤 기능을 개선하기 위해 작업을 진행 2. 하지만 ServiceRequestError가 발생 3.

By Yongwoo Song
[논문 리뷰] Generative Agents: Interactive Simulacra of Human Behavior

Research

[논문 리뷰] Generative Agents: Interactive Simulacra of Human Behavior

들어가며 이번 시간에는 Generative Agents: Interactive Simulacra of Human Behavior 논문에 대해 함께 알아보도록 하겠습니다. 논문 링크 본 논문은 인간의 행동을 모방할 수 있는 Agent를 제안합니다. 많은 분들이 Sims나 동물의 숲과 같은 게임을 즐겨해보셨을 것인데요. 이러한 게임에서는 가상의 샌드박스 세계에서 자신의 캐릭터를 만들고, 다양한 NPC 들과 상호작용하며 게임을 즐길 수

By Yongwoo Song
경희대 학생들을 위한 대화형 검색 엔진: KHUGPT

Engineering

경희대 학생들을 위한 대화형 검색 엔진: KHUGPT

KHUGPT, 어떤 서비스인가요? KHUGPT는 경희대학교 학생들을 위한 대화형 검색 엔진 서비스입니다. 예를 들어 사용자가 “올해 소프트웨어 관련 대회 정보 알려줘”, “올해 겨울에 모집하는 해외 연수 프로그램 있을까?”, “오늘 학식 알려줘” 등의 교내 정보와 관련된 질문을 하면 적절한 답변과 관련 링크를 제공해주는 서비스입니다. 따라서 학생들은 친구에게 물어보듯이 교내 정보를 쉽고 빠르게

By Yongwoo Song
2023년 상반기 리뷰

Life

2023년 상반기 리뷰

2023 상반기 회고 2022년 회고를 작성한게 엊그제 같은데, 어느덧 1학기 마무리를 앞두고 있습니다…! (2022년 리뷰 2편은 아직도 못썼…) 전역 후 오랜만에 복학한 만큼 정신 없이 한 학기를 보냈는데요, 한나름 뿌듯하고 뜻 깊은 일들을 많이 이룬 한 학기였던 것 같습니다! 다시 초심도 다잡을겸, 어떻게 한 학기를 보냈는지 회고와 함께 소개해볼게요 😊 함께

By Yongwoo Song
Canary deployment 파헤치기

Engineering

Canary deployment 파헤치기

이번 시간에는 인스턴스 배포 방법 중 하나인 카나리 (Canary) 배포에 대해 알아봅니다. 무중단 배포? 본격적으로 카나리 배포를 알아보기 전에 먼저 무중단 배포에 대해 살펴봅시다. 우리가 새로 업그레이드 된 버전의 서비스를 사용자에게 배포하려면 어떻게 해야할까요? 가장 간단한 방법은 기존 버전의 서버를 잠시 멈추고, 새로운 버전의 서비스로 업그레이드 하는 것입니다. 하지만 이

By Yongwoo Song