전체 글 91

[논문 리뷰] Reflexion: Language Agents with Verbal Reinforcement Learning

안녕하세요. 이번 글에서는 Reflexion: Language Agents with Verbal Reinforcement Learning (NeurlPS 2023) (Noah Shinn, Federico Cassano) 에 대해서 정리해보려고 합니다. 본 논문에서는 전통적인 강화학습 방법인 기존의 스칼라 값을 피드백으로 주어 모델의 성능을 올리는 방식이 아닌,언어적인 피드백을 통해 모델의 성능을 올리는 방법을 제안합니다. 쉽게 설명하자면, 수학 문제를 푸는 상황을 가정했을 때, 문제를 풀고 -> 답이 틀렸다면 -> 오답 노트(Self-Reflexion)를 작성하고 -> 오답 노트를 토대로 다시 문제를 푸는 것을 반복하는 과정 이라고 보면 될 것 같습니다. 이해한 흐름대로 최대한 쉽고 자세하게 정리해보겠..

Paper 2026.02.11

[논문 리뷰] ReAct: Synergizing Reasoning and Acting in Language Models

안녕하세요. 이번 글에서는ReAct: Synergizing Reasoning and Acting in Language Models (ICLR 2023)에 대해서 정리해보려고 합니다. 에이전트 구조의 기초 논문입니다. 이해한 흐름대로 최대한 쉽고 자세하게 정리해보겠습니다. 1. 연구 배경이 논문은 2022년에 나온 논문인데,기존에는 언어모델에서추론(Reasoning)행동(Acting)이 두 가지를 따로 연구해왔다고 합니다.여기서 행동이라고 하면 좀 애매할 수 있는데,행동을외부 정보를 가져오는 것 (예: Wikipedia API를 활용한 검색)정도로 생각하면 될 것 같습니다. 기존 방법의 한계Reasoning only (추론만 하는 경우)대표적으로 Chain-of-Thought(CoT)가 있는데,이 방식은 ..

Paper 2026.01.15

SOLID와 GRASP

소프트웨어 아키텍처 설계 순서어떻게 할 지를 생각하기 전에 어떤 것을 해야할 지 정하기(기능,비기능적 요구사항 들을 정의할 것)구체적인 설계를 하기 전에 추상적으로 설계 할 것 -설계 초기에 비기능적 요구사항도 고려할 것재사용성과 확장성을 고려할 것프로토타입과 반복적인 수정을 통해 설계를 개선해야함모호하고 과도한 세부 설계 피하기SOLID객체지향 소프트웨어 설계의 5가지 핵심 원칙SRP(Single Responsibility Principle) - 하나의 클래스는 하나의 책임만 가져야 하며, 변경할 이유가 오직 하나여야 한다.OCP(Open/Closed Principle) - 확장에는 열려있고 수정에는 닫혀 있어야 한다. 즉, 기능을 추가할 때 기존 코드를 수정하지 않도록 설계해야한다.LSP(Liskov..

Django 개발 환경 설정

https://www.djangoproject.com/download/ Download DjangoThe latest official version is 5.2.1 (LTS)www.djangoproject.com위 사이트의 내용처럼 처음 세팅 방법에는 여러 옵션이 있지만 anaconda를 이용하여 세팅하려고 한다. Anaconda prompt 를 실행한다. - 가상 환경 생성conda create -n [환경이름] python=[설치할 버전]ex) conda create -n django_env python=3.12 - 가상 환경 활성화conda activate [환경이름] ex) conda activate django_env - django 설치pip install django - django 설치..

Django 2025.05.27

백준 10845번 - 큐 - 파이썬(Python)

문제 링크https://www.acmicpc.net/problem/10845 문제정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.push X: 정수 X를 큐에 넣는 연산이다.pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 큐에 들어있는 정수의 개수를 출력한다.empty: 큐가 비어있으면 1, 아니면 0을 출력한다.front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.명령은 총 여섯 가지이다.입력 조건첫째 줄에 주어지는..

백준 10866번 - 덱 - 파이썬(Python)

문제 링크https://www.acmicpc.net/problem/10866 문제정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.push_front X: 정수 X를 덱의 앞에 넣는다.push_back X: 정수 X를 덱의 뒤에 넣는다.pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.pop_back: 덱의 가장 뒤에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 덱에 들어있는 정수의 개수를 출력한다.empty: 덱이 비어있으면 1을, 아니면 0을 출력한다.front: 덱의 가장 앞에 있는 정수를 출력한다. 만..

백준 18258번 - 큐 2 - 파이썬(Python)

문제 링크https://www.acmicpc.net/problem/18258  문제정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.push X: 정수 X를 큐에 넣는 연산이다.pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.size: 큐에 들어있는 정수의 개수를 출력한다.empty: 큐가 비어있으면 1, 아니면 0을 출력한다.front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다.명령은 총 여섯 가지이다.입력 조건첫째 줄에 주어지..

git - pull하지 않고 작업 후 push 시에 해결방법

야구 골든글러브 수상을 예측하는 모델을 만드는 미니 프로젝트를 하던 중에 git 문제가 발생했다.문제점Playdata@DESKTOP-O325F7G MINGW64 /c/encore_skn11/project_final (main)$ git push origin mainTo https://github.com/encore-SKN11/EDA-1Team.git ! [rejected] main -> main (fetch first)error: failed to push some refs to 'https://github.com/encore-SKN11/EDA-1Team.git'hint: Updates were rejected because the remote contains work that you do ..

Git 2025.03.13