728x90

개발/python 4

텔레그램 봇(telegram bot)에서 다중 사용자(multi-user) 지원하기

1. 개요텔레그램으로 봇을 편하게 만들 수가 있습니다. 검색하면 많은 자료를 찾을 수가= 있습니다. 하지만 대부분 한 명의 사용자만 지원하는 예제만 있어서 여러 명의 사용자를 지원하기 위해서는 조금 더 고민할 것들이 있습니다. 여기서는 최소한의 코드로 다중 사용자를 지원하는 예제를 작성해 보겠습니다. 2. 텔레그램 봇 생성하기텔레그램에서 다음과 같이 봇을 생성할 수 있습니다. botfather 라는 사용자를 검색해서 선택합니다. botfather 는 봇을 만드는데 도움을 주는 텔레그램 공식 봇입니다. 봇을 생성하기 위해 /newbot 을 선택합니다. 봇의 이름을 지정합니다. 저는 "다중 사용자 봇" 이라고 넣었습니다. 이제 봇의 아이디를 정해야 하는데, 아이디는 유일한 이름이어야 하고 bot으로 끝나야합..

개발/python 2024.09.07

pytorch 2.x GPU 메모리 강제로 반환하기

1. 개요python 2.x 에서 GPU 메모리가 반환되지 않는 다양한 경우가 있습니다. 이전에 포스팅 한 것처럼 cublas에서 할당해서 사용하는 메모리가 있습니다. 이 부분은 아래의 글을 참고하시기 바랍니다.2024.09.04 - [개발/python] - pytorch 2.x 에서 반환되지 않는 GPU 메모리 (8519680 bytes) pytorch 2.x 에서 반환되지 않는 GPU 메모리 (8519680 bytes)1. 증상pytorch 2.x 에서 forward를 실행한 이후에 GPU 메모리를 정리했는데도 8MB 정도가 반환되지 않고 남아 있습니다. 처음에는 memory leak 이 의심이 되었는데, 연속적으로 실행해도 메모리가 쌓이지lastlaugher.tistory.com 위의 경우 뿐만 아..

개발/python 2024.09.05

pytorch 2.x 에서 반환되지 않는 GPU 메모리 (8519680 bytes)

1. 증상pytorch 2.x 에서 forward를 실행한 이후에 GPU 메모리를 정리했는데도 8MB 정도가 반환되지 않고 남아 있습니다. 처음에는 memory leak 이 의심이 되었는데, 연속적으로 실행해도 메모리가 쌓이지는 않고 항상 8MB 정도만 남게 되는 현상입니다. 다음의 코드로 재현이 가능합니다.import gcimport torchfrom torchvision import modelsmodel = models.resnet50()inputs = torch.randn(1, 3, 1024, 1024)model = model.cuda()inputs = inputs.cuda()model.forward(inputs)model.cpu()inputs.cpu()del modeldel inputsgc.col..

개발/python 2024.09.04

logging.basicConfig() 를 반복해서 사용하기

1. python logging 모듈 소개python에서 기본적으로 제공해 주는 logging 모듈은 사용하기 쉽고 logger의 기능을 충실히 제공해 주고 있어서 많이 사용되고 있습니다. 간단한 코드 작성할 때는 크게 필요가 없지만, 규모 있고 복잡한 코드를 작성할 때는 logger를 잘 사용해야 사용자에게 유의미한 정보를 제공해 줄 수 있고, 개발자에게는 수월한 디버깅을 하는데 도움을 줄 수 있습니다.  2. 간단한 사용법아래 코드를 실행하면 모든 level 이 출력되는 게 아니라, warning 이후로만 출력이 됩니다.import logginglogging.debug('debug')logging.info('info')logging.warning('warning')logging.error('error..

개발/python 2024.09.02
728x90