콘텐츠로 이동

Orientation - 비디오 대본

AI 지원 번역 - 자세히 알아보기 및 개선 사항 제안

중요 참고사항

이 페이지는 대본만 보여줍니다. 전체 단계별 지침은 과정 자료로 돌아가세요.

환영합니다

안녕하세요, Hello Nextflow에 오신 것을 환영합니다. 제 이름은 Phil Ewels입니다. 저는 Nextflow를 만든 회사인 Seqera에서 오픈 소스 소프트웨어 제품 관리자로 일하고 있습니다.

이 과정은 Nextflow로 워크플로우를 구축하는 실습 중심의 입문 과정입니다. Nextflow를 처음 접하고 자신만의 파이프라인을 개발하고 싶은 분들을 위해 설계되었습니다.

모든 예제는 간단한 텍스트 처리를 다루므로, 특정 도메인 전문 지식 없이도 Nextflow 개념에 집중할 수 있습니다. 명령줄에 대한 기본적인 이해만 있으면 됩니다.

Nextflow의 기본 사항을 다룰 예정입니다. 프로세스 작성, 여러 단계의 워크플로우로 연결, 컨테이너를 사용한 소프트웨어 의존성 관리, 다양한 컴퓨팅 환경을 위한 파이프라인 구성 등을 학습합니다. 과정을 마치면 처음부터 작동하는 파이프라인을 구축하게 됩니다.

이 과정은 파이프라인 개발에 중점을 둡니다. 코드에 깊이 들어가지 않고 기존 파이프라인을 실행하기만 원하신다면, 더 짧은 "Nextflow Run" 과정이 더 적합할 수 있습니다.

여기서 기본 사항을 익힌 후에는, 이러한 개념을 실제 과학적 분석에 적용하는 후속 과정도 있습니다. nf-core 커뮤니티의 파이프라인과 모범 사례를 사용하는 방법을 가르쳐 드립니다.

막히는 부분이 있으면 community.seqera.io를 방문하세요. 활발한 커뮤니티 포럼이 있으며 교육 질문만을 위한 섹션이 있습니다. 언제든지 사용할 수 있지만, 분기별로 교육 주간을 운영하며 도움을 주기 위해 대기하는 사람들이 있습니다. 따라서 교육 주간 중에 학습하고 있다면, 주저하지 말고 도움을 요청하세요.

Seqera AI에게 도움을 요청할 수도 있습니다. Nextflow 코드를 설명하고 디버깅을 도와주는 데 매우 유용합니다.

대규모로 Nextflow를 실행할 준비가 되면, Seqera Platform이 최선의 선택입니다. 벤더 종속 없이 여러분의 인프라에서 실행되며, 파이프라인 시작부터 실시간 모니터링, 대화형 분석 환경까지 모든 것을 제공합니다. 하지만 지금은 기본 사항에만 집중하겠습니다.

자, 시작하겠습니다.

training.nextflow.io

좋습니다. 먼저 알아야 할 것은 training.nextflow.io의 모든 교육 과정이 매우 상호작용적이라는 점입니다. 교육 자료와 제 지침을 따라가며 함께 교육 자료를 살펴보는 것이 목적입니다. 두 가지가 필요합니다. 노트북과 이 웹사이트를 열어두는 것입니다. 그게 전부입니다.

이것은 제가 녹화할 당시의 홈페이지 모습입니다. 배경 정보와 우리가 제공하는 다양한 과정의 개요를 볼 수 있으며, 이 목록은 계속 늘어나고 있습니다.

Nextflow for newcomers가 우리가 있는 곳입니다. 여기에는 두 개의 과정이 있습니다. 다른 과정인 Nextflow Run과 우리가 관심 있는 Hello Nextflow입니다.

사이드바에서도 모든 다른 과정을 볼 수 있습니다. Hello Nextflow로 이동하면 함께 학습할 모든 챕터를 볼 수 있습니다.

여기서 주목해야 할 몇 가지 중요한 사항이 있습니다. 첫째, 교육 자료는 버전이 관리됩니다. 여기 위에 3.0 latest라고 표시되어 있는데, 제가 녹화할 당시의 최신 안정 버전입니다. 시간이 지나면서 이는 변경될 것입니다. 새로운 과정을 출시하고 자료를 지속적으로 업데이트합니다. 따라서 3.1이나 3.2여도 너무 걱정하지 마세요. 4.0이라면 아마도 새로운 비디오가 있을 것이고, 중요한 업데이트가 있을 것이므로 그것을 찾아가는 것이 좋습니다.

상단의 또 다른 드롭다운은 언어 선택입니다. 이것은 버전 3.0에 새로 추가된 기능입니다. 이전에 사람이 직접 번역했던 자료를 LLM에 전달하여 LLM 번역을 사용한 교육 자료의 다양한 번역을 유지하기 위한 완전히 새로운 인프라를 구축했습니다.

이제 여기에 이러한 훌륭한 번역이 모두 있습니다. 한국어로 듣고 싶다면 전체 웹사이트를 한국어로 로드할 수 있습니다. 힌디어, 독일어 등 다른 모든 언어도 마찬가지입니다. 저는 영어로 진행할 것입니다. 그것이 우리가 자료를 작성하는 주요 언어입니다.

라이트 모드를 선호한다면 상단의 이 버튼으로 다크 모드 대신 라이트 모드로 웹사이트를 볼 수 있습니다.

그리고 우리가 보는 모든 것은 nextflow-io/training이라는 오픈 소스 GitHub 저장소에 있습니다. 이 버튼을 클릭하면 GitHub 저장소로 이동합니다. 잠시 후에 다시 살펴보겠습니다.

GitHub Codespaces 설정하기

좋습니다, 이제 브라우저 탭에 이것을 열어두었습니다. Hello Nextflow로 이동해서 클릭해봅시다. 소개 페이지에서 몇 가지 요구사항, 개요, 그리고 대략적으로 다룰 내용의 학습 계획을 볼 수 있으며, 그런 다음 시작하기로 들어갑니다.

이 상호작용 튜토리얼을 수행하는 다양한 방법이 있습니다. 원한다면 자신의 컴퓨터에서 Nextflow를 설치하여 로컬에서 수행할 수 있습니다. Environment Options를 클릭하면 로컬 Devcontainers를 사용하거나 수동 설치로 모든 소프트웨어를 로컬에 설치하는 방법에 대한 자세한 내용을 볼 수 있습니다.

Seqera Studios에서 잘 작동하도록 작업 중이므로 그것도 또 다른 옵션입니다. 하지만 지금 가장 일반적인 방법은 GitHub Codespaces를 사용하는 것입니다.

Codespaces는 GitHub가 운영하는 원격 서버에 샌드박스 환경을 설정합니다. 일정량의 사용량은 무료이며, 일반적으로 교육에는 충분합니다. VS Code 인스턴스, 즉 저장소의 모든 파일에 액세스하고 Nextflow를 실행할 수 있는 IDE를 설정해줍니다. 우리는 Codespaces를 미리 구성했습니다. 따라서 필요한 모든 것이 있습니다.

이것의 장점은 Codespace를 설정하는 데 클릭 한 번이면 된다는 것입니다. 모든 사람에게 동일하며, 필수 구성 요소가 이미 설치되어 있으므로 빠르고 편리합니다.

따라서 먼저 할 일은 "Getting Started"로 이동하는 것입니다. Open in Codespaces라고 표시된 이 버튼을 찾으세요. 새 탭에서 열기 위해 command + click하면 GitHub로 이동합니다.

이것이 보이는 모습입니다. 모든 옵션이 설정되어 있는 것을 볼 수 있습니다. 원한다면 옵션 변경을 클릭할 수 있습니다. 여기서 할 수 있는 몇 가지가 있습니다. 예를 들어 메모리 부족으로 충돌하는 경우 더 큰 인스턴스 머신을 선택할 수 있습니다. 또는 특정 버전의 교육 자료를 설정할 수 있습니다. 하지만 일반적으로 우리가 설정한 대로 진행할 수 있으며, 이 경우 3.0 릴리스를 사용하고 있는 것을 볼 수 있습니다.

새 Codespace 생성을 클릭하겠습니다. 그러면 진입합니다.

또한 여기에 재개할 Codespace가 없다고 표시됩니다. 이전에 Codespace를 만든 적이 있다면 교육 자료에서 해당 버튼을 다시 클릭하면 같은 페이지로 이동하고 이미 실행 중인 모든 Codespace가 나열됩니다. 그러면 바로 다시 들어가서 중단한 곳부터 계속할 수 있습니다. 노트북을 닫아도 문제없습니다.

비활동 상태가 몇 분 지속되면 자동으로 종료되지만, 문제없습니다. 다시 시작할 수 있습니다.

새 Codespace를 시작하면 이 페이지에서 한동안 로딩됩니다. 지금이 잠깐 쉬기 좋은 시간입니다. 화장실에 가는 것을 잊었거나 시작하기 전에 차 한 잔을 원할 수 있습니다. 로딩되는 동안 지금 가세요. 한동안 돌아갈 것입니다.

로딩되는 동안 잠깐, github.com/codespaces로 이동하여 현재 실행 중인 모든 Codespace를 볼 수 있는 개요 페이지를 보여드리겠습니다.

여기 nextflow-io/training용 Codespace가 하나 있습니다. 아직 아무것도 하지 않았기 때문에 변경 사항이 없습니다. 사용 중인 리소스의 양을 볼 수 있으며, 현재 설정 중인 것을 볼 수 있습니다. 여기로 가서 이 작은 드롭다운을 클릭하고 삭제를 클릭할 수 있습니다. 실수로 여러 Codespace를 설정했고 일부를 사용하지 않는 경우 오래된 것을 삭제하고 정리할 수 있습니다.

마지막으로, 이것에 들어가는 또 다른 방법이 있습니다. GitHub 저장소로 가면 됩니다. 이것은 모든 GitHub 저장소에 적용됩니다. code를 클릭하세요. 저장소를 로컬로 클론하는 명령이 있습니다. 그리고 Codespaces라는 탭이 있습니다. 다시 새로운 것을 만들 수 있고, 이미 실행 중인 것을 볼 수 있습니다.

따라서 Codespace를 어떻게 만들었는지 잊어버려도 이 방법으로 항상 다시 접근할 수 있습니다.

VS Code 인터페이스

좋습니다, 빌드가 완료되었고 이제 GitHub Codespaces가 로딩되기 시작했습니다. 항상 그렇게 오래 걸리지는 않으니 걱정하지 마세요. 처음 Codespace를 만들 때만 그렇습니다. 이미 존재하는 것으로 다시 들어가면 훨씬 빠릅니다.

인터페이스를 제공하기 시작했지만 아직 완전히 완료되지 않았다고 해도 너무 조급해하지 마세요.

하지만 최종 설정이 완료되기를 기다리는 동안, VS Code에 익숙하지 않은 경우를 대비해 인터페이스를 안내하겠습니다.

먼저, AI 관련 채팅 사이드바가 있는데 필요하지 않습니다. 그래서 닫고 공간을 확보하겠습니다.

왼쪽에는 Git 저장소의 모든 파일을 보여주는 파일 탐색기가 있으며, 이것이 우리가 만든 작업 공간입니다. 참고로, 이것들은 로컬 파일이 아닙니다. 이것은 모두 우리가 작업하고 있는 원격 서버에 있습니다. 로컬 파일을 드래그 앤 드롭할 수 있지만, 대부분 오늘은 그것에 대해 생각하지 않을 것입니다. 순전히 원격으로 작업할 것입니다.

이 사이드바에는 다른 도구들도 있습니다. 예를 들어 검색입니다. 저장소의 모든 파일을 한 번에 검색할 수 있습니다. 교육 저장소에서 개발 작업을 한다면 Git을 사용한 소스 제어 통합과 디버깅 및 기타 작업을 할 수 있습니다.

다른 것들은, 여기 위쪽에 메인 코드 편집 창이 있는데, 방금 readme의 미리보기를 로드했습니다. 이것은 교육 자료용입니다. 이 경우 markdown을 보고 있지만, 일반적으로 이것은 코드 편집기가 됩니다.

그리고 그 아래에는 모든 명령을 실행하고 Nextflow와 직접 상호작용할 터미널이 있습니다.

Codespace의 모든 것이 사전 설치되어 있으므로 Nextflow 명령이 이미 있는 등입니다.

좋습니다. 여기까지 오면 거의 완료되어야 합니다. 이제 Nextflow 언어 서버를 다운로드했고 Nextflow 확장을 포함하여 VS Code에 일부 확장을 설정했으며, 이것이 유용할 것입니다. 그래서 닫을 수 있고 README.md도 닫을 수 있습니다.

이제 왼쪽에 더 많은 것이 보입니다. 여기서 좀 확대했는데, 축소하면 버튼 중 하나가 Nextflow 아이콘과 함께 Nextflow라고 표시되어 있는 것을 볼 수 있습니다. 여기에는 프로젝트를 탐색하는 등의 유용한 기능이 있으며, 나중에 다시 살펴보겠습니다.

좋습니다. 이러한 패널을 잃어버린 경우, 오른쪽 상단의 이 버튼들이 정말 유용하며 이것들은 단순히 표시하고 숨깁니다. 그래서 저것은 탐색기를 표시하고 숨깁니다. 하단의 터미널을 표시하고 숨깁니다. 등등.

제가 많이 확대했기 때문에 화면의 모든 텍스트를 볼 수 있도록 도와드리기 위해 이것들을 자주 사용할 것입니다. 그래서 터미널을 전체 화면으로 만들었다가 코드를 볼 때 숨기는 것이 유용합니다. 하지만 대부분의 경우 이 모든 것을 동시에 열어둘 수 있습니다.

좋습니다, 또 뭘 볼까요? 별로 없습니다. 제가 말했듯이 Nextflow가 설치되어 있습니다. 그래서 "nextflow -version"을 입력하면 설치된 버전이 나타나야 합니다.

여기에는 다른 것들도 설치되어 있습니다. 각 챕터 끝에는 예를 들어 웹사이트에 퀴즈 질문 세트가 있습니다. 원한다면 quiz를 입력하여 터미널에서도 수행할 수 있습니다.

제가 사용할 몇 가지 다른 키보드 단축키가 있습니다. 혹시 궁금하실까 봐 말씀드립니다. 예를 들어, 방금 Mac에서 cmd+K를 눌렀는데 터미널을 지워서 이전 출력을 모두 제거했습니다. 그래서 깔끔하게 유지하는 데 좋습니다. 제가 하는 것을 보시면 그렇게 하는 것입니다.

또한 터미널을 처음 사용하시는 경우, tab을 사용하여 자동 완성할 수 있다는 것을 기억하세요. 제가 경로를 자동 완성하기 위해 많이 사용할 것입니다.

왼쪽에 Hello Nextflow라는 폴더가 있는 것을 볼 수 있습니다. 이것이 우리가 학습할 내용입니다. "ls"를 수행하여 파일을 나열하면 "hel"을 입력하고 tab을 누르면 자동 완성됩니다. 이것은 경로를 완성하는 매우 빠른 방법입니다.

Hello Nextflow 폴더만 열기

좋습니다. 훌륭합니다. 하지만 이 저장소에는 많은 것들이 있습니다.

웹사이트를 생성하기 위한 모든 파일이 있고, 여기에는 여러 과정이 있으며, 이 루트에서 수행하고 "Hello Nextflow" 폴더를 클릭할 수 있습니다. 하지만 실제로 이것에만 집중하는 것이 좋습니다.

여기를 클릭하고 프로젝트 디렉토리를 설정하는 등으로 작업 공간으로 설정할 수 있습니다. 하지만 가장 쉬운 방법은 VS Code를 시작하는 CLI 명령인 code를 입력한 다음 "hello-nextflow"를 입력하는 것입니다.

새 브라우저 탭이 열리고 이전 탭을 닫을 수 있습니다. 정확히 같아 보입니다. 하지만 이제 이 하위 디렉토리에 있고 다른 모든 파일은 보이지 않으며, 더 깔끔한 설정을 갖게 됩니다.

현재 작업 디렉토리도 이제 Hello Nextflow 폴더 내에 있는 것을 볼 수 있습니다. 깔끔합니다. 잘못된 위치에 있을까 걱정할 필요가 없습니다. 좋습니다.

2026년을 위한 새로운 Nextflow 구문

이 시점에서 제가 언급해야 할 특별한 사항이 하나 있습니다. 지금, 2026년 초에 Nextflow에 다양한 기능을 도입하기 시작했으며, 큰 새 기능 중 하나는 Nextflow 내부의 새로운 언어 구문 분석기입니다.

기본적으로 Nextflow 파일을 읽고 런타임을 위해 이해하는 엔진입니다. 구문에 몇 가지 변경 사항이 있으며, 올바른 구문 분석기가 활성화된 Nextflow를 사용하는 것이 정말 중요합니다.

이를 위해 두 가지가 필요합니다. 최신 버전의 Nextflow가 필요하고 활성화되어 있는지 확인해야 합니다.

"nextflow -version"을 다시 실행하면 Codespaces가 25.10.2로 실행되고 있으며 25.10이 이것을 사용할 수 있는 최소 버전임을 알 수 있습니다.

26.04를 사용하는 경우, 저에게는 아직 출시되지 않았지만 곧 나올 것입니다. 그러면 기본적으로 새 구문 분석기를 실행하게 되며 다른 작업을 할 필요가 없습니다.

하지만 25.10을 실행하는 경우, strict syntax parser 또는 v2 syntax parser라고 불리는 것을 활성화해야 합니다.

이것은 환경 변수로 수행됩니다. Codespaces에는 이미 설정되어 있으므로 아무것도 할 필요가 없습니다. 하지만 로컬에서 실행하는 경우 이것을 설정해야 하며, "echo $NXF_SYNTAX_PARSER"를 수행하여 확인할 수 있으며 v2로 설정되어야 합니다.

따라서 로컬에서 실행하는 경우 "export NXF_SYNTAX_PARSER=v2"만 하면 됩니다. 간단합니다. 하지만 반드시 기억하세요. 그렇지 않으면 진행하면서 이상한 불일치와 오류가 발생할 것입니다.

Nextflow 버전과 구문 분석기에 대한 이러한 내용이 전혀 확실하지 않은 경우, 첫째, Codespaces에 있다면 걱정할 필요가 없다는 것을 기억하세요. 모든 것이 제대로 설정되어 있어야 합니다. 하지만 둘째, Nextflow 교육 자료로 가서 버전 요구사항에 대해 이야기하는 부분으로 가면 탐색 버전에 대한 도움말 페이지로 이동하는 링크가 있으며, 이것은 모든 것을 자세히 설명합니다.

시간이 있다면 이것을 읽어볼 가치가 있습니다. Nextflow를 사용하기 시작할 때 들을 수 있는 다양한 용어들을 명확히 하는 데 도움이 되기 때문입니다. DSL1, DSL2, syntax parser one, syntax parser two 등과 같은 것들입니다. 따라서 한번 살펴보는 것이 좋습니다. 제가 방금 말한 내용의 일부를 반복합니다.

이전에 Nextflow 코드를 작성했고 복습을 위해 돌아온 경우에도 정말 유용합니다. 변경된 사항 중 일부를 알려주고 Nextflow 코드를 업데이트하는 방법을 알려주는 Nextflow 문서의 일부로 연결해줍니다.

과정 파일

좋습니다. 마지막으로 익숙해져야 할 것은 이 디렉토리에 있는 파일들을 보는 것입니다. 사이드바에서 볼 수도 있고 종종 교육 자료에서 tree 명령을 사용합니다. -L은 살펴볼 레벨 수입니다. 2라고 하면, 전체 화면으로 만들면 사이드바에서 보는 것과 정확히 같지만 점으로 시작하는 숨겨진 파일은 제외됩니다.

*.nf 파일은 Nextflow를 나타냅니다. 따라서 이것들은 Nextflow 스크립트 파일이며, 교육 자료의 각 챕터에 대한 시작 파일이 있으며, 열어서 탐색하고 편집할 것입니다.

진행하면서 이러한 파일을 변경할 것이므로 각 챕터가 끝날 때 파일은 다음 챕터의 시작 부분과 거의 동일하게 보여야 합니다. 하지만 이러한 다른 파일을 제공하므로 항상 새로 시작할 수 있고 구문을 망치는 것에 대해 너무 걱정할 필요가 없습니다.

확실히 작동해야 하는 것과 비교해야 하는 경우 solutions 폴더를 확인할 수 있으며, 이것은 각 챕터의 최종 상태와 같으므로 작성한 것과 비교할 수 있습니다.

data 디렉토리가 있습니다. 과정의 일부에서 예제 입력 데이터로 사용할 greetings.csv 파일이 있으며, 나중에 과정에서 설명할 config 파일과 일부 매개변수 등이 있습니다.

마무리

좋습니다, 이제 모든 것이 실행되고 있기를 바랍니다. 여러분의 화면이 제 것과 같아 보이고 모든 것에 접근하는 방법과 모든 다른 파일이 무엇인지 이해하셨기를 바랍니다.

Getting Started 페이지 하단으로 스크롤하면 제가 무엇을 하고 있는지 이해했다는 작은 체크박스가 있어야 합니다. 환경이 실행 중이고 작업 디렉토리를 "Hello Nextflow" 폴더로 제대로 설정했습니다.

모두 체크하고 녹색으로 보인다면 다음 비디오와 다음 챕터인 Part 1. Hello World로 계속 진행할 수 있습니다. 곧 뵙겠습니다.