Challenges 과정
- Week #1 | 번역 컨벤션 정립 및 번역할 문서 톺아보기
- Week #2 | 번역 안된 부분 및 번역이 미흡한 부분을 나누어 태스크 부여, 본격적인 번역 작업 시작
- Week #3 | 번역 결과물 리뷰 및 PR, 용어집 인트로
- Week #4 | 용어집 제작
[ 조 편성, 태스크 배분, 번역 작업 ]
- 선택한 관심분야에 따라 조편성이 이루어집니다.
- 본인이 속한 그룹을 확인합니다. 디스코드에 각 그룹 별 채팅룸이 생성될 예정입니다.
- 각 그룹 내 협의 사항에 따라 태스크 목록 을 배분합니다.
- 깃 전략과 이슈 생성 관련 내용은 원저자 답변을 받고 수요일(19일)까지 보충하여 해당 페이지에 보강하겠습니다.
프롬프트 엔지니어링 가이드는 Introduction
, Techniques
, Applications
, Models
, Risks & Misuses
의 다섯 파트로 구성되어 있다. 우리는 이 다섯 파트 중 관심 있는 영역을 중복 투표하여 번역할 문서를 정했다. 번역할 문서를 기준으로 팀이 만들어진 후, Discord에 다섯 개 팀의 채널이 추가되었다. 각 팀원들은 자신의 팀 채널은 읽고 쓸 수 있는 반면 다른 팀 채널은 읽기만 가능함으로써 다른 팀은 어떻게 진행되고 있는지 확인할 수 있다.
@피터는 Applications
문서를 번역하는 팀에 배정되었는데, 이 하위 문서는 다음과 같다.
─ applications # (번역 보안) 매우 짧음. 한 문장. ├─ pal # (번역 보완) 프롬프트가 긴 편. ├─ generating # (번역 보완) 길진 않음. ├─ coding # (신규 번역) 텍스트도 프롬프트도 긴 편. ├─ workplace_casestudy # (번역 보안) 표가 좀 있는데 실제 번역해야 할 양은 길진 않음. └─ pf # (신규 번역) 텍스트 긴 편.
Application
팀은 불참 의사를 밝힌 한 명을 제외하고 참가 인원은 총 3명으로, 다음과 같이 나누었다.
- 신규 번역 |
/applications/coding
&/applications/pf
⇒ 두 문서 모두 긴 편이므로 두 명이 각각 하나씩 맡는다.- 번역 보완 |
/applications
&/applications/pal
&/applications/generating
&/applications/workplace_casestudy
⇒ 문서의 개수는 많지만 기존에 번역이 되어 있는 내용을 원문과 대조하며 보완하는 작업이니 혼자 맡는다.
번역 작업은 이번 프로젝트를 위해 만들어진 협업 계정이 원본 프로젝트를 Fork하여 만든 저장소에서 이루어진다. 이 저장소에는 팀별 브랜치가 생성되어 있고, 해당 브랜치로 checkout 하여 작업한 후 commit 하는 방식이다.
edenjint3927@jellyfish:~/Projects/translate$ git clone https://github.com/11mLLM/Prompt-Engineering-Guide.git 'Prompt-Engineering-Guide'에 복제합니다... remote: Enumerating objects: 3750, done. remote: Counting objects: 100% (1643/1643), done. remote: Compressing objects: 100% (517/517), done. remote: Total 3750 (delta 1260), reused 1403 (delta 1124), pack-reused 2107 오브젝트를 받는 중: 100% (3750/3750), 10.13 MiB | 9.50 MiB/s, 완료. 델타를 알아내는 중: 100% (2105/2105), 완료. edenjint3927@jellyfish:~/Projects/translate$ cd Prompt-Engineering-Guide edenjint3927@jellyfish:~/Projects/translate/Prompt-Engineering-Guide$ git checkout 02_App '02_App' 브랜치가 리모트의 '02_App' 브랜치를 ('origin'에서) 따라가도록 설정되었습니다. 새로 만든 '02_App' 브랜치로 전환합니다
번역 작업 도중 의문이 생기거나 논의해보아야 할 것이 생긴다면 1주차에 초안을 작성하였던 용어 및 컨벤션 정리 페이지와 Discord 채널에서 해결하기로 하고 각자의 작업을 시작하였다.
우리가 번역해야 할 문서는 pages/applications/
디렉토리 안에 들어 있었다. 아직 번역되지 않은 문서도 번역이 필요하다는 내용과 함께 파일이 만들어져 있어 파일을 새로 만들 필요 없이 파일을 열고 작업하면 된다.
edenjint3927@jellyfish:~/Projects/translate/Prompt-Engineering-Guide/pages/applications$ ls | grep "kr" _meta.kr.json coding.kr.mdx generating.kr.mdx pal.kr.mdx pf.kr.mdx workplace_casestudy.kr.mdx
상위 디렉토리에 있는 applications.kr.mdx
파일에 이 장의 시작 부분이 담겨 있으니 짧지만 빼먹지 않도록 해야 한다. 또한 각 디렉토리에 존재하는 _meta.kr.json
파일은 좌측 인덱스에 사용될 텍스트를 담고 있으니 문서 제목 번역 시 여기에도 반영해주어야 한다.
edenjint3927@jellyfish:~/Projects/translate/Prompt-Engineering-Guide/pages/applications$ ls .. | grep "kr" _meta.kr.json about.kr.mdx applications.kr.mdx course.kr.mdx datasets.kr.mdx index.kr.mdx introduction.kr.mdx models.kr.mdx notebooks.kr.mdx papers.kr.mdx readings.kr.mdx risks.kr.mdx services.kr.mdx techniques.kr.mdx tools.kr.mdx
@피터가 번역 보완 을 맡았고 다른 두 분이 신규 번역을 맡았는데, 원문과 비교해서 보다보니 생각보다 수정해야 할 것들이 많이 보였다. 띄어쓰기 이슈와 같은 교정해야 할 부분도 몇 군데 있었고, 번역이 깔끔하지 않아 교열해야 할 부분도 몇 군데 있었다.
다음의 스크립트 같은 경우에는 수정할 게 있어봤자 얼마나 있겠어, 하고 들여다봤는데 꽤나 많더라. Setup model instance
는 모델 인스턴스를 셋업합니다
인데 Setup prompt + question
는 설정 프롬프트 + 질문
???? 저 Setup과 저 Setup은 다른 Setup인가요 ㅋㅋ
원문에는 # The answer formatted with %m/%d/%Y is
가 반복되는데, 번역 초안에는 해당 텍스트의 번역문이 계속 바뀌는 것을 확인할 수 있다. 후반에는 통일되긴 했지만 말이다. 그 와중에 좌측 인덱스 텍스트도 잘못 되었다.
"~형식으로 반환해줘." 라는 표현은 "What is~?" 문장의 문장부호를 바꾸는데, 한국인들이 프롬프트를 작성할 때 "~가 뭐야?" 보다는 "알려줘/해줘" 형식으로 질문을 하는 경향이 있기에 적절하다고 보았다. 다만, "반환"이라는 표현을 쓰기 보다는 그냥 "알려줘" 정도로 하는 게 좋을 것 같아서 수정했다.
잘 보면 원문에 오탈자가 있다.
이건 못 참지(?). 바로 수정 후 PR 날리고 왔다.
처음엔 영어 원문만 수정 후 PR 하였다가, 이왕이면 다른 언어로 번역되어 있는 부분의 오류도 수정해주는 게 좋을 것 같아 그 부분도 추가 commit 하였다.
원문과 번역문을 나란히 두고 비교하여 수정해야 할 부분을 체크하는데, 원문에 없는 개행을 추가하여 줄 번호가 안 맞게 되는 상황도 목격했다. 문장 다듬으면서 이와 같은 부분도 원문에 맞춰 수정해주도록 한다.
일요일 오전 9시, Zoom에서 모여 전체 회의를 한 후 소회의실에서 팀별 회의를 하였다.
전체 회의에서 진행 상황을 나누고, 그 동안 쌓인 용어 및 컨벤션 통일 안건을 논의하고 나니 2시간이 지나 있었다. 컨벤션은 크게 논의할 게 없었는데, 용어 논의가 상당히 오래 걸렸다. 애매한 것도 있고, 맥락에 따라 다르게 봐야 할 듯한 것도 있고, 명확한 한국어 표현을 찾기 어려운 것도 있었다.
"팀별로 branch를 나누어 작업한다"는 것 외에는 GitHub 사용에 대한 명확한 규칙을 정해놓은 게 없었는데, 우리 팀은 팀 내부적으로 방식을 통일하기로 하였다. 각자 본인 저장소로 fork 하여 작업 후, 작업 내역을 협업 계정 저장소의 02_App
branch에 PR하는 방식이다.
다음과 같이 2주차 스프린트 일정이 연장된 바가 있었는데,
이에 따라 오늘 회의 내용 반영하여 PR 후 2주차 스프린트 일정에 남는 시간이 있다면 프로젝트 전체의 번역 리뷰 작업을 하기에 앞서 팀 내부적으로 역량껏 자체 리뷰를 진행하기로 했다.
늘 그랬듯이, 추가적으로 논의해야 할 사항이 있다면 Discord에서 이야기하는 걸로.
우리 팀은 다음과 같이 작업하여 PR을 날렸다.
번역한 내용은 다음과 같이 두 차례에 걸쳐 리뷰한다.
1차 리뷰: 2주차 작업본 PR 코멘트로 리뷰
2차 리뷰: 카테고리 별 취합 후 3주차에 (✨윤문✨) 작업 예정
3주차에 구체적으로 어떻게 윤문 작업을 할지는 추후에 공지해주신다고 한다.
소통이 지체되어 오늘에서야 번역할 문서가 분배된 팀도 있는데, 우리 팀은 원활하게 잘 진행되는 편인 듯하다.
번역 리뷰와 마무리까지 이대로 잘 흘러가길 기대해본다.