일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- DAG
- pipeline
- SecretsManager
- Scheduling
- sqs
- Task
- S3
- TaskFlow
- lambda
- AWS
- mysql
- testing
- dynamic task mapping
- credentials
- Concept
- airflow
- kinesis
- Data Firehose
- Operator
- celery
- authoring
- dagrun
- Git
- executor
- XCOM
- github actions
- boto3
- RDS
- git book
- ci/cd
- Today
- Total
목록전체 글 (50)
CS

LLM, AI와 함께 RAG라는 용어가 보여서 간단하게 알아보았습니다. RAG (검색-증강 생성)는 Chat GPT에 쓰여 유명한 LLM과 함께 쓰이는 것이며, LLM의 단점을 줄이기 위한 방법이라고 합니다.Chat GPT 같은 생성형 AI를 써보면 아예 틀린 내용 또는 대충 관련 단어를 써 지어낸 내용을 반환하는 경우가 꽤 있는데, 이는 AI에게 주제와 직접 관련된 정보가 없기 때문일 것입니다. 그런데 사람을 대할 때와 마찬가지로, AI 역시 모를 때는 그냥 모른다고 하는 게 오히려 신뢰를 주는 거죠. 그런데 기존 LLM은 그런 행동이 잘 안 되나 봅니다. RAG는 이렇게 관련된 정보가 없거나 그로 인해 잘못된 정보를 반환하는 경우를 줄이기 위해 LLM에 더하여 사용하는 방식입니다. RAG는 사용..

Rebase란 rebase는 merge와 마찬가지로 브랜치를 합치는 방법입니다. 위 상황에서, git checkout master git merge experiment master에서 experiment를 merge하면 위처럼 되는 반면, git checkout experiment git rebase master # 브랜치 변경 없이 수행 git rebase master experiment experiment에서 master를 rebase하면 위처럼 됩니다. merge는 두 브랜치를 공통 조상을 사용하여 합쳐 새로운 커밋을 생성합니다. rebase는 현재 브랜치와 공통 조상의 차이점(diff)을 대상 브랜치에 적용하여 새로운 커밋(들)을 생성합니다. 두 작업이 완료된 후 생성되는 커밋은 동일하지만, 그림..
리모트 브랜치 리모트 브랜치에 데이터 전송 리모트 브랜치에서 데이터 받기 로컬 브랜치 -> 리모트 브랜치 추적 리모트 브랜치 제거 리모트 브랜치에 대하여 clone이나 fetch로 리모트 저장소의 데이터를 가져오면, 해당 리모트 저장소에 있는 브랜치를 추적하는(트래킹) 브랜치를 만듭니다. 이를 리모트 트래킹 브랜치라고 합니다. 이는 /로 명명됩니다. 리모트 트래킹 브랜치는 fetch 등으로 리모트 저장소와 연결될 때마다 갱신되나 엄연히 로컬에 존재하므로, 리모트 저장소가 변경된다고 하더라도 즉시 리모트 트래킹 브랜치가 변경되는 건 아닙니다. 또한 리모트 트래킹 브랜치는 직접 제어할 수 없습니다. 리모트 트래킹 브랜치는 실제 리모트 브랜치의 대리로서, 실제 리모트 저장소의 브랜치 → 리모트 트래킹 브랜치 ..

브랜치에 대하여 브랜치 생성 브랜치 변경 브랜치 Merge Merge 충돌 브랜치 정보 확인 브랜치 제거 브랜치에 대하여 브랜치는 커밋 사이를 이동할 수 있도록 만든 포인터라고 볼 수 있습니다. 위 그림에서 'v1.0' 브랜치와 'master' 브랜치 모두 f30ab 커밋을 가리키고 있습니다. HEAD는 현재 보고 있는 브랜치를 가리키는 것으로, 그림에서 HEAD는 master 브랜치를 가리키고 있으므로 현재 master 브랜치에서 작업 중인 상황임을 알 수 있습니다. 동일하게 포인터 역할인 태그와 비교하면, 브랜치는 커밋을 할 경우 이를 따라간다는 차이점이 있습니다. 즉 브랜치는 그 이름처럼 가지를 트는 것과 비슷합니다. 프로젝트의 여러 부분을 작업 공간을 분리하여 작업하거나, 여러 사람이 서로에게 직..
Git의 태그는 특정 커밋에 꼬리표를 다는 것입니다. 보통 버전을 표시하는 데(v1.0 같이) 쓰입니다. 태그를 달면 커밋을 입력할 때 체크섬 대신 태그를 사용할 수 있습니다. 태그 목록 출력하기: tag git tag 현재 존재하는 태그를 알파벳 순서로 출력합니다. 와일드카드를 사용하여 태그를 검색할 수 있는데, 이때는 -l(또는 --list)옵션을 사용해야 합니다. # "v1.5"로 시작하는 태그 목록 출력 git tag -l "v1.5*" 태그 종류 Git의 태그는 Annotated와 Lightweighted 두 가지로 구분됩니다. Annotated: 말 그대로 주석을 함께 달 수 있는 태그입니다. 태그 작성자 정보, 태그 작성 날짜, 태그 메시지를 기록할 수 있습니다. Annotated 태그를 생..
리모트 저장소는 기본적으로 로컬이 아닌 외부에 있는(원격) 저장소를 말합니다. 따라서 이 명령어들은 기본적으로 인터넷과 연결된 환경에서만 가능합니다. 여러 명이 접근할 수 있는 리모트 저장소를 어딘가에 두고, 이를 clone하여 로컬에서 작업을 한 후, 완성된 것은 다시 리모트 저장소로 보내고(push), 작업에 필요한 것은 리모트 저장소에서 가져오는(pull)하는 게 Git으로 협업을 하는 방식입니다. 이러한 리모트 저장소를 사용하는 방법에 대해 알아보겠습니다. remote: 리모트 저장소 목록 remote add: 리모트 저장소 추가 remote rename: 리모트 저장소 이름 변경 remote remove: 리모트 저장소 등록 제거 fetch: 리모트 저장소에서 데이터 가져오기 pull: 리모트 ..
이전 커밋에 덧붙이기 및 파일 변경 되돌리기 이전 커밋에 다른 변경을 추가하거나, add를 취소하거나, 파일 수정을 되돌릴 수 있습니다. 다만 이런 방법을 사용하면 되돌릴 수 없으며 기록에 남지 않으므로 필요할 때만 쓰는 게 좋을 것 같습니다. 이전 커밋에 덧붙이기: amend git commit --amend 커밋을 했는데, 새로운 커밋 없이 파일을 수정하거나 추가하고 싶은 경우, 추가 작업을 마친 뒤 모두 stage한 후 amend 옵션을 추가하여 커밋할 수 있습니다. 이는 직전에 한 커밋을 취소한 후 명령어를 실행하는 시점에서 커밋을 다시 합니다. 따라서 직전 커밋은 일어나지 않은 게 됩니다. 직전 커밋을 없었던 것으로 만드므로 다른 사람이 한 커밋에 사용하지 않는 게 좋습니다. ○ -m '': 다..
커밋 기록 확인하기 git log 명령을 실행하면 해당 저장소의 커밋 기록을 가장 최근의 것부터 출력합니다. 기본적으로 커밋 체크섬, 저자 정보(이름과 이메일), 작성 날짜, 커밋 메시지를 보여줍니다. 옵션 ○ -p 또는 --patch: 각 커밋마다 바뀐 점(diff)도 출력합니다. 어떤 작업을 하였는지 한 눈에 볼 수 있습니다. ○ -: 해당 개수만큼만 기록을 보여줍니다. 2를 입력하면 최신 것과 그 다음 커밋만 출력합니다. ○ --stat: 각 커밋마다 통계(요약) 정보도 출력합니다. 수정한 파일 이름과 각 파일별 수정한 줄 수, 커밋별 전체 수정 파일 개수와 수정 줄 수를 보여줍니다. ○ --pretty=: 출력 형식을 정합니다. oneline: 한 줄로 표현합니다. 체크섬과 커밋 메시지만 포함합니..