Engineering

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

Engineering

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

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

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
오픈소스로 알아보는 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
경희대 학생들을 위한 대화형 검색 엔진: KHUGPT

Engineering

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

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

By Yongwoo Song
Canary deployment 파헤치기

Engineering

Canary deployment 파헤치기

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

By Yongwoo Song
Huggingface transformers 컨트리뷰션 후기

Engineering

Huggingface transformers 컨트리뷰션 후기

1. 개요 안녕하세요! 이번에 우연히 허깅페이스의 transformer 라이브러리에 contribution 하게 되었습니다. contribution이 처음이라 참 이런저런 우여곡절이 있었는데요. contribution의 과정을 소개 드려보고자 합니다 😊 2. 무엇을 컨트리뷰션 하신거죠? 컨트리뷰션 링크 사실 대단한 건 아니고, 사소한 주석 오타 수정에 기여했습니다! 이번에 허깅페이스 트랜스포머 분석 프로젝트 중에, ElectraTokenizer 의 Docstring이 Electra가 아닌 BERT로 잘못

By Yongwoo Song
Pythonic 코드를 위한 10가지 가이드

Engineering

Pythonic 코드를 위한 10가지 가이드

이번 시간에는 좋은 파이썬 코드를 위한 파이써닉한 코드를 위해 꼭 알아야 할 TOP 10에 대해 살펴봅니다. 1. PEP8 스타일 가이드 따르기 파이썬은 PEP8 (Python Enhancement Proposal)이라는 코드 스타일 가이드가 있습니다. 공백, 들여쓰기, 문법 등을 어떻게 하면 좋을지 상세하게 작성되어 있습니다. 그렇다고 이 모든 규칙들을 외울 필요는 없습니다. 바로 Black,

By Yongwoo Song