← 최신 논문
💻 bioinformatics

labapi: a Python object model for the LabArchives electronic lab notebook

labapi는 평면적인 API를 직관적인 객체 모델로 변환함으로써 계산 워크플로우와 LabArchives 전자 연구 노트를 연결하여, 수동 업로드를 제거하고 실험 데이터를 읽고 쓰는 과정을 원활하게 자동화하는 Python 라이브러리입니다.

원저자: Li, C., Lawrimore, J., Moraczewski, D., Thomas, A. G.

게시일 2026-09-07
📖 4 분 읽기☕ 가벼운 읽기

원저자: Li, C., Lawrimore, J., Moraczewski, D., Thomas, A. G.

원본 논문은 CC0 1.0 (https://creativecommons.org/publicdomain/zero/1.0/)에 따라 공공 도메인에 제공됩니다. ⚕️ 이것은 동료 심사를 거치지 않은 프리프린트의 AI 생성 설명입니다. 의학적 조언이 아닙니다. 이 내용을 바탕으로 건강 관련 결정을 내리지 마세요. 전체 면책 조항 읽기

현대적인 실험실에서 실험의 이야기는 더 이상 가죽 표지의 책에 적힌 수기 기록에 머물지 않습니다. 그것은 모든 관찰, 모든 계산, 그리고 모든 결과가 정밀하게 기록되어야 하는 디지털 기록이자 살아있는 아카이브입니다. 국립보건원(NIH)과 여러 다른 연구 기관의 과학자들에게 이 디지털 홈은 LabArchives라고 불리는 시스템입니다. 이것은 전자 실험 노트로서 기능하며, 연구자들이 자신의 작업을 단계별로 기록하여 발견 그 자체와 함께 발견의 역사가 보존되도록 하는 안전한 공간입니다. 그러나 과학자들이 일하는 방식과 이러한 디지털 노트가 구축된 방식 사이에는 격차가 발생했습니다. 연구자들이 데이터를 처리하기 위해 자동화된 컴퓨터 프로그램을 점점 더 많이 활용하고 있지만(복잡한 계산을 실행하여 몇 초 만에 결과를 생성함), 여전히 웹 브라우저를 통해 그 결과들을 수동으로 복사하여 노트에 붙여넣어야 합니다. 이는 과학의 흐름을 방해하는 지루하고 반복적인 작업이며, 인간이 빠른 컴퓨터와 정적인 웹 페이지 사이의 가교 역할을 하도록 강요합니다.

이러한 마찰을 해결하기 위해, 한 연구팀은 컴퓨터 프로그램이 전자 노트와 같은 언어로 대화할 수 있도록 설계된 소프트웨어 라이브러리인 labapi라는 새로운 도구를 개발했습니다. 이 작업의 핵심 성과는 노트의 기저에 있는 기술적인 명령들을 인간 사용자가 느끼기에 자연스러운 구조로 번역하는 가교를 만든 것입니다. 컴퓨터 프로그램이 특정 페이지를 찾기 위해 모호한 내부 코드를 찾아 헤매게 하는 대신, 이 새로운 도구는 프로그램이 사람이 사용하는 것과 동일한 익숙한 경로(노트에서 폴더로 이동한 뒤 특정 페이지로 내려가는 방식)를 사용하여 노트를 탐색할 수 있게 해줍니다. 이 도구는 단순히 데이터를 이동시키는 것이 아니라, 폴더가 다른 폴더나 페이지를 포함할 수 있고 페이지가 실제 데이터의 항목을 담고 있다는 계층 구조를 이해합니다. 이러한 구조를 구축함으로써, 저자들은 연구자들이 인간의 개입 없이도 결과를 직접 노트에 작성하고 나중에 이를 다시 읽어올 수 있는 자동화된 워크플로우를 만들 수 있게 했습니다.

개발자들은 이 도구를 설계할 때, 디지털 노트가 과학자들이 이미 알고 있는 웹 인터페이스만큼 직관적으로 느껴지도록 한다는 구else적인 목표를 가졌습니다. 과거에는 컴퓨터 프로그램을 노트에 연결하려면 "Project A/Results/Subject 1"과 같은 단순한 경로를 복잡한 일련의 내부 요청으로 변환하는 커스텀 코드를 작성해야 했습니다. 새로운 라이브러리는 이 번역을 자동으로 처리합니다. 여기에는 폴더가 존재하는지 확인하고 없으면 생성하거나, 숨겨진 내부 ID를 알 필요 없이 특정 페이지를 찾는 헬퍼(helper) 기능들이 포함되어 있습니다. 이러한 접근 방식은 "검증하지 말고 파싱하라(parse, don't validate)"는 원칙을 따릅니다. 즉, 소프트웨어가 사용자가 입력한 경로를 그대로 받아들여 세부 사항을 파악하는 방식이지, 사용자가 엄격하고 미리 정의된 구조에 맞추도록 강요하는 방식이 아닙니다. 이러한 유연성 덕분에 소프트웨어는 복잡한 데이터 파일을 JSON 첨부 파일로 저장하는 등의 새로운 항목을 생성할 수 있으며, 이는 인간이 쉽게 읽을 수 있는 포맷팅된 프리뷰와 함께 노트에 나타납니다.

이 도구의 실질적인 가치는 이미 실제 연구 현장에서 체감되고 있습니다. 저자들은 이 도구를 사용하여 현재 다른 실험실에서 사용 중인 두 가지 특정 애플리케이션을 구축했습니다. 하나는 muronto라는 애플리로, 신경 행동 실험의 출력값을 자동으로 기록하여 수동 입력이 필요했던 데이터를 포착합니다. 또 다른 하나는 save-my-jupyter로, 과학적 코딩에 흔히 쓰이는 형식인 Jupyter 노트북의 스냅샷을 찍어 전자 기록에 직접 저장합니다. 도구의 능력을 보여주는 시연에서, 저자들은 하나의 워크플로우가 다섯 명의 피험자로부터 데이터를 가져와 각 피험자에 대한 품질 관리 값을 계산하고, 그 결과를 노트에 작성하는 과정을 보여주었습니다. 그 후 시스템은 저장된 값들을 다시 읽어와서 코호트 보고서로 요약하고, 동일한 페이지에 시각적 피규어를 첨부했습니다. 이 모든 과정은 컴퓨터가 마치 사람이 메뉴를 클릭하는 것처럼 노트를 탐색하며 자동으로 이루어졌습니다.

이 작업은 과학계 내의 특정한 요구, 특히 승인된 전자 노트를 사용하여 연구를 수행해야 하는 기관들의 요구를 다룹니다. 다른 전자 실험 노트 시스템들은 자동화를 돕기 위한 공식 소프트웨어 라이브러리를 제공하지만, LabArchives는 이를 공개적으로 제공하지 않습니다. 시스템에 연결하려는 이전의 시도들은 불완전하거나, 유지보수가 되지 않았거나, 혹은 연구자들이 전체 탐색 시스템을 처음부터 직접 구축해야만 했습니다. 새로운 라이브러리는 경로 탐색, 항목 처리, 파일 전송을 하나의 패키지로 결합한 범용 도구를 제공함으로써 이 간극을 메웁니다. 이 도구는 실험실과 함께 일하는 계산 과학자 및 소프트웨어 개발자들이 사용할 수 있도록 설계되었으며, 이들에게 디지털 기록을 최신 상태로 유지할 수 있는 신뢰할 수 있는 방법을 제공합니다.

이 도구는 소스 코드와 문서가 공개되어 있어 누구나 사용할 수 있습니다. 실행을 위해서는 현대적인 버전의 Python 프로그래밍 언어가 필요하며, 광범위한 사용과 수정이 가능한 라이선스로 배포됩니다. 개발자들은 다른 사람들이 시작하는 것을 돕기 위해 예시와 테스트를 포함하였으며, 이를 통해 원시 데이터 파일에서 영구적인 실험실 기록으로 가는 경로가 더 이상 수동적인 번거로움이 아닌, 과학적 과정의 매끄러운 일부가 되도록 보장했습니다. 자동화된 분석과 전자 노트 사이의 장벽을 제거함으로써, 이 도구는 과학자들이 기록의 메커니즘에 덜 집중하고 자신이 던지는 질문 자체에 더 집중할 수 있게 해줍니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →