소개 / ABOUT

김유석

효율적이고 확장 가능한 시스템을 구축하는 소프트웨어 엔지니어입니다. LLM 시스템, RAG 아키텍처, 경량 추론을 중심으로 기록합니다.

최근 관심사 LLM SYSTEMS · RAG · LIGHTWEIGHT INFERENCE

블로그는 실험 로그와 긴 글을 담되, 첫 인상은 포트폴리오처럼 조용하고 기술적으로 유지합니다.

글 모음

전체 글

안녕? 안녕? 아녀어어엉! 안녕....

76개의 글

자료구조 공부#5 (순환, 반복#2)

2021.03.12 - [전체글] - 자료구조 공부#4 (순환, 반복) 이전 내용에서 이어지는 내용 입니다. 하노이 탑 문제 하노이 탑의 경우엔 순환의 방법이 효율적이다. // 막대 A에 쌓여 있는 n개의 원반을 B를 임시공간으로 하여 막대 C로 옮긴다 void hanoid_tower(int n, char A, char B, char C){ if (n==1){ A에서 C로 원판을 옮긴다. } else{ hanoid_tower(n-1,A,C,B); A에 있는 한개의 원한을 C로 옮긴다. hanoid_tower(n-1, B,A,C); } } 순환방식으로 풀이한 하노이탑의 유사코드 우리는 n개의 원한을 A에서 C로 옮기는 것이 목적이다. 그러므로 그 한개를 뺀 n-1개 만큼 임시버퍼에 옮기고 마지막 한개를 C..

댓글

객체지향 프로그래밍 공부#1 (OOP를 공부해야하는 이유)

구조화 프로그램 일반적으로 순차, 조건, 반복문에 작성된프로그램, 구조화 프로그램 장점은 실행순서가 항상 위에서 아래로 작동하므로 쉽게 이해할 수 있는 편이다. 대부분의 언어가 이에 속하고 있다. 예외로, C에서 'GOTO'문은 예상치 못한 부분으로 넘겨서 특정한 상황이 아니면 구조화 프로그램에선 사용하지 않는 것이 좋다. 모듈(Module) 모듈에 대해서는 사람마다 그해석이 다르다, 대게의 경우 함수나 클래스를 칭하며, 일부는 C에서 '('과 ')'에 의해 둘러쌓인 블록과 프로그램 파일(a.cpp) 등을 모듈이라고 부르는 경우도 있다. 간단한 코드로 지역변수 이해하기 #include void Func() { int b; int c; } int main() { int ix; int iy; ix = 2; ..

댓글

화일 처리 및 응용 공부#6 (디스크 저장장치 특성)

2021.03.13 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#5(하드 디스크 구조) 이전 내용은 생략해도 상관 없으나 참고하는걸 추천 디스크 저장장치의 특성 디스크의 특성 요소 - 회전 속도 - 디스크 드라이브의 원반수 - 기록 면당 트랙 수 - 트랙당 섹터 수 - 섹터(트랙)당 바이트 수 예) 기가 디스크 - 디스크 드라이브 - 원반수 8개 기록면 16개 - 16,384개의 트랙/기록면 - 128섹터/트랙 - 4096바이트/섹터 - 용량 : 16면x 16384트랙x 128섹터x 4096바이트 = 128GB 디스크 데이터 접근 디스크에 저장된 데이터 처리 - 메인 메모리에서만 연산 작업이 가능 - 디스크와 메인 메모리 사이에 데이터 블록 전송이 필요 - 블록은 하나 이상의 섹터로 구성 ..

댓글

화일 처리 및 응용 공부#5(하드 디스크 구조)

2021.03.12 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#4 (화일 저장장치) 이전내용에서 이어지는 내용 입니다. 하드디스크(Manetic Disk) - 직접 접근 장치 (DASD; Direct Access Storage Device)중 가장 많이 쓰이는 장치 종류 - 하드디스크(Hard Disk) : 1955년 IBM 개발- 초기엔 5mb - 유연한 디스크(Flexible Disk) : 플로피 디스크, 디스킷 분류 기준 - 기록 표면의 수 (recording surfaces) - 데이터 전송률 (Date transfer rate) - 기록/판독 헤드 이동 시간(R/W ead movement times) - 접근 방법 (access mechanism technology) - 회전 지..

댓글

화일 처리 및 응용 공부#4 (화일 저장장치)

2021.03.11 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#3 (화일의 분류2, 화일처리형식) 마찬가지로 이전 내용에서 이어져온 내용이니 참고하는것이 좋다. 화일 저장장치의 특성 저장장치 저장 매체 데이터를 저장하고 검색하기 위한 물리적 매체(Ram, Rom) 저장 매체 소멸성혹은 휘발성(volatile) vs 비소멸성혹은 비휘발성(nonvolatile) 예) 소멸성 : 램 예) 비소멸성 : usb, 하드디스크 접근 장치 데이터를 판독하거나 기록하는 장치 1차 저장장치 메인 메모리 - 내용 접근 시간은 일정하고 빠름 - 프로그램/ 데이타를 처리하기 위한 작업공간 - 프로그램 실행과 이에 필요한 데이터 유지공간 - DRAM (Dynamic Random Access Memory) - 용량..

댓글

자료구조 공부#4 (순환, 반복)

2021.03.09 - [이론공부/자료구조] - 자료구조 공부#3 (알고리즘의 성능 분석) 이전 내용이 포함되어 있다. 이해가 안되는 부분이 있다면 이전 이론 공부 내용을 참고하길 바란다. 이전글과 마찬가지로 글속의 이미지 자료는 대부분 교수님이 수업도중 참고한 자료를 다시 가져온것이다. 순환(Recursion) 재귀호출(재귀함수), 되부름 이라는 단어로 많이 불린다. 알고리즘에서 함수가 수행도중 자기자신을 다시 호출하여 문제를 해결하는 기법이다. 정의 자체가 순환적으로 되어 있는경우에 사용하면 쉽게 해결이 가능하다 순환에서 팩토리얼의 정의 위와 같이 n!을 순환으로 정리 하면 아래와 같다. int Factorial(int a){ if(a 0; b--) c = c*b; retrurn(c); } For 문..

댓글

화일 처리 및 응용 공부#3 (화일의 분류2, 화일처리형식)

2021/03/10 - [이론공부/화일처리및응용] - 화일처리 및 응용 공부#2 (화일 구조, 화일 분류) 마찬가지로 이전 내용을 숙지할 필요가 있을것 같다. 이 교수님 수업은 대체적으로 모호한 느낌이 강하므로, 따로 이해하는 과정이 필요할 것 같다. 화일의 분류 프로그램의 화일 접근 목적에 따라 화일의 분류가 또 다르다. 입력화일(input file) 프로그램이 판독(read)을 위해 접근하는 화일 출력화일(output file) 프로그램이 기록(wirte)을 위해 접근하는 화일 입/출력화일(input/ output file) 프로그램의 실행 도중 판독, 기록(read/ write)을 하기위해 접근하는 화일 화일 처리 형식 일괄처리(batch) 형식 : 마스터 파일의 변동 내용인 트랜잭션들을 일정기간동..

댓글

화일처리 및 응용 공부#2 (화일 구조, 화일 분류)

2021/03/09 - [이론공부/화일처리및응용] - 화일처리 및 응용 공부#1 (화일의 의미) 이전 내용을 참고하고 읽는걸 추천한다. 이전 내용에 모호한 설명 내용이 많으므로 다른 참고자료를 인터넷에서 참조하는것도 추천한다. 화일 이란? 화일(file) : 어떤 응용 목적을 위해 함께 저장된 레코드 집합.(예: 학생, 사원, 급여, 인사, 재고) 화일구조(file structure) : 데이타의 표현과 연산의 조합을 말함 화일의 분류 마스터 화일(Mater File) 트랜잭션 화일(Transction File) 레포드 화일 작업 화일 프로그램 화일 텍스트, 오디오, 비디오 등등... 마스터 화일 어느한 시점에서 조직체에 관한 정적인 면을 나타내는 데이터의 집합 -예 : 사원 마스터 화일, 고객 마스터 ..

댓글

자료구조 공부#5 (순환, 반복#2)

2021.03.12 - [전체글] - 자료구조 공부#4 (순환, 반복) 이전 내용에서 이어지는 내용 입니다. 하노이 탑 문제 하노이 탑의 경우엔 순환의 방법이 효율적이다. // 막대 A에 쌓여 있는 n개의 원반을 B를 임시공간으로 하여 막대 C로 옮긴다 void hanoid_tower(int n, char A, char B, char C){ if (n==1){ A에서 C로 원판을 옮긴다. } else{ hanoid_tower(n-1,A,C,B); A에 있는 한개의 원한을 C로 옮긴다. hanoid_tower(n-1, B,A,C); } } 순환방식으로 풀이한 하노이탑의 유사코드 우리는 n개의 원한을 A에서 C로 옮기는 것이 목적이다. 그러므로 그 한개를 뺀 n-1개 만큼 임시버퍼에 옮기고 마지막 한개를 C..

글 읽기

객체지향 프로그래밍 공부#1 (OOP를 공부해야하는 이유)

구조화 프로그램 일반적으로 순차, 조건, 반복문에 작성된프로그램, 구조화 프로그램 장점은 실행순서가 항상 위에서 아래로 작동하므로 쉽게 이해할 수 있는 편이다. 대부분의 언어가 이에 속하고 있다. 예외로, C에서 'GOTO'문은 예상치 못한 부분으로 넘겨서 특정한 상황이 아니면 구조화 프로그램에선 사용하지 않는 것이 좋다. 모듈(Module) 모듈에 대해서는 사람마다 그해석이 다르다, 대게의 경우 함수나 클래스를 칭하며, 일부는 C에서 '('과 ')'에 의해 둘러쌓인 블록과 프로그램 파일(a.cpp) 등을 모듈이라고 부르는 경우도 있다. 간단한 코드로 지역변수 이해하기 #include void Func() { int b; int c; } int main() { int ix; int iy; ix = 2; ..

글 읽기

화일 처리 및 응용 공부#6 (디스크 저장장치 특성)

2021.03.13 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#5(하드 디스크 구조) 이전 내용은 생략해도 상관 없으나 참고하는걸 추천 디스크 저장장치의 특성 디스크의 특성 요소 - 회전 속도 - 디스크 드라이브의 원반수 - 기록 면당 트랙 수 - 트랙당 섹터 수 - 섹터(트랙)당 바이트 수 예) 기가 디스크 - 디스크 드라이브 - 원반수 8개 기록면 16개 - 16,384개의 트랙/기록면 - 128섹터/트랙 - 4096바이트/섹터 - 용량 : 16면x 16384트랙x 128섹터x 4096바이트 = 128GB 디스크 데이터 접근 디스크에 저장된 데이터 처리 - 메인 메모리에서만 연산 작업이 가능 - 디스크와 메인 메모리 사이에 데이터 블록 전송이 필요 - 블록은 하나 이상의 섹터로 구성 ..

글 읽기

화일 처리 및 응용 공부#5(하드 디스크 구조)

2021.03.12 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#4 (화일 저장장치) 이전내용에서 이어지는 내용 입니다. 하드디스크(Manetic Disk) - 직접 접근 장치 (DASD; Direct Access Storage Device)중 가장 많이 쓰이는 장치 종류 - 하드디스크(Hard Disk) : 1955년 IBM 개발- 초기엔 5mb - 유연한 디스크(Flexible Disk) : 플로피 디스크, 디스킷 분류 기준 - 기록 표면의 수 (recording surfaces) - 데이터 전송률 (Date transfer rate) - 기록/판독 헤드 이동 시간(R/W ead movement times) - 접근 방법 (access mechanism technology) - 회전 지..

글 읽기

화일 처리 및 응용 공부#4 (화일 저장장치)

2021.03.11 - [이론공부/화일처리및응용] - 화일 처리 및 응용 공부#3 (화일의 분류2, 화일처리형식) 마찬가지로 이전 내용에서 이어져온 내용이니 참고하는것이 좋다. 화일 저장장치의 특성 저장장치 저장 매체 데이터를 저장하고 검색하기 위한 물리적 매체(Ram, Rom) 저장 매체 소멸성혹은 휘발성(volatile) vs 비소멸성혹은 비휘발성(nonvolatile) 예) 소멸성 : 램 예) 비소멸성 : usb, 하드디스크 접근 장치 데이터를 판독하거나 기록하는 장치 1차 저장장치 메인 메모리 - 내용 접근 시간은 일정하고 빠름 - 프로그램/ 데이타를 처리하기 위한 작업공간 - 프로그램 실행과 이에 필요한 데이터 유지공간 - DRAM (Dynamic Random Access Memory) - 용량..

글 읽기

자료구조 공부#4 (순환, 반복)

2021.03.09 - [이론공부/자료구조] - 자료구조 공부#3 (알고리즘의 성능 분석) 이전 내용이 포함되어 있다. 이해가 안되는 부분이 있다면 이전 이론 공부 내용을 참고하길 바란다. 이전글과 마찬가지로 글속의 이미지 자료는 대부분 교수님이 수업도중 참고한 자료를 다시 가져온것이다. 순환(Recursion) 재귀호출(재귀함수), 되부름 이라는 단어로 많이 불린다. 알고리즘에서 함수가 수행도중 자기자신을 다시 호출하여 문제를 해결하는 기법이다. 정의 자체가 순환적으로 되어 있는경우에 사용하면 쉽게 해결이 가능하다 순환에서 팩토리얼의 정의 위와 같이 n!을 순환으로 정리 하면 아래와 같다. int Factorial(int a){ if(a 0; b--) c = c*b; retrurn(c); } For 문..

글 읽기

화일 처리 및 응용 공부#3 (화일의 분류2, 화일처리형식)

2021/03/10 - [이론공부/화일처리및응용] - 화일처리 및 응용 공부#2 (화일 구조, 화일 분류) 마찬가지로 이전 내용을 숙지할 필요가 있을것 같다. 이 교수님 수업은 대체적으로 모호한 느낌이 강하므로, 따로 이해하는 과정이 필요할 것 같다. 화일의 분류 프로그램의 화일 접근 목적에 따라 화일의 분류가 또 다르다. 입력화일(input file) 프로그램이 판독(read)을 위해 접근하는 화일 출력화일(output file) 프로그램이 기록(wirte)을 위해 접근하는 화일 입/출력화일(input/ output file) 프로그램의 실행 도중 판독, 기록(read/ write)을 하기위해 접근하는 화일 화일 처리 형식 일괄처리(batch) 형식 : 마스터 파일의 변동 내용인 트랜잭션들을 일정기간동..

글 읽기

화일처리 및 응용 공부#2 (화일 구조, 화일 분류)

2021/03/09 - [이론공부/화일처리및응용] - 화일처리 및 응용 공부#1 (화일의 의미) 이전 내용을 참고하고 읽는걸 추천한다. 이전 내용에 모호한 설명 내용이 많으므로 다른 참고자료를 인터넷에서 참조하는것도 추천한다. 화일 이란? 화일(file) : 어떤 응용 목적을 위해 함께 저장된 레코드 집합.(예: 학생, 사원, 급여, 인사, 재고) 화일구조(file structure) : 데이타의 표현과 연산의 조합을 말함 화일의 분류 마스터 화일(Mater File) 트랜잭션 화일(Transction File) 레포드 화일 작업 화일 프로그램 화일 텍스트, 오디오, 비디오 등등... 마스터 화일 어느한 시점에서 조직체에 관한 정적인 면을 나타내는 데이터의 집합 -예 : 사원 마스터 화일, 고객 마스터 ..

글 읽기