전체 글 30

7가지 프로젝트로 배우는 LLM AI 에이전트 개발(황자) - LLM에게 일을 시키는 패러다임

다 읽은 날짜: ~2025/04/26 제이펍 출판사에서 서평단을 모집하는데, 읽어보고 싶은 책이라 신청했다. 운좋게도 선정되어서 기대하며 기다리다가, 차근차근 재밌게 읽었다. LLM에 대해 기술적 개념은 얼추 다 알고 있었다. 다만 내가 아는 마지막 개념이 Chain-of-Thought인데 '프롬프트만 잘 주면 LLM이 더 똑똑해진다'라는 개념이 충격적이었던 기억이 난다. 그러다보니 LLM 엔지니어링이 전부 프롬프트 엔지니어링인 것 아닐까 하는 의구심도 있고, 최근 일정 중 LLM을 갖고 엔지니어링할 기회가 없어서 프레임워크에 관해서도 이야기만 들어보고 직접 써보지 못했다. 최근 시간이 좀 생긴 덕분에 관심이 더 생겨서 책을 읽어보니 기대했던 내용들이 많이 있어 만족스러웠다. LangChain과 Lla..

Book 2025.04.26

2024 정리

청소년기 이후의 삶 중 나를 둘러싼 환경이 가장 많이 변한 1년이었던 것 같다. 대학생활 중 가장 빨리 지나간 1년이기도 하다. 벌써 졸업할 때가 다가온다는 점이 두렵기도 하고 기대되기도 한다. 다양한 일을 겪으며 내적으로도 많이 변했다고 느낀다. 책은 대부분 상반기에 읽어서 연초에 책을 좀 읽어야겠다.읽은 책거인의 노트(김익한)퀀트의 정석(김성진(퀀트대디))인공지능 투자가 퀀트 - 알고리즘, 세계 금융시장을 침공하다(권용진)파이썬 디자인 패턴 2/e(체탄 기리다 저, 이우현 역)처음 만나는 금융공학(이진재, 진경철)어떻게 나의 일을 찾을 것인가(야마구치 슈 저, 김윤경 역)퀴팅(줄리아 켈러 저, 박지선 역)돈, 뜨겁게 사랑하고 차갑게 다루어라(앙드레 코스톨라니 저, 김재경 역)당신은 겉보기에 노력하고 ..

백준 1562 - 계단 수

noj.am/1562 백준 1562번 계단 수 문제이다. 문제) '계단 수'는 인접한 숫자간의 차가 모두 1인 수를 가리킨다. 자연수 N이 주어졌을 때, N자리 계단 수 중 0~9 모든 숫자가 등장하는 계단 수의 개수를 출력하세요. 풀이) 처음엔 N 이하인 모든 계단수의 개수를 계산하는 줄 알고 백트래킹을 생각했다. 그런데 문제를 다시 읽어보니 0~9 모든 숫자가 들어가야한다는 조건이 있어서 함수 인자로 used라는 set을 추가했다. 그럼에도 TLE(시간초과)가 나서 백트래킹으로 풀기 적합하지 않은 문제란 생각이 들었다. 백트래킹으로 계산하면 0~9가 모두 들어가지 못하는 케이스를 불필요하게 많이 체크하기 때문에 비효율이 발생한다. 문제에서 집중할 부분은 크게 3가지이다. "지금까지 결정한 자리(dig..

IT/Problem Solving 2024.02.02

2023 정리

상반기는 창업에 도전해보는 시기였다. 그리고 이제껏 최대한 생활패턴을 유지해온 것과는 다르게, 창업에 가능한 시간을 다 끌어모으는 생활을 해보았다. 하반기는 여유를 누릴 수 있었다. 전공인 운영체제 및 실험 프로젝트가 사라지면서 시간적 여유가 생긴 것이다. 24년도에는 대학교 4학년이 되는데, 4학년이라기엔 내가 뭘 할 줄 아는가 라는 의문이 든다. 정비하면서 분명한 성장이 필요할 것 같다. 내적인 성장은 많이 했지만 기술적 성장이 아쉽다. 그럼에도 1년 자체가 유의미한 시간이었다. 얼마 남지 않은 대학생활이 더 아쉬워서, 24년은 더 알차게 보내야겠단 생각이 많이 드는 것 같다. -읽은 책- 고도를 기다리며(사무엘 베케트) 첫사랑(예이츠) 수레바퀴 아래서(헤르만 헤세) 변신, 시골의사(프란츠 카프카) ..

[Python] python float 'nan', 'inf' 처리

문제상황 txt에 nan과 inf, float 값이 저장된 파일을 읽어와서 다시 float 값으로 변환하고, nan과 inf는 경계값으로 설정하려 했는데 되지 않았다. 생각해보니 map(float, target_list)에서 에러가 생기지 않아서 'nan', 'inf' 모두 float 함수가 실행되긴 했다는 뜻이었다. print(float('nan')) # nan print(type(float('nan')) # print(float('nan') == float('nan')) # False print(float('nan') is float('nan')) # False print(float('nan') is type(float('nan'))) # False print(float('inf')) # inf 해결..

IT/Programming 2023.12.02

변신, 시골의사(프란츠 카프카) - 인외의 인간

다 읽은 날짜: 2023.09.07.~2023.09.08. 그레고르 잠자는 어느 날 아침 불안한 꿈에서 꺠어났을 때, 자신이 잠자리 속에서 한 마리 흉측한 해충으로 변해 있음을 발견했다. 프란츠 카프카의 '변신'은 고전 문학을 이야기할 때 빠지지 않고 등장하는 작품이다. 그리고 최근 읽고 있는 웹소설 '시간을 달리는 소설가'(피아조아)는 작품소개에 그 도입부를 오마주하였다. 어느날 한 소설가가 편치 않은 잠자리에서 깨어났을 때, 그는 자신이 12살의 자신으로 변해 있음을 발견했다. 초등학교 무렵부터 고전소설을 좋아한다며 소설을 읽던 내가, 그것도 서양 고전 위주로 읽던 내가 카프카를 듣지 못한 것은 아니었다. 카프카와 '변신'에 대해서는 여러 차례 들어본 바가 있었고, 그럼에도 나는 주제가 내키지 않는다..

Book 2023.11.22

도둑맞은 집중력: 집중력 위기의 시대, 삶의 주도권을 되찾는 방법(요한 하리) - 집중력 문제는 개인이 아니라 시스템의 문제이다.

다 읽은 날짜: 2023.08.11.~2023.08.21. 최근 더 집중하고 싶은데 집중하지 못한다는 생각이 들었다. 고등학교 때 자습시간에 자습하던 집중력을 잃은지 오래이고, 짧게 과제에 집중하려 해도 여러 일로 지친 머리는 그때와 같은 집중을 하지 못했다. 오랜만에 알라딘에서 책을 살피다가 이 책을 발견해 주제가 마음에 든다는 이유로 장바구니에 담아두었고, 다른 책을 살 때 15000원 이상 무료배송 조건이 새로 생겼길래 금액을 맞추려고 같이 샀다. 지난번에 유튜브에서 기록에 관한 영상을 보며, 내 기억력의 감소가 요약하지 않고 통으로 기억하려는 습관 때문인 것 같다고 생각했다. 그래서 이번 독서에서는 각 장을 읽은 후 다음 장을 읽기 전 해당 장의 내용을 요약했다. 생각나지 않는 부분은 다시 책을 ..

Book 2023.08.22

[Python] A load persistent id instruction was encountered,but no persistent_load function was specified. 해결

문제 상황 with open(f"./{dir_name}/agents/{id_code}", "rb") as file: saving_list.append(pickle.load(file)) Exception has occurred: UnpicklingError A load persistent id instruction was encountered, but no persistent_load function was specified. .pickle로 저장해둔 object를 불러오려 했는데, 에러가 발생했다. 해결 확장자에 주의한다!(.pickle) 코드를 수정하다가 .pickle이란 확장자를 지우고 파일 이름까지만 작성해둬서 파일이 제대로 인식되지 않은 것 같다. '.pickle' 이란 확장자를 명확히 기술하는 ..

IT/Programming 2023.07.02

[Python] dictionary changed size during iteration 해결

문제 상황 keys = target_dict.keys() for key in keys: if condition(key): target_dict.pop(key) Runtime Error: dictionary changed size during iteration 딕셔너리에서 key를 체크하면서 조건에 맞는 key-value pair를 제거하려 했는데, 에러가 났다. 해결 target_dict.keys() 대신 list(target_dict.keys()) 를 이용한다. .keys() method는 list가 아니라 dict와 연결된 iterable object를 반환하는 것 같다. keys = list(target_dict.keys()) for key in keys: if condition(key): targ..

IT/Programming 2023.06.24