레이블이 NCBI인 게시물을 표시합니다. 모든 게시물 표시
레이블이 NCBI인 게시물을 표시합니다. 모든 게시물 표시

수요일, 5월 07, 2025

유전자에 대해서 정확하게 답변해주는 GeneGPT

오늘은 LLM을 활용해서 Biomedical 정보에 더 쉽게 접근 할 수 있는 방법을 소개하려고 합니다.  이미 2024년 작년에 출판된 논문으로 NCBI 훃아들이 자기들 DB 활용해서 만들었다고 합니다. 여튼 제목은 GeneGPT: augmenting large language models with domain tools for improved access to biomedical information 입니다.

DOI: 10.1093/bioinformatics/btae075


clova-x

GeneGPT는 대규모 언어 모델(LLM)을 생물의학 정보에 더 쉽게 접근할 수 있도록 NCIB 웹 API를 활용하여 향상시키는 방법입니다. 이 연구는 GeneGPT가 GenoTuring 벤치마크에서 기존의 LLM보다 우수한 성능을 발휘함을 보여줍니다.

1. **연구 배경 및 목적**

   - LLM은 다양한 작업에 성공적으로 적용되었지만, 환각 현상이라는 도전에 직면해 있습니다.

   - 도메인 특정 도구를 통해 LLM의 생물의학 지식 접근성을 향상시키고자 합니다.

2. **GeneGPT의 설계 및 작동 방식**

   - GeneGPT는 Codex를 사용하여 NCBI 웹 API를 통해 유전체 질문에 답하도록 가르칩니다.

   - API 사용법을 시연하고, API 호출을 감지하고 실행할 수 있는 증강 디코딩 알고리즘을 사용합니다.

3. **성능 평가 및 결과**

   - GeneGPT는 GenoTuring 벤치마크의 여덟 가지 작업에서 평균 점수 0.83으로 최고 성능을 달성하였습니다.

   - 이는 New Bing(0.44), BioMedLM(0.08), BioGPT(0.04), GPT-3(0.16), ChatGPT(0.12)보다 훨씬 높은 성과입니다.

4. **GeneGPT의 특징 및 기여**

   - API 시연은 문맥 학습에 문서화보다 더 유용하며, 여러 API 호출을 일반화할 수 있습니다.

   - GeneGPT는 새로운 GeneHop 데이터셋을 통해 다단계 유전체 질문에 응답할 수 있습니다.



chatGPT

# 유전학 질문에 똑똑하게 답하는 AI, GeneGPT 이야기

## 연구 배경 – 왜 이런 연구가 필요했을까?

요즘은 ChatGPT 같은 인공지능이 사람처럼 글을 쓰고, 질문에도 똑똑하게 답하죠. 하지만 이런 AI도 전문 지식이 필요한 분야에서는 가끔 “지어내는” 답을 하기도 해요. 특히 생명과학이나 유전학처럼 정보가 방대하고 복잡한 분야에서는 더더욱 그렇습니다. 그래서 연구자들은 AI가 믿을 수 있는 데이터베이스를 직접 찾아보게 하면 더 정확한 답을 할 수 있지 않을까 하는 아이디어를 떠올렸습니다.

## 연구 목적 – 연구진은 무엇을 알고 싶었을까?

연구팀은 “AI가 유전학 정보를 정확하게 검색하고 활용할 수 있도록 도와주는 방법”을 만들고 싶었습니다. 그래서 미국 국립생명공학정보센터(NCBI)의 유전학 데이터베이스를 AI가 직접 사용할 수 있도록 훈련시킨 ‘GeneGPT’라는 시스템을 만들었죠.

## 사용된 데이터 – 어떤 자료를 활용했을까?

이 연구에서 사용한 데이터는 NCBI에서 제공하는 공식 유전학 데이터베이스(API)를 기반으로 합니다. 쉽게 말하면, 인터넷 주소를 통해 유전자, 단백질, 질병 정보 등을 검색할 수 있는 시스템이에요. 연구팀은 이 API를 사용해 유전 정보를 찾는 과정을 AI에게 가르쳤습니다.

## 연구 방법 – 어떻게 연구를 진행했을까?

연구팀은 OpenAI의 Codex 모델(코드를 잘 이해하는 AI)을 활용해, 특정한 질문이 들어오면 필요한 정보를 NCBI 데이터베이스에서 검색하고 그 결과를 분석한 뒤 답변을 만들도록 했어요. 예를 들어 "이 DNA 조각이 어느 유전자에 해당하나요?" 같은 질문을 받으면, AI가 단계별로 관련 정보를 찾아서 답을 구성하죠.

이를 위해 연구팀은 AI에게 API를 사용하는 예시를 여러 개 보여주고, 그 패턴을 스스로 익히도록 했습니다. 이 과정을 ‘인컨텍스트 러닝’이라고 해요. 복잡하게 들리지만, 쉽게 말해 "이런 식으로 검색해 봐~"라고 보여주는 식입니다.

## 연구 결과 및 예시 – 어떤 결과가 나왔을까?

GeneGPT는 ‘GeneTuring’이라는 유전학 질문 시험에서 매우 높은 성적(평균 0.83점)을 기록했어요. 기존의 ChatGPT나 바이오 전문 AI보다 훨씬 나은 성능이었습니다. 예를 들어 다른 모델이 "이 SNP(유전변이)는 어떤 유전자와 관련이 있나요?"라는 질문에 잘 답하지 못했지만, GeneGPT는 정확하게 찾아낼 수 있었어요.

또한, GeneGPT는 한 번에 여러 단계를 거쳐 답해야 하는 복잡한 질문(예: 특정 질병에 관련된 유전자의 위치는 어디인가요?)에도 잘 대응했답니다.

## 의미와 영향 – 이 연구가 우리에게 주는 의미는?

이 연구는 AI가 단순히 '아는 척' 하는 것을 넘어서, 실제로 믿을 수 있는 데이터를 찾아서 답하도록 진화할 수 있다는 것을 보여줍니다. 특히 생명과학, 의학처럼 정밀한 정보가 중요한 분야에서는 큰 도움이 될 수 있어요. 앞으로 GeneGPT 같은 시스템이 발전하면, 일반 사람들도 더 쉽게 유전 정보를 검색하고 활용할 수 있는 시대가 열릴지도 모릅니다.



NotebookLM

## 안녕하세요! 유전자 정보, 이제 똑똑하게 물어보세요: GeneGPT 연구 이야기

안녕하세요, 오늘 여러분께 **인공지능이 유전자와 질병 정보를 더 쉽고 정확하게 알려줄 수 있는 흥미로운 연구**를 소개해 드리려고 합니다. 복잡한 유전체 정보에 대한 궁금증, 이제 어렵게 검색하거나 전문가에게 물어보지 않아도 될 날이 머지않았는지도 모릅니다!

### 연구 배경 – 왜 이런 연구가 필요했을까요?

최근 인공지능, 특히 **사람처럼 자연스럽게 글을 쓰고 이해하는 거대 언어 모델(LLM)**이 정말 많은 분야에서 활용되고 있습니다. 하지만 이러한 모델들도 **정확하지 않은, 그럴듯해 보이는 답변(‘환각’이라고 부릅니다)**을 할 때가 있어서, 특히 **정확성이 중요한 의학이나 유전체 분야**에서는 큰 문제로 지적되어 왔습니다. 예를 들어, 어떤 유전자의 정확한 위치나 특정 질병과 관련된 유전자를 물어봤을 때, 모델이 사실과 다른 정보를 제공할 수 있다는 것이죠. 그래서 연구자들은 이러한 문제를 해결하기 위해 고민하기 시작했습니다. **“인공지능에게 정확한 정보를 찾고 활용할 수 있는 ‘도구’를 알려주면 어떨까?”** 하고 말이죠.

### 연구 목적 – 연구진은 무엇을 알고 싶었을까요?

이 연구를 진행한 연구진은 **거대 언어 모델이 전문적인 도구를 사용할 수 있도록 가르치는 새로운 방법**을 개발하고자 했습니다. 특히, **국립생물정보센터(NCBI)**에서 제공하는 다양한 **생물학 데이터베이스와 분석 도구의 웹 API**를 거대 언어 모델이 직접 활용할 수 있도록 하는 것이 목표였습니다. 마치 우리가 스마트폰 앱을 사용하듯이, 인공지능이 필요한 유전자 정보를 NCBI 데이터베이스에서 정확하게 찾아내고, 이를 바탕으로 질문에 답변할 수 있게 만드는 것이죠. 이렇게 하면 **부정확한 답변의 가능성을 줄이고, 더욱 신뢰할 수 있는 정보를 얻을 수 있을 것**이라고 연구진은 생각했습니다.

### 데이터 또는 재료 설명 – 어떤 ‘재료’들이 사용되었나요?

이 연구에서는 다음과 같은 중요한 ‘재료’들이 사용되었습니다.

*   **NCBI 웹 API:** NCBI는 유전자, 단백질, 질병 등 **다양한 생물학 정보를 담고 있는 거대한 데이터베이스**입니다. NCBI 웹 API는 이러한 데이터베이스에 **인터넷을 통해 접근하고 필요한 정보를 가져올 수 있도록** 만들어진 일종의 ‘문’과 같습니다. 마치 식당에서 메뉴판을 보고 음식을 주문하는 것처럼, 정해진 ‘주문 방식’(URL)에 따라 원하는 정보를 요청할 수 있습니다. 주요 API로는 **E-utilities** (유전자, 단백질 정보 검색 및 요약)와 **BLAST URL API** (DNA 또는 단백질 서열 유사성 검색)가 있습니다.

*   **GeneTuring:** 연구진들은 개발한 방법의 성능을 평가하기 위해 **유전체학 관련 질문과 답변으로 이루어진 ‘시험 문제’ 세트인 GeneTuring**을 사용했습니다. 이 시험에는 다양한 종류의 유전자 관련 질문들이 포함되어 있습니다.

*   **GeneHop:** 더 나아가, **하나의 질문에 여러 단계를 거쳐 답해야 하는 복잡한 질문 세트인 GeneHop**을 새롭게 만들어 인공지능의 추론 능력을 시험했습니다. 예를 들어, “특정 SNP와 관련된 유전자의 기능은 무엇인가?”와 같은 질문은 먼저 SNP와 관련된 유전자를 찾고, 그 유전자의 기능을 다시 찾아야 답할 수 있는 다단계 질문입니다.

*   **Codex:** 연구진은 처음에는 **코딩 능력이 뛰어난 거대 언어 모델인 Codex**를 사용하여 NCBI 웹 API를 활용하도록 가르쳤습니다.

### 연구 방법 – 인공지능에게 ‘도구 사용법’을 어떻게 가르쳤을까요?

연구진은 **GeneGPT**라는 새로운 방법을 개발하여 인공지능에게 NCBI 웹 API 사용법을 가르쳤습니다. 이 방법의 핵심은 다음과 같습니다.

*   **프롬프트 디자인:** 인공지능에게 **“당신의 임무는 NCBI API를 사용하여 유전체학 질문에 답변하는 것입니다.”**라는 **명확한 지시**를 내립니다. 그리고 NCBI 웹 API의 기능과 사용법에 대한 **설명서 (Documentation)**와 **실제 사용 예시 (Demonstration)**를 함께 제공합니다. 마치 요리책의 레시피처럼, API의 ‘문법’과 실제 ‘요리 과정’을 보여주는 것이죠. 흥미로운 점은 **단순한 설명서보다 실제 사용 예시가 인공지능의 학습에 더 효과적이었다**는 것입니다.

*   **추론 알고리즘:** 인공지능이 답변을 생성하는 과정에서 **“->”라는 특별한 표시**를 감지하면, 그 시점에서 생성을 멈추고 **API 호출 URL을 만들어 실제로 NCBI 웹 API를 실행**합니다. API 실행 결과로 얻은 **생생한 데이터**를 다시 인공지능에게 입력하여 답변 생성을 이어가도록 합니다. 마치 숙련된 연구원처럼, 필요한 정보를 데이터베이스에서 직접 찾아보고, 그 결과를 바탕으로 결론을 내리는 방식입니다.

### 연구 결과 및 예시 – 어떤 결과가 나왔나요?

GeneGPT를 사용하여 GeneTuring 문제들을 풀어본 결과, **기존의 다른 어떤 인공지능 모델들보다 훨씬 높은 정확도**를 보였습니다. 특히, **새로운 Bing (0.44점) 이나 BioMedLM (0.08점), BioGPT (0.04점), 심지어 GPT-3 (0.16점)와 ChatGPT (0.12점)보다 평균 0.83점이라는 압도적인 성능**을 나타냈습니다.

예를 들어, GeneGPT는 다음과 같은 질문에 NCBI 웹 API를 활용하여 정확하게 답변할 수 있습니다 (실제 블로그 글에서는 더 쉬운 예시로 각색될 수 있습니다):

*   **질문:** “BRCA1 유전자의 다른 이름들은 무엇인가?”

    *   GeneGPT는 NCBI의 E-utilities API를 사용하여 ‘BRCA1’을 검색하고, 그 결과에서 BRCA1 유전자의 공식 명칭 외에 알려진 다른 이름들(이명)을 정확하게 찾아낼 수 있습니다.

*   **질문:** “특정 DNA 서열과 가장 유사한 인간 염색체는 무엇인가?”

    *   GeneGPT는 BLAST URL API를 사용하여 주어진 DNA 서열과 인간 유전체 데이터베이스를 비교 분석하고, 가장 유사한 염색체 위치를 찾아낼 수 있습니다.

더욱 놀라운 점은 GeneGPT가 **여러 단계를 거쳐야 하는 복잡한 질문(GeneHop)**에도 비교적 잘 답변했다는 것입니다. 예를 들어, “특정 질병과 관련된 유전자들의 염색체 위치는 어디인가?”라는 질문에 대해, 먼저 질병과 관련된 유전자 목록을 찾고, 각 유전자의 염색체 위치를 순차적으로 파악하는 능력을 보여주었습니다.

### 의미와 영향 – 이 연구가 우리 삶에 어떤 의미를 가질까요?

이 연구는 **인공지능이 생물 의학 분야의 전문 지식에 더욱 쉽고 정확하게 접근**할 수 있는 가능성을 보여줍니다. 특히, 전문 지식이 없는 일반 대중도 **유전자나 질병에 대한 궁금증을 해소하는 데 큰 도움**을 받을 수 있을 것으로 기대됩니다. 더 이상 복잡한 전문 용어와 씨름하거나 여러 웹사이트를 뒤적거리지 않아도, **인공지능에게 질문하면 필요한 정보를 정확하게 얻을 수 있는 시대**가 다가올 수 있다는 의미입니다.

또한, 연구자들이 **방대한 생물학 데이터를 분석하고 새로운 발견을 하는 과정**에서도 GeneGPT와 같은 기술이 중요한 역할을 할 수 있습니다. 데이터베이스 관리의 부담을 줄이고, 더 효율적인 연구를 가능하게 할 잠재력을 가지고 있습니다.

물론 아직 연구 단계이지만, GeneGPT가 보여준 가능성은 **미래의 의료 및 생명 과학 분야에 큰 변화를 가져올 수 있을 것**으로 기대됩니다. 복잡하고 방대한 유전체 정보를 누구나 쉽게 이해하고 활용할 수 있는 날을 꿈꿔봅니다!



grok3

안녕하세요, 여러분! 오늘은 흥미로운 연구 논문 하나를 소개하려고 해요. 이 논문은 'GeneGPT'라는 이름으로, 생물학 정보를 더 쉽게 찾을 수 있도록 도와주는 새로운 기술에 관한 거예요. 전문 용어가 많을 수 있지만, 제가 최대한 쉽게 풀어서 설명할게요. 자, 시작해볼까요?

---

### 연구 배경 – 이 연구가 왜 필요했는지

우리는 요즘 인공지능(AI), 특히 대형 언어 모델(LLM, 쉽게 말해 똑똑한 챗봇 같은 거예요)을 많이 사용하죠. 이 AI들은 책, 뉴스, 웹사이트 같은 텍스트를 학습해서 질문에 답할 수 있어요. 하지만 문제는, 가끔 AI가 잘못된 정보를 만들어내거나(이걸 '환각'이라고 불러요), 전문적인 생물학 정보는 잘 찾지 못한다는 거예요. 예를 들어, 특정 유전자에 대해 물어보면, AI가 엉뚱한 답을 내놓거나 "모르겠어요"라고 할 때가 많죠.

특히 생물학이나 유전학 같은 분야는 전문 데이터베이스에서 정확한 정보를 찾아야 하는데, 일반 AI는 이런 데이터베이스를 잘 활용하지 못해요. 그래서 연구진은 AI가 생물학 정보를 더 정확하고 쉽게 찾을 수 있도록 도와주는 방법을 만들어보자고 생각했어요.

---

### 연구 목적 – 연구진이 알고자 했던 것

이 연구의 목표는 AI가 생물학 전문 데이터베이스(특히 미국 국립생물공학정보센터, NCBI의 데이터베이스)를 직접 활용해서 유전자 관련 질문에 정확히 답할 수 있게 만드는 거였어요. 연구진은 AI가 검색엔진처럼 웹을 뒤지는 대신, 전문 도구를 사용해 더 믿을 만한 답을 주도록 하고 싶었죠. 또, 단순한 질문뿐 아니라 복잡한 질문(예: "이 유전자와 관련된 질병은 뭐야?" 같은)에도 잘 대답할 수 있는지 확인하고 싶었어요.

---

### 데이터 또는 재료 설명 – 어떤 데이터나 재료가 사용되었는지

이 연구에서는 실제로 물리적인 재료 대신, 컴퓨터와 데이터베이스를 사용했어요. 핵심은 두 가지 도구예요:

1. **NCBI 웹 API**: NCBI는 생물학 정보를 모아놓은 거대한 도서관 같은 곳이에요. 여기에는 유전자, 단백질, DNA 정보가 가득하죠. 웹 API는 이 도서관에서 정보를 꺼내오는 '사서' 같은 역할을 해요. 예를 들어, 특정 유전자의 이름을 검색하거나 DNA 조각이 어디에 맞는지 찾아줄 수 있죠.

2. **GeneTuring과 GeneHop 데이터셋**: 연구진은 AI가 얼마나 잘 답하는지 테스트하기 위해 두 가지 질문 모음을 사용했어요. 

   - **GeneTuring**은 유전자 이름, 위치, 기능 같은 단순한 질문 450개가 담긴 시험지예요. 예: "이 유전자는 어디에 있어?" 같은 질문이죠.

   - **GeneHop**은 좀 더 복잡한 질문 150개로, 여러 단계를 거쳐야 답을 찾을 수 있어요. 예: "이 DNA 조각이 속한 유전자의 별칭은 뭐야?"처럼요.

이 질문들은 일반인이 이해하기 쉽게 비유하자면, 도서관에서 책 제목 찾기(단순 질문)와 책 내용을 읽고 저자 정보까지 알아내기(복잡 질문) 같은 차이예요.

---

### 연구 방법 – 연구가 어떻게 진행되었는지

연구진은 AI(여기서는 Codex라는 모델을 주로 사용했어요)에게 NCBI 데이터베이스를 사용하는 법을 가르쳤어요. 어떻게 했냐면, 마치 선생님이 학생에게 예제를 보여주듯이 AI에게 몇 가지 예시를 보여줬어요. 예를 들어:

- "이 유전자 이름을 찾으려면 NCBI에서 이렇게 검색해"라며 검색 방법과 결과를 보여줬죠.

- 또, "DNA 조각을 비교하려면 BLAST라는 도구를 이렇게 써"라고 알려줬어요.

이걸 전문 용어로 '인컨텍스트 학습'이라고 하는데, 쉽게 말하면 AI에게 "이렇게 해봐!"라고 예시를 주고 따라 하게 만드는 거예요. 그리고 AI가 질문에 답할 때, NCBI 데이터베이스에서 정보를 직접 가져오도록 했어요. 예를 들어, AI가 "이 유전자는 뭐야?"라는 질문을 받으면, NCBI에 접속해서 정확한 답을 찾아오는 식이죠.

또, 복잡한 질문에는 AI가 문제를 작은 조각으로 나눠서 하나씩 해결하도록 했어요. 이를 '생각의 연쇄(chain-of-thought)'라고 부르는데, 마치 퍼즐을 맞추듯 단계별로 답을 찾아가는 방식이에요.

---

### 연구 결과 및 예시 – 어떤 결과가 나왔고, 일반인들이 이해할 수 있는 예시

결과는 정말 놀라웠어요! GeneGPT라는 이 새로운 AI는 기존 AI들보다 훨씬 잘했어요. GeneTuring 시험지에서 8개 과목(유전자 이름 찾기, 위치 확인, DNA 비교 등) 평균 점수가 0.83(1점 만점)이었어요. 비교하자면, 다른 AI들은 0.44(뉴 빙), 0.08(바이오메드LM) 정도로 훨씬 낮았죠.

**예시 하나**: 

질문: "SNP rs1241371358이라는 유전 변이가 어떤 유전자와 관련이 있지?"

GeneGPT는 NCBI 데이터베이스에서 이 변이를 검색해서 "LRRC23"이라는 유전자를 찾아냈어요. 심지어 "이 유전자의 기능은 뭐야?"라는 추가 질문에도 "세포질에서 활동할 가능성이 있다"고 정확히 답했죠.

**일반인에게 비유**: 이건 마치 여러분이 도서관에서 책 제목만 알고 저자를 찾아야 할 때, 사서가 정확한 책을 찾아서 저자 이름까지 알려주는 것과 같아요. 다른 AI들은 책을 대충 뒤져서 엉뚱한 답을 줄 때가 많았지만, GeneGPT는 제대로 찾아줬어요.

복잡한 질문에서도 GeneGPT는 잘했어요. GeneHop 시험지에서 평균 0.50점을 받았는데, 뉴 빙은 0.24점에 그쳤죠. 예를 들어, "이 질병과 관련된 유전자는 어디에 있어?" 같은 질문에서 GeneGPT는 질병을 먼저 찾아보고, 관련 유전자를 확인한 뒤, 그 유전자의 위치까지 정확히 알려줬어요.

---

### 의미와 영향 – 이 연구가 우리 일상이나 사회에 어떤 영향을 줄 수 있는지

이 연구는 우리 삶에 큰 도움을 줄 수 있어요! 왜냐하면:

1. **의료와 건강**: 유전자 정보를 빠르고 정확히 찾을 수 있으면, 의사나 연구자들이 질병 원인을 더 쉽게 파악할 수 있어요. 예를 들어, 특정 유전자가 암과 관련이 있는지 알아내면 더 나은 치료법을 찾는 데 도움이 되죠.

2. **일반인의 접근성**: 생물학은 복잡하지만, GeneGPT 같은 기술이 발전하면 우리 같은 일반인도 유전자 정보를 쉽게 이해할 수 있어요. 예를 들어, "내 유전자 검사 결과가 뭐를 의미하지?" 같은 질문에 AI가 친절히 설명해줄 날이 올지도 몰라요.

3. **과학 연구 속도 UP**: 연구자들이 유전자 데이터를 찾는 데 시간을 덜 쓰고, 새로운 발견에 더 집중할 수 있게 돕죠. 이건 결국 신약 개발이나 질병 예방 같은 분야에서 큰 진전을 가져올 수 있어요.

4. **AI의 신뢰도 향상**: AI가 엉뚱한 답을 덜 내놓고, 전문 데이터베이스를 활용하면 더 믿을 만한 답변을 들을 수 있어요. 이건 생물학뿐 아니라 다른 분야에서도 비슷한 기술로 확장될 가능성이 크죠.

---

### 마무리

GeneGPT는 AI가 생물학 정보를 더 똑똑하게 찾아주는 첫걸음이에요. 아직 완벽하지는 않지만, 이 기술이 발전하면 우리 모두가 유전자와 건강에 대해 더 쉽게 알 수 있는 날이 올 거예요. 여러분은 이 연구에서 어떤 점이 가장 흥미로웠나요? 댓글로 알려주세요! 😊



perplexity.ai

### 연구 요약: GeneGPT - 대형 언어 모델의 생물정보학 활용 증대

---

**연구 배경 – 이 연구가 왜 필요했는지**  

대형 언어 모델(LLMs)은 자연어 처리(NLP) 분야에서 뛰어난 성과를 내고 있지만, 여전히 잘못된 정보를 생성하거나 과도한 일반화를 하는 "환각(hallucination)" 문제를 겪고 있습니다. 특히 생물정보학과 같은 전문 분야에서는 정확한 데이터 접근이 중요하기 때문에, 기존 LLM의 한계를 극복하고 더 신뢰할 수 있는 답변을 제공할 수 있는 방법이 필요했습니다[1].

---

**연구 목적 – 연구진이 알고자 했던 것**  

이 연구는 LLM에 생물정보학 데이터베이스를 활용하는 능력을 부여하여 전문적인 질문에 더 정확히 답변할 수 있도록 하는 새로운 방법을 개발하는 것을 목표로 했습니다. 이를 위해 연구진은 GeneGPT라는 시스템을 설계하여, LLM이 NCBI(National Center for Biotechnology Information)의 웹 API를 통해 데이터를 검색하고 활용할 수 있도록 했습니다[1].

---

**데이터 또는 재료 설명 – 어떤 데이터나 재료가 사용되었는지**  

GeneGPT는 NCBI의 웹 API를 사용하여 생물정보학 데이터베이스에 접근합니다. 이 API는 유전자 정보, 단백질 구조, DNA 서열 등을 포함한 38개의 데이터베이스를 제공합니다. 또한 BLAST API를 통해 DNA 또는 단백질 서열을 비교하여 유사성을 분석할 수 있습니다. 일반 사용자는 인터넷 연결만으로 이러한 데이터를 활용할 수 있습니다[1].

---

**연구 방법 – 연구가 어떻게 진행되었는지**  

GeneGPT는 두 가지 주요 구성 요소로 이루어져 있습니다:

1. **특별히 설계된 프롬프트**: API 사용법에 대한 문서와 예시를 포함하여 LLM이 API 호출을 학습하도록 돕습니다.

2. **추론 알고리즘**: LLM이 질문을 이해하고 필요한 데이터를 검색한 후 API 호출 결과를 기반으로 답변을 생성하도록 설계되었습니다.

GeneGPT는 Codex라는 LLM을 기반으로 작동하며, 생물정보학 관련 질문에 대해 NCBI API를 호출해 데이터를 검색하고 이를 바탕으로 답변을 생성합니다[1].

---

**연구 결과 및 예시 – 어떤 결과가 나왔고, 일반인들이 이해할 수 있는 예시가 있다면 함께 설명**  

GeneGPT는 GeneTuring이라는 생물정보학 질문 벤치마크에서 평균 점수 0.83을 기록하며 기존 모델(Bing, BioGPT 등)을 크게 능가했습니다. 예를 들어, 특정 질병과 관련된 유전자를 찾거나 DNA 서열의 위치를 인간 염색체와 매칭하는 작업에서 매우 높은 정확도를 보였습니다. 이는 일반인에게도 유용한 정보로, 특정 질병의 원인을 이해하거나 유전자 분석 결과를 해석하는 데 도움이 될 수 있습니다[1].


그냥 LLM에 물어보는 것보다는 이런 전문화된 LLM에 물어보면 조금 더 내가 원하는 답에 가까운 답변을 얻을 수 있었어요가 결론이네요. 각각 분야마다 특화된 LLM들을 만들면.... 근데 그러기에는 너무 세분화되어야하는 문제도 있을거 같은데.... 어떻게든 해결하겠죠 :)



출처: @ye._.vely618


일요일, 4월 28, 2024

NCBI API Key 발급받기

생명정보학을 하는 사람뿐만 아니라 생명공학을 전공하는 공부하는 사람들은 NCBI를 활용하지 않을 수 없는 시대에 왔습니다.

아마 생명공학을 전공한다면 이전에는 하얀까운 입고 클린벤치앞에서 파이펫가지고 실험하는 생각이 지배적이었는데 조만간 컴퓨터 화면앞에서 까만 화면앞이나 웹사이트를 이리저리 오가면서 분석하는 것이 더 익숙해질지도 모르겠습니다.

그래서 오늘은 오랜만에 NCBI를 활용할 때 대량의 데이터를 다운받을 때 API를 사용할 수 있게 해주는 API Key를 발급받는 방법을...

사실 저도 API Key를 받아가면서 다운로드 받지 않았는데..

이제는 그러지 않고는 NCBI에서 너님좀 그만 접속해라는 status만 return하고 정작 제가 원하는 자료들은 넘어오지 않아서 API Key를 발급 받을 수 밖에 없었습니다. 

Orz

여튼 그래서 구글님에서 "NCBI의 API Key를 발급 받으려면 어떻게 해야하나요?"

라고 검색해보면 다음과 같은 링크하나 떨궈 줍니다.

> 여기요 <

위에 URL에 나와있는 대로 회원 가입하고 발급받으시면 됩니다. :)

혹시나하고 아래와 같이 스샷들을 첨부하였읜 참고해서 잘 받으시기 바랍니다.


목록중에 있는 외부 계정 활용해서 로그인 하시면 되겠습니다. 전 구글을 잘 이용합니다.


브라우저에 구글 계정이 설정되어 있으면 이 계정으로 계속 할꺼야? 라고 물어봅니다. 다른 계정하고 싶으시면 아래 [다른 계정 사용]을 클릭해서 진행 하시면 되겠습니다.


그럼 선택하신 계정을 사용해서 nih.gov 서비스를 사용하실 수 있게 됩니다. [계속] 버튼을 클릭하시면 되겠습니다.


새로 계정 만들래, 기존 계정에 연결할래? 음.. 계정 생성의 복잡도를 생각해서 그냥 새로 계정을 만드시는게 편하지 않을까합니다. 


축하드립니다. NCBI 계정을 본인 계정을 사용해서 로그인 하실 수 있게 되었습니다.

단, 우리의 목적은 NCBI 계정 탈.. 생성이 아니라 API Key 발급이었죠? 상단 우측의 Accout를 클릭하면 [Account Settings] 라는 메뉴에 들어갈 수 있습니다.

현재 API Key가 없는 것을 알 수 있고, 친절히 [Creat API Keys] 버튼이 큼직만하게 있습니다. 이 버튼을 클릭하시면...

그냥 API Key가 만들어집니다. :)



그럼 주말 저녁 잘 마무리하시기 바랍니다. :)







출처: @ye._.vely618


월요일, 9월 04, 2023

NCBI에서 제공하는 ribosomal RNA Database

때는 바야흐로 2020년 초

NCBI에 Blog에 새로운 ribosomal RNA 데이터베이스가 출시되었다는 글이 하나 떴었네요...


사실 그 전부터 BLAST용 ribosomal RNA 서열은 제공하고 있었습니다.

다만 그 전까지는 NCBI에 수집된 nucleotide 서열을 모아놓은 수준이었던것 같은데,

2020년에 공개된 데이터는 단순히 모아놓는 부정확한 정보 수준이 아닌 각 서열을 정확하게 식별하고 분류할 수 있도록 엄선하였다고 하네요 

rRNA뿐만 아니라 ITS 서열까지.. 2020년즈음에는 microbiome에 이어 mycobiota도 관심이 증가하고 있었던 시기였던터라 이전에 ITS 서열을 제공하지 않았던것 같은데, 역시 NCBI 훃님들은 페달 밟으면 아주 시원하게 뽑아주는듯 합니다.

여튼 요즘에는 16S, 18S, ITS 서열들을 잘 정리해서 식별할 수 있도록 (aka taxonomy 정보가 잘 정리되어 있다는 것이겠죠) 제공하고 있습니다.


>여기< 에 우리가 알고 있는 nt db와 nr db 말고도 다양한 local용 blast database들이 제공되고 있으니 잘 다운로드 받아 잘 사용하면 좋을 것 같습니다. 


또 유익한 정보를 가지고 블로그에 글을 적어보도록 하겠습니다. 





출처: @ye._.vely618




목요일, 8월 10, 2023

NCBI기반의 분류데이터를 손쉽게 다루는 방법

NCBI의 taxonomy 데이터는 드려다 보신 분들은 아시겠지만 환장의 도가니라고 할 수 있죠

그래서 보다 못한 호주의 어느 용자께서 NCBI의 taxonomy 데이터를 처리할 수 있는 스크립트를 개발하셔서 github에 올려주셨습니다. 물론 논문도 투고하셨고요


이름하여 ncbi-taxonomist, NCBI 분류학자라니.. Orz

Collecting and managing taxonomic data with NCBI-taxonomist

doi: https://doi.org/10.1093%2Fbioinformatics%2Fbtaa1027


여튼 재미있는 기능 중 하나가 NCBI의 nucleotide이든 protein이든 accession을 입력하면 이 accession의 taxonomy 정보를 알려준다는 것입니다.

물론 NCBI 분류학자답게 NCBI의 taxonomy ID과 종 이름(약간의 오타가 있어도, 그 오타가 NCBI에 등록되어 있다면)로도 검색할 수 있습죠.

accession 정보를 이용하여 taxonomy 정보를 파악하는게 생각보다 번거로운 작업인데 ncbi-taxonomist에서 명령어 한번 때려주면 호로록 검색해서 결과를 알려줍니다.

여튼 오늘은 간단한 기능을 보여주는 tool을 소개하였는데
밤새 태풍에 무탈하시기 바랍니다. :)



출처: @ye._.vely618


화요일, 8월 01, 2023

ncbi 횽아들은 어디까지 만들어 낼 것인가

이것저것 작업하면서

ncbi tool들을 다시 사용하고 있는데..

훗.. 역시 우리 ncbi 훃아들의 위대함을 다시 한번 느꼈다는...


NCBI BLAST에서 taxonomy로 제한 거는 기능을 당연히 stand-alone에서도 사용할 수 있는데 NCBI의 -taxid의 숨은 함정이 종 수준의 taxid만 제한 걸 수 있다는..

(근데 써보면 종 수준의 taxid만 제한이 걸리는지 갸우뚱 거리긴 함.. )


여튼 종 수준의 taxid만 제한할 수 있다는 것이 무엇이냐면..

종보다 상위 class의 taxid인 Enterobacterales의 taxid를 사용하면 정상적으로 작동을 안하게 된다는 말씀.

그러므로 NCBI BLAST 프로그램을 다운 받았을 때 함께 있는 get_species_taxids.sh를 활용하면 이 문제를 피해갈 수 있다고 합니다.

사실 최근까지 get_species_taxid.sh가 왜 있는지 관심은 없을 뿐더러
왜 쓰잘떼기 없는 shell script는 왜 넣어놨는지 했다는 ㅎㅎ 


여튼 언제나 NCBI 훃님들께 감사인사를... :)


참고 URL: https://www.ncbi.nlm.nih.gov/books/NBK569846/



출처: @ye._.vely618


일요일, 9월 23, 2018

Microbiome Database를 만들어볼까? -NCBI편 4-

지난번 글에서 받기시작했던 nt.gz파일은 잘 받아졌나요?

그럼 이제 이 파일에서 무엇인가 뽑아내야 겠죠?

무엇을 뽑아내느냐?
16S rRNA를 뽑아낼겁니다.
어떻게?
다음 스크립트를 작성해 봅시다.

$vi parser_nt.py

import glob,sys,re,gzip
from Bio import SeqIO

try:
        input_fa = sys.argv[1]
except:
        print "fasta_split.py <in.fa.gz>"
        exit(1)
for rec in SeqIO.parse(gzip.open(input_fa),format='fasta'):
        desc = rec.description
        seq = str(rec.seq)
        name = desc.strip().split('\x01')[0]
        if name.upper().find(' 16S RIBOSOMAL RNA ') != -1 or name.find(' 16S RIBOSOMAL RNA,') != -1:
                if name.upper().find('MITOCHONDRIA')!= -1:
                        pass
                elif name.upper().find('CHLOROPLAST')!= -1:
                        pass
                elif name.upper().find(' 23S ') != -1:
                        pass
                else:
                        if name.upper().find(' SIMILAR ') != -1:
                                pass
                        elif name.upper().find(' INTRON') != -1:
                                pass
                        elif name.upper().find(' PLASTID') != -1:
                                pass
                        else:
                                print '>%s\n%s\n'%(desc,seq)


※ 위의  스크립트를 수정해서 입맛에 맞게 교정하시고 사용하시면되겠습니다.

$python parser_nt.py nt.gz > nt.fasta
위에 스크립트 실행시키면 떡 하니 수 gb 짜리 파일이 하나 나올겁니다.

이 파일안에는 nt서열 중에서 16S rRNA 서열 (대신 mitochondria와 chloroplast의 16S rRNA는 제외하고 이것도 16S rRNA지만 저한테는 일단 필요없어서 뺐습니다. 사용하고 싶으시면 사용하셔도 됩니다. :) )이 500만개 정도 들어 있습니다.

이 파일에는 온갖 종의 16S rRNA 서열이 있지만 문제가 있다는 점!

16S rRNA 서열이 품질이...
어떤 녀석은 full 서열이 있지만 어떤녀석은 서열의 일부만 가지고 있는 경우가 있습니다.

그래서 그런 녀석들을 잘 확인해서 제거를 하던지 merge를 하던지... 

그건 개인 취향으로 남겨 놓도록 하겠습니다. :)
aka 필터링을 하던 안하던 문제 생기면 그 문제의 책임은 오롯이 당신의 것!!

그리고 즐거운 추석보내시기 바랍니다. :)

출처 SM


수요일, 9월 19, 2018

Microbiome Database를 만들어볼까? -NCBI편 3-

지난 시간에 이곳에서 귀한 자료를 받아 봤을 겁니다.
그게 무엇이냐!!!

지금까지 공개된 bacteria의 서열들이죠 정확하게 말하면
현재까지 수많은 연구자들이 자발적(자의타의)으로
공개해준 것을 NCBI가 아름답게 정리한 RNA서열들만 다운받았습니다.

근데 우리는 RNA 서열이 아니라 rRNA 서열이 필요하죠

이전 글에서 우리는 rna라는 폴더 안에 12만개에 달하는 파일들을 다운받았습니다.
아마 그냥 ls하시면 어쩌구 저쩌구 long 할겁니다.
ls로 불러오기에 item이 너무 많다 이거죠
그럼 어쩌지?? @.@

우리에겐 귀도 훃님의 파이썬이 있지 않겠습니꽈

간단하게 다음과 같은 스크립트를 뚝딱 뚝딱 만들어보죠

import os,glob
from Bio import SeqIO
for files in glob.glob('rna/*gz`):
    for rec in SeqIO.parse(gzip.open(files), format='fasta'):
        name =rec.description
        seq = rec.seq
        if name.find('[product=16S ribosomal RNA]') != -1:
            print '>%s\n%s\n'.format(name,seq)

(python2.7에 Biopython이 설치되어 있어야 하고 *_rna_form_genomic.fna.gz 파일이 rna폴더 밑에 위치하고 있어야 합니다.)

$python script.py > ncbi.fa

라고 해주면 헤더에 "[product=16S ribosomal RNA]"가 포함된 aka 우리가 원하는 바로 그것! 16S rRNA 서열을 각 종에서 샤샤샥 ncbi.fa라는 파일에 저장할 수가 있습니다.

-12만개 파일 읽어 오는거라 순차적으로 하면 3-4시간 걸릴것이고
subprocess로 잘 해주시면 적어도 십수분? 30분이내면 충분히 끝날각 되겠습니다.

출처: SM Town

일요일, 9월 09, 2018

Microbiome Database를 만들어볼까? -NCBI편 2-

지난 시간에 이곳에서 자료를 받아 봤습니다.

오늘은 또 다른 ncbi 자료를 받아 볼겁니다.

※지겹다고요? 제가 그랬잖아요? 당분간은 맨날 다운 받을 거라고 ㅋ
빨라야 추석 이후에야 무엇인가 하지 않을까 기대합니다.

지난번에는 ncbi에서 제공하는 모 그런걸 받았습니다.
-자세한 내용은 다음 글에... ㅎㅎ :)

그렇다면 이번에는 우리가 ncbi라고 하면
맨날 다운받았던 blast의 db를 만드는 source fasta파일인
nt.gz 을 받아보도록 하겠습니다.

자 웹브라우저에서 ftp://ftp.ncbi.nlm.nih.gov/blast/db/fasta/
들어가시면 nt.gz이 보입니다.

물론

$wget ftp://ftp.ncbi.nlm.nih.gov/blast/db/fasta/nr.gz 

하셔서 다운받아도 무방합니다.

그럼 대략 40G 정도의 gzip파일을 받아봅시다. :)



출처: SM Town

토요일, 9월 01, 2018

Microbiome Database를 만들어 볼까? -NCBI편-

Microbiome Database를 만들려면
database에 들어갈 무엇이든 뭐든지 있어야 겠지요?

지구상에서 생명공학을 공부하면서 한번도 안들어 갈수 없는
한번 들어 가봤으면 다시는 안 갈 수 없는 바로 그곳! 거기!

근데 일단 거기는 들어갈 필요는 없구요
NCBI에서 데이터를 받아봅시다!
-아니 이양반아 거기에 안들어가고 무엇을 한단말인가?

그렇죠! 그래서 저희는 이곳을 이용할겁니다.

assembly_summary_refseq.txt 파일을 작업서버에 살포시 다운로드 받아보겠습니다.


$ wget ftp://ftp.ncbi.nlm.nih.gov/genomes/refseq/bacteria/assembly_summary.txt

이제 다 받아졌다면 잘 받아졌는지 파일을 한번 볼까요?

앜 내눈!!! 글씨밖에 없죠? 정상적인 파일입니다. 다행히 잘 받아졌군요

이 파일에서 우리가 필요한 파일들을 받을 수 있는 주소들이 있습니다.
자 파일 라인 갯수가 #으로 처리된 헤더 2라인을 제외하면 124,529개 밖에 안됩니다. ;)

대략 20번째 컬럼에 있는 ftp 주소를 한개의 파일로 한땀 한땀 모으시면됩니다.
모 번뜩 생각나는 방법은 txt파일을 엑셀에서 불러들여서 20번째 컬럼에 있는 내용 복붙하셔도...

그러나 좀 편리하게 awk를 사용하는 방법이..

$ awk '{FS="\t"} !/^#/{print $20}' assembly_summary.txt > bacteria.list
그럼 bacteria.list에 ftp주소가 모입니다.

그 다음에

for M in `cat bacteria.txt`
do
wget -P rna $M/*rna_from_genomic.fna.gz
done

이렇게 해주시면 rna폴더에 rna_from_genomic.fna.gz 파일들이 차곡 차곡  쌓입니다.

대신 12만개 다운 받아야하니.. screen 실행시킨 다음에 하시고요

그럼 다 받을때까지 요즘 날씨도 좋으니 놀다오는걸로 :)

#날씨도좋은데놀아보자 출처: YOUTUBE 캡쳐

월요일, 3월 26, 2018

NCBI Website and Data Usage Policies and Disclaimers

관련 NCBI 원문 URL

Website Disclaimer
쓰는건 님 자유지만 어떠한 유형의 문제가 발생하면 쓴 너님 문제

Website Usage
NCBI 웹페이지는 Title 18 조항에 의해 보호되니깐 작은 하마를 건들면 ㅈ되는 것처럼 똑같이 됨.


Copyright Status of Webpages
NLM (National Library of Medicine) 웹 페이지의 공개 정보는 자유롭게 배포 및 복사 할 수 있습니다. 그러나 몇몇 저작물(그게 무엇인지는 비밀)에 대해서는 NLM에 적절한 확인을 요청해야 합니다. 


Molecular Data Usage
NCBI 웹 사이트의 분자 데이터베이스는 nucleotide sequences (GenBank), protein sequences, macromolecular structures, molecular variation, gene expression, and mapping data를 통칭.
NCBI는 이 안에 포함된 데이터의 사용이나 배포에 대한 아무런 제한을 두지 않는다. 제출자가 재사용/재배포에 대한 제한을 요청해도 승인하지 않는다. 그러나 제출자가 특허나 저작권 또는 기타 지적 재산권을 주장 할 수는 있다. NCBI는 이러한 청구에 대해서 평가를 하는 기관이 아니다. 제출자로부터 권리를 양도받지 않았기에 NCBI는 제 3자에게 양도 할 권리가 없다.
요약: 문제의 소지가 있는 데이터가 존재 할 수 있고 문제 발생 시 NCBI는 관여하지 않으니 니들끼리 알아서 해결하세요


Human Genomic Data Submitted to Unrestricted-Access Repositories
대규모 인체 게놈 데이터를 NCBI에 보관하고 싶으면 NIH 게놈 데이터 공유 정책(GDS)의 조건에 충족해야한다.


Use of Web Browsers
NCBI는 크롬과 불여우, 사파리 그리고 에지의 최신버전및 이전 두 버전을 지원한다.
놀랍게도 IE11이상이면 IE에서도 작동한다. 역시 자국 소프트웨어를 써주는건 어느나라나 동일한듯.


Accessibility Policy
가능한 모든 사람들이 접근 할 수 있도록 노력을 기울이고 있습니다.


Privacy Policy
NCBI는 님들 정보따위에 관심없으니 걱정마셈


Medical Information and Advice Disclaimer
NLM은 특정 의학 조언을 제공하는 것이 아닌 자신의 건강 및 진단된 장애를 더 잘 이해할 수 있는 정보를 사용자에게 제공하기 위함이니 정확학 임상적인 조언은 진단을 할 수 있는 자격을 갖춘 의사와 상담하길 바란다.


Guidelines for Scripting Calls to NCBI Servers
NCBI 시스템에 부하를 주지마세요. https://eutils.ncbi.nlm.nih.gov 를 사용하세요.

금요일, 3월 23, 2012

Blastall Manual


NCBI에서 제공되는 Blastall에 대한 메뉴얼
blast-2.2.18을 기준으로 작성합니다. 현재 2.2.20이 나와있죠??
아마 옵션은 거의 동일할것입니다.
제가 많이 사용하는 것을 중심으로 설명합니다.
-지금은 더 업되어 있을 겁니다.
 그리고 이제는 슬슬 BLAST+로 옮겨타보려고 계획중입니다. :)

-p 5개의 기본 blast 프로그램중 하나를 선택하는 옵션
ex) -p {blastn|blastp|blastx|tblastn|tblastx}

-d blast를 돌리기 위한 데이터베이스 선택하는 옵션
ex) -d {nr|nt|your_database_file}
blast에서 데이터베이스로 사용하기 위해서는 fasta파일을 formatdb로 blast에 사용할 수 있는 데이터베이스로 변환시켜주어야 사용 가능. formatdb 수행후 붙는 확장자 명은 적어주지 않아도 됨. 파일이름 적음.

-i 검색해보고 싶은 서열(들) 입니다. Query 파일은 fasta format으로 되어있어야 함.
ex) -i your_query_file.seq 현재폴더에 있는 서열 파일      
      -i /your/home/path/query.fasta 다른 폴더에 있는 서열 파일

-e Expectation value를 정해줘서 설정된 값보다 크면 결과에 포함시키지 않는 옵션. 일반적으로 blastn의 경우 1e-06/1e-12, blastp의 경우 1e-03/1e-06으로 설정하고 상황마다 조정하면서 사용.
ex) -e 1e-06
-m 결과 파일을 저장할때의 format 결정 옵션. 일반적으로 로컬에서 blast를 돌리시려는 분들은 대량의 서열을 분석하기 위함이니, -m 8이 결과 파일을 분석하기 용이함,
ex) -m 8


-o Blast 결과 파일 설정하는 옵션
ex) -o your_output_file


-M blast를 실행시킬때 Matrix를 사용하게 하는 옵션. 서열과 서열을 비교하면서 weight를 주어서 peptide 서열을 검색할때 사용됨. 기본값은 BLOSUM62.
Matrix는 /your_blast_folder/data/ 밑에 있음.
ex) -M {BLOSUM62|PAM250|your_matrix}

-a CPU가 1개 이상일때 blast 수행시 하나 이상의 cpu를 사용하게 하는 옵션
ex) -a 2

Local에서 Blast 작업 돌리기


BLAST는 최근 생명공학을 하는데 기본 도구중에
하나가 되었지만 그럼에도 많은 연구자들이 BLAST를
제대로 사용하지 못하고 있는 것이 현실이다.

BLAST를 수행하는데 Database가 NCBI나 다른 여타의 사이트에서
제공안되는 Database를 이용해야만 되는 경우가 발생하면 어떻게 할 것인가?

혹은 BLAST를 해야할 Query가 수십개가 아닌 수백, 수천개라면
어떻게 할 것인가?

이런경우 자신의 컴퓨터에서 BLAST를 수행하게 된다면 원하는 작업을
손쉽고 빠르게 할 수 있다.

BLAST 프로그램은 대부분 연구자들이 알고 있듯이
NCBI에서 다운로드 받을 수 있다.
ftp://ftp.ncbi.nih.gov/blast/executables/release
위의 ftp 주소에 들어가 자신의 플랫폼에 맞는 파일을 다운로드 받으면 일단 BLAST를
수행할 수 있는 준비가 된다.

다운로드 받은 압축 파일(실행파일(*.exe)로 압축되어있는)을 풀면
bin, data, doc 세개의 폴더가 나타난다.
BLAST를 직접 수행하는 실행파일은 bin 폴더안에 있다.

기본적으로 BLAST를 사용하기 위해서 두개의 파일이 필요하다.
blastall과 formatdb이다.
blastall은 일반적인 blast, 즉 blastn, blastp, blastx, tblastx,tblastn를 수행할 때 사용된다.
formatdb는 blast를 할 수 있는 database를 만들어 주는 파일이다.
blast에 사용되는 database는 항상 ncbi나 다른 웹사이트에서 제공해주는 것이 아니기
때문에 자신만의 database를 만들 수 있어야 한다.


formatdb -i INPUT_FILE -p T|F -o T|F


- i INPUT_FILE은 fasta form을 따르는 서열들이 모인 파일이면 문제없다.
- p INPUT_FILE이 DNA서열인지  Protein 서열인지 확인하는 옵션값 protein의 경우 T
- o INPUT_FILE를 paser하는 옵션 NCBI에서 수집한 서열의 경우 -o T를 하여도 문제 없지만, NCBI의 form을 완벽하게 따르지않았다면 F 값을 사용.


blastall -p SELET_PROGRAM -i INPUT_FILE -d DATABASE_FILE -o OUTPUT_FILE  -m  OUTPUT_FORMAT


- p 어떤 blast 프로그램을 사용할지 선택
- i Query가 될 서열, 하나의 서열 혹은 다수의 서열이 하나의 파일에 존재 할 수 있다.
- d blast할 database
-o blast를 수행한 후 결과를 저장할 파일 이름을 지정한다.
-m -m 옵션을 지정하지 않으면 NCBI에서 blast를 수행한 화면을 볼 수 있다. 만약 다른 정보들은 필요 없고, 어느 서열이 어떤 서열과 유사성이 있는지 환인 할 수 있는 정보만 필요하다면 -m의 옵션값을 조절하여 원하는 정보만 저장 할 수 있다. 본인의 경우 -m 8을 많이 애용한다.