본문으로 이동

프로젝트 주피터

위키백과, 우리 모두의 백과사전.
프로젝트 주피터
약칭주피터
결성2014년 7월(12년 전)(2014-07)
유형비영리 단체
목적대화형 데이터 과학 및 과학적 컴퓨팅
활동 지역전 세계
공식 언어영어
웹사이트jupyter.org

프로젝트 주피터(영어: Project Jupyter, Listeni/ˈdʒuːpɪtər/)는 여러 프로그래밍 언어에 걸쳐 대화형 컴퓨팅을 위한 오픈 소스 소프트웨어, 개방형 표준 및 서비스를 개발하기 위한 프로젝트이다.

이 프로젝트는 2014년 IPython에서 분사되었으며, 창립 멤버 7인은 페르난도 페레스, 브라이언 그레인저, 다미안 아빌라, 카일 켈리, 마티아스 부소니에, 민 레이건-켈리, 토마스 클루이버이다.[1] 프로젝트 주피터라는 이름은 주피터가 지원하는 핵심 프로그래밍 언어 3가지인 줄리아, 파이썬, R을 지칭한다. 그 이름과 로고는 갈릴레오의 목성의 위성 발견에 대한 오마주이며, 이는 갈릴레오의 기록으로 전해지는 노트북에 문서화되어 있다.

주피터는 주피터 재단으로부터 재정적 후원을 받는다.[2]

역사

[편집]
갈릴레오 갈릴레이의 목성(⊛)과 4개의 위성(✱) 관측 기록으로 (잘못) 알려진 원고이며, 주피터 로고에 영감을 주었다

IPython용 노트북의 첫 번째 버전은 2011년 페르난도 페레스, 브라이언 그레인저, 민 레이건-켈리 등이 포함된 팀에 의해 출시되었다.[3] 2014년, 페레스는 IPython에서 분사된 프로젝트 주피터를 발표하였다.[4] IPython은 파이썬 명령줄 인터페이스 및 주피터용 커널로서 계속 존재하며, 노트북 인터페이스와 기타 언어 중립적인 IPython의 부분들은 주피터라는 이름 아래로 이동했다.[5][6] 주피터는 줄리아, R, 하스켈, 루비, 그리고 (IPython 커널을 통한) 파이썬을 포함한 수십 개의 언어에서 실행 환경("커널"이라 불림)을 지원한다.

2015년에는 약 20만 개의 주피터 노트북이 깃허브에 공유되어 있었다. 2018년에는 약 250만 개로 늘어났다.[7] 2021년 1월 기준으로 약 1,000만 개에 달하는 노트북이 공유되었으며, 그중에는 중력파 관측 관련 노트북[8]과 2019년 초대질량 블랙홀 발견 관련 노트북도 포함되어 있다.[9]

주요 클라우드 컴퓨팅 제공업체들은 클라우드 사용자를 위한 프런트엔드 인터페이스로 주피터 노트북이나 파생 도구들을 채택하고 있다. 예시로는 아마존 세이지메이커 노트북,[10] 구글의 Colab,[11][12] 및 마이크로소프트의 Azure 노트북이 있다.[13]

비주얼 스튜디오 코드는 주피터 노트북의 로컬 개발을 지원한다. 2022년 7월 기준으로, VS 코드용 주피터 확장은 4,000만 회 이상 다운로드되었으며, 이는 VS 코드 마켓플레이스에서 두 번째로 인기 있는 확장 프로그램이다.[14]

프로젝트 주피터 운영 위원회 멤버들인 페르난도 페레스, 브라이언 E. 그레인저, 민 레이건-켈리, 폴 이바노프, 토마스 클루이버, 제이슨 그라우트, 마티아스 부소니에, 다미안 아빌라, 스티븐 실베스터, 조나단 프레데릭, 카일 켈리, 제시카 함릭, 캐롤 윌링, 실뱅 콜레, 피터 파렌테는 2017년 ACM 소프트웨어 시스템 상을 수상했다. 이 상은 매년 "개념에 대한 기여, 상업적 수용 또는 두 가지 모두에 반영된 지속적인 영향력을 가진 소프트웨어 시스템을 개발한" 사람이나 단체에 수여된다.[15]

디 애틀랜틱은 2018년에 "과학 논문은 구식이다(The Scientific Paper Is Obsolete)"라는 제목의 기사를 게재하며, 과학 출판의 미래에서 주피터 노트북과 매스매티카 노트북의 역할을 논의했다.[16] 이에 대해 경제학자 폴 로머는 블로그 게시물을 통해 연구를 위해 매스매티카와 주피터를 사용했던 자신의 경험을 성찰하며, 주피터가 "시어도어 그레이가 매스매티카 노트북을 설계할 때 의도했던 것을 더 잘 전달한다"라고 결론지었다.[17]

2021년, 네이처는 주피터를 과학을 변화시킨 10대 컴퓨팅 프로젝트 중 하나로 선정했다.[9]

주피터 노트북

[편집]
Jupyter Notebook
개발자프로젝트 주피터
안정화 버전
7.6.5[18] 위키데이터에서 편집하기 / 2026년 11월 6일(5일 전)(2026년 11월 6일)
저장소github.com/jupyter/notebook
라이선스3-clause BSD license[19]
웹사이트jupyter.org

주피터 노트북은 구어체로 코드와 텍스트를 편집하기 위한 사용자 대면 애플리케이션이나, 여러 구현체 간에 상호 운용이 가능한 기본 파일 형식을 모두 지칭할 수 있다.

애플리케이션

[편집]

주피터 노트북(이전 명칭: IPython 노트북)은 노트북 인터페이스 문서를 만들기 위한 웹 기반의 대화형 컴퓨팅 환경이다. 주피터 노트북은 IPython, ZeroMQ, 토네이도, JQuery, 부트스트랩, 매스잭스를 포함한 여러 오픈 소스 소프트웨어 라이브러리를 사용하여 구축되었다. 주피터 노트북 애플리케이션은 코드, 텍스트(깃허브 스타일의 마크다운 사용), 수학 공식, 플롯 및 리치 미디어를 포함할 수 있는 입력/출력 셀의 순서 목록을 담고 있는 브라우저 기반의 REPL이다.

주피터 노트북은 메이플, 매스매티카, SageMath와 같은 다른 프로그램의 노트북 인터페이스와 유사하며, 1980년대 매스매티카에서 시작된 컴퓨팅 인터페이스 스타일이다. 주피터에 대한 관심은 2018년 초 매스매티카 노트북 인터페이스의 인기를 앞질렀다.[16]

주피터랩(JupyterLab)은 프로젝트 주피터의 더 새로운 사용자 인터페이스로, 클래식 노트북 UI보다 유연한 사용자 인터페이스와 더 많은 기능을 제공한다. 첫 번째 안정 버전은 2018년 2월 20일에 발표되었다.[20][21] 2015년, 앨프리드 P. 슬론 재단, 고든 앤 베티 무어 재단, 레오나 M. 및 해리 B. 헴슬리 자선 신탁으로부터 받은 총 600만 달러의 공동 보조금은 주피터 핵심 도구의 기능을 확장하고 주피터랩을 만드는 연구의 자금이 되었다.[22]

깃허브는 2022년 11월, 자사의 온라인 코딩 플랫폼인 코드스페이스(Codespace)에서 주피터랩을 이용할 수 있게 될 것이라고 발표했다.[23]

2023년 8월, 주피터 확장 프로그램인 주피터 AI가 출시되었다. 이 확장은 생성형 인공지능을 주피터 노트북에 통합하여 사용자가 코드를 설명 및 생성하고, 오류를 수정하고, 내용을 요약하며, 로컬 파일에 대해 질문하고, 자연어 프롬프트를 기반으로 전체 노트북을 생성할 수 있게 한다.[24]

주피터허브(JupyterHub)는 주피터 노트북을 위한 다중 사용자 서버이다. 이는 여러 단일 주피터 노트북 서버를 생성, 관리 및 프록시하여 다수의 사용자를 지원하도록 설계되었다.[25]

문서

[편집]

주피터 노트북 문서는 버전별 스키마를 따르는 JSON 파일이며, 보통 ".ipynb" 확장자로 끝난다. 주피터 노트북의 주요 부분은 메타데이터, 노트북 형식, 셀 목록이다. 메타데이터는 노트북을 설정하고 표시하기 위한 정의가 담긴 데이터 사전이다. 노트북 형식은 소프트웨어의 버전 번호이다. 셀 목록은 마크다운(표시용), 코드(실행용), 코드 결과 유형의 셀들로 구성된다.[26]

JSON이 가장 일반적인 형식이지만, Jupytext와 같은 확장 프로그램을 사용하여 이미지 및 메타데이터 저장과 같은 일부 기능을 포기하고 노트북을 마크다운 문서로 저장하는 것도 가능하다.[27] Jupytext는 노트북의 변경 사항 비교(diffing) 및 병합을 더 단순하게 만들기 위해 버전 관리와 함께 자주 사용된다.

같이 보기

[편집]

각주

[편집]
  1. ↑ “Leadership Directory — Project Jupyter Governance”. 《jupyter.org》. 2025년 10월 31일에 확인함.
  2. ↑ “Linux Foundation Announces Formation of the Jupyter Foundation”. The Linux Foundation. 2025년 3월 24일에 확인함.
  3. ↑ Vu, Linda (2021년 6월 14일). “Project Jupyter: A Computer Code that Transformed Science” (영어). 《Berkeley Lab Computing Sciences》. 2022년 8월 15일에 확인함.
  4. ↑ “Project Jupyter // Speaker Deck”.
  5. ↑ “The Notebook, Qt console and a number of other pieces are now parts of Jupyter”. 《GitHub》. 2021년 5월 29일.
  6. ↑ “The Big Split™”. 2017년 8월 28일.
  7. ↑ Perkel, Jeffrey M. (2018년 10월 30일). “Why Jupyter is data scientists' computational notebook of choice” (영어). 《Nature》 563 (7729): 145–146. Bibcode:2018Natur.563..145P. doi:10.1038/d41586-018-07196-1. PMID 30375502. S2CID 256770398. 2022년 8월 15일에 확인함.
  8. ↑ LIGO Scientific Collaboration (2016). “LIGO Open Science Center” (영어). 《losc.ligo.org》. doi:10.7935/K5MW2F23. 2018년 5월 4일에 확인함.
  9. 1 2 Perkel, Jeffrey M. (2021년 1월 20일). “Ten computer codes that transformed science” (영어). 《Nature》 589 (7842): 344–348. Bibcode:2021Natur.589..344P. doi:10.1038/d41586-021-00075-2. PMID 33473232. S2CID 231663425. 2022년 8월 15일에 확인함.
  10. ↑ Gallagher, Sean (2022년 8월 15일). “Machine learning, concluded: Did the "no-code" tools beat manual analysis?” (미국 영어). 《Ars Technica》. 2022년 8월 15일에 확인함.
  11. ↑ Sherrer, Kara (2022년 5월 25일). “Google Colab vs Jupyter Notebook: Compare data science software”. 《TechRepublic》. 2022년 8월 15일에 확인함.
  12. ↑ “Nerds rejoice: Google just released its internal tool to collaborate on AI” (미국 영어). 《Quartz》. 2018년 9월 6일에 확인함.
  13. ↑ Wayner, Peter (2022년 5월 5일). “Essential data science tools for elevating your analytics operations”. 《CIO》. 2022년 8월 15일에 확인함.
  14. ↑ Ramel, David (2022년 7월 12일). “VS Code and Python: A Natural Fit for Data Science -”. 《Visual Studio Magazine》. 2022년 8월 15일에 확인함.
  15. ↑ “Software System Award”. 《ACM Awards》. Association for Computing Machinery. 2016년 5월 5일에 원본 문서에서 보존된 문서. 2016년 4월 28일에 확인함.
  16. 1 2 Somers, James. “The Scientific Paper Is Obsolete” (미국 영어). 《The Atlantic》. 2018년 4월 10일에 확인함.
  17. ↑ Romer, Paul. “Jupyter, Mathematica, and the Future of the Research Paper” (미국 영어). 《paulromer.net》. 2018년 4월 15일에 확인함.
  18. ↑ “Release 7.6.5”. 2026년 11월 6일. 2026년 11월 7일에 확인함.
  19. ↑ “notebook/LICENSE at main · jupyter/notebook”. 《GitHub》.
  20. ↑ “JupyterLab is Ready for Users”. 《Jupyter Blog》. 2018년 2월 20일. 2018년 5월 4일에 확인함.
  21. ↑ Brust, Andrew (2018년 2월 24일). “Data science notebooks get real: JupyterLab releases to users” (영어). 《ZDNet》. 2022년 8월 15일에 확인함.
  22. ↑ “UC Berkeley and Cal Poly to Expand and Enhance Open-Source Software for Scientific Computing and Data | Helmsley Charitable Trust” (영어). 《helmsleytrust.org》. 2020년 1월 3일에 원본 문서에서 보존된 문서. 2018년 5월 3일에 확인함.
  23. ↑ “Using Codespaces with JupyterLab (Public Beta) | GitHub Changelog” (미국 영어). 《The GitHub Blog》. 2022년 11월 11일에 확인함.
  24. ↑ Weill, Jason. “Generative AI in Jupyter”. 《Jupyter》. 2023년 8월 19일에 확인함.
  25. ↑ Lahoti, Sugandha (2019년 5월 6일). “JupyterHub 1.0 releases with named servers, support for TLS encryption and more”. 《Packt Hub》. 2022년 8월 15일에 확인함.
  26. ↑ Toomey, Dan (2016). 《Learning Jupyter》 1판. Birmingham - Mumbai: Packt. 21쪽. ISBN 978-1-78588-487-0.
  27. ↑ Wouts, Marc (2022년 11월 11일), 《mwouts/jupytext》, 2022년 11월 11일에 확인함

외부 링크

[편집]