[개념] 프롬프트 엔지니어링의 개념과 LLM 활용 시 꿀팁
·
CS 지식 | 기초 용어,개념
프롬프트 엔지니어링을 얘기하기 전에, LLM이 무엇인지 정확히 알고 가자! LLM(Large Language Model, 대규모 언어 모델)이란? : 빅데이터 시대에 등장한 수억 개의 매개 변수를 가진 인공신경망으로 이루어진 거대한 언어모델로, 대량의 텍스트 데이터, 특히 인간의 자연어 처리를 위해 학습된다. 이러한 언어 모델은, 주어진 문맥 정보를 바탕으로 텍스트를 생성하거나 이해하는 데에 사용된다. LLM의 주요 특징 대량의 데이터 학습 : 웹상의 텍스트(Wikipedia, Github, Twittwer 등), 책, 기사 등 다양한 소스에서 수십 또는 수백 GB의 텍스트 데이터에 대해 학습한다. 수억 개의 매개 변수 : LLM은 수억 또는 그 이상의 매개변수를 포함할 수 있으며, 이로 인해 더 복잡한..
[개념] DDD와 SQL 중심 설계 (feat. ORM과 SQL Mapper)
·
CS 지식 | 기초 용어,개념
데이터 모델링의 원칙 등을 공부해서 정리하려다가, 실무적으로 접근할 필요가 있을 것 같아, 최근 웹 개발의 90% 이상을 차지하고 있는(국내 대기업도 이정도일까...?) DDD 설계와 정통적인 방법인 SQL 중심 설계의 차이점을 먼저 정리해보고자 한다. 이번 포스팅은 더더욱이 DDD, ORM, DB 설계 등의 매우 깊은 내용을 담고 있기에, 내가 쓰는 내용이 틀릴 확률이 상당히 높다. 그러니 읽으시는 독자 분들께서 틀린 내용이 있다면, 꼭 지적해주셨으면 한다. DDD(Domain Driven Design)란 무엇인가? : Domain의 사전적 의미는 '영역, 집합'으로, 비즈니스 Domain에 기반한 애플리케이션의 디자인 패턴을 말한다. 여기서 비즈니스 Domain이란, 유사한 업무의 집합을 의미한다. ..
[개념] MSA, 컨테이너의 등장과 Agile, DevOps 문화는 무엇인가
·
CS 지식 | 기초 용어,개념
제조업에서 DBA, 미들웨어 엔지니어로 일하면서 가장 크게 느낀 부분은, 한 번 설계하고 배포한 시스템은 그 시스템을 전부 뒤엎지 않는 이상, 변경을 하기가 굉장히 까다롭다는 것이다. 이는 필자가 일하고 있는 회사가 제조업이기 때문이고, 제조업 특성 상 생산 가동 시간이 매출에 가장 큰 영향을 미치며, 이는 곧 IT 조직의 '변화'에 대한 두려움으로 경직을 불러옴으로써 야기된 결과라고 생각한다. 이러한 문제가 비단 제조업에서만 일어날 것 같지는 않다. 각설하고, 더 이상의 레거시 시스템을 찍어내는 행동을 반복하지 않기 위해, 나부터라도 조금씩 최신 IT 트렌드를 공부하고 이러한 기술들을 사내에 안정적으로 도입 및 적용시키며, 기존의 변화가 어려운 낡은 시스템에서 유연한 변화가 가능한 시스템으로 탈바꿈하는..
[Protocol] SSH의 개념, 통신 과정(feat. OpenSSH)
·
CS 지식 | 기초 용어,개념
SSH(시큐어 셸, SecureSHell) 란? : 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킨다. - 위키백과 - Default로 22번 포트를 사용 Sender - Receiver 간 주고 받는 데이터 자체가 암호화되어, 해당 패킷이 스니핑 되더라도 복호화할 수 있는 Key를 획득하지 못하면 해당 정보를 알 수 없게끔 설계되어 있다. SSH Client : SSH 프로토콜을 이용하여 원격 시스템(SSH Server)에 접속 및 명령을 내리도록 하는 주체 SSH Server : SSH Client로부터 SSH 프로토콜을 통해 받은 명령을 수행하는 주체(?). 쉽게 말해, 원격지 서버 ..
[개념] 세션 / 쿠키 / 토큰의 차이점
·
CS 지식 | 기초 용어,개념
'Session(세션)'과 'Cookie(쿠키)'는 왜 등장했을까? HTTP 통신은 *Stateless 프로토콜이기 때문에, 요청(Request) -> 응답(Response)이 종료되면 연결을 끊는 처리방식이다. 그러나 실제 User 입장에서는 로그인과 같은 경우, 웹페이지의 변동사항이 생길때마다 연결이 초기화되어 매번 다시 로그인해야 한다고 하면 매우 불편할 것이다. 이러한 로그인과 같은 어떠한 상태를 유지해야 할 때, 누가 로그인 중인지와 같은 '상태'를 기억하기 위해 쿠키, 세션, 토큰을 사용하게 된다. *Stateless(무상태) 프로토콜 : 어떠한 이전 요청(Request)과도 무관한 각각의 요청을 독립적인 트랜잭션으로 취급하는 통신 프로토콜로, 서버가 복수의 요청 시간대에서의 각각의 통신 파트..
[개념] SSO(Single Sign-On) 이란?
·
CS 지식 | 기초 용어,개념
SSO(Single Sign-On)의 개념 SSO(Single Sign-On; 통합인증)는 말 그대로, 한 번의 인증 과정(로그인)으로 여러 컴퓨터 상의 자원을 이용 가능하게 하는 인증 기능이다. 과거에는 위 그림처럼 각 어플리케이션별로 별도의 로그인 및 인증 과정을 거쳤다면, 최근에는 SSO를 도입함으로써, 하나의 ID로 한 번의 인증을 거쳐 여러 어플리케이션을 사용할 수 있게 되었다. 가장 직관적으로 이해하기 쉬운 예로 구글의 서비스를 들 수 있다. 구글 같은 경우는 구글 아이디 하나로 구글의 여러 서비스(구글 드라이브, Gmail, Google 포토 등)들을 이용할 수 있다. SSO의 장단점 장점 - ID 및 PW의 개별 관리의 위험성 해소 => 중앙집중 관리를 통한 효율적 관리 가능 => 운용비용..