[2023 오픈소스 컨트리뷰션 아카데미] Challenges 2주차

Pt J·2023년 7월 23일
2
post-thumbnail

Challenges 과정

  • Week #1 | 번역 컨벤션 정립 및 번역할 문서 톺아보기
  •  Week #2 | 번역 안된 부분 및 번역이 미흡한 부분을 나누어 태스크 부여, 본격적인 번역 작업 시작 
  • Week #3 | 번역 결과물 리뷰 및 PR, 용어집 인트로
  • Week #4 | 용어집 제작

2주차 목표

[ 조 편성, 태스크 배분, 번역 작업 ]

  • 선택한 관심분야에 따라 조편성이 이루어집니다.
  1. 본인이 속한 그룹을 확인합니다. 디스코드에 각 그룹 별 채팅룸이 생성될 예정입니다.
  2. 각 그룹 내 협의 사항에 따라 태스크 목록 을 배분합니다.
  3. 깃 전략과 이슈 생성 관련 내용은 원저자 답변을 받고 수요일(19일)까지 보충하여 해당 페이지에 보강하겠습니다.

2주차 활동

프롬프트 엔지니어링 가이드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에서 이야기하는 걸로.

3주차 계획

우리 팀은 다음과 같이 작업하여 PR을 날렸다.

번역한 내용은 다음과 같이 두 차례에 걸쳐 리뷰한다.

1차 리뷰: 2주차 작업본 PR 코멘트로 리뷰
2차 리뷰: 카테고리 별 취합 후 3주차에 (✨윤문✨) 작업 예정

3주차에 구체적으로 어떻게 윤문 작업을 할지는 추후에 공지해주신다고 한다.
소통이 지체되어 오늘에서야 번역할 문서가 분배된 팀도 있는데, 우리 팀은 원활하게 잘 진행되는 편인 듯하다.
번역 리뷰와 마무리까지 이대로 잘 흘러가길 기대해본다.

profile
Peter J Online Space - since July 2020

0개의 댓글