Repolode
google-research

google-research/text-to-text-transfer-transformer

Google Research의 T5 코드베이스로, TPU에서 데이터 전처리, 학습, 파인튜닝 및 평가를 수행해 'Text-to-Text Transfer Transformer' 실험을 재현합니다.

스타
6,565
포크
800
열린 이슈
110
마지막 커밋
25일 전

어떤 프로젝트인가요?

T5는 "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer" 논문과 함께 공개된 코드베이스입니다. 모든 NLP 작업을 입력 텍스트와 출력 텍스트로 표현하며, 라이브러리는 주로 데이터셋 로드, 전처리, 혼합 및 평가 기능을 중심으로 구성되어 있습니다. 사용자는 TensorFlow Datasets, 텍스트 파일 또는 사용자 지정 소스에서 Task를 정의하고, 전처리기, SentencePiece 토큰화 및 메트릭을 지정한 뒤 여러 Task를 Mixtures로 묶어 멀티태스크 학습에 사용할 수 있습니다.

저장소에는 gin 구성 파일을 사용하는 사전 학습, 파인튜닝, 평가 및 디코딩용 명령줄 바이너리(예: t5_mesh_transformer)가 포함되어 있습니다. 주요 실행 환경은 Mesh TensorFlow를 사용하는 Google Cloud TPU이며, GPU에서 실행하는 방법도 안내합니다. 또한 PyTorch를 사용해 단일 GPU에서 파인튜닝할 수 있는 실험적인 Hugging Face Transformers shim과 T5-Small부터 T5-11B까지의 체크포인트도 제공합니다.

이 프로젝트는 더 이상 활발히 개발되지 않습니다. README에서는 새 작업에 JAX와 Flax 기반의 T5X 구현을 사용할 것을 권장합니다.

핵심 기능

  • 01Task, TfdsTask, TextLineTask를 사용해 NLP 작업을 텍스트-투-텍스트 데이터로 정의합니다.
  • 02구성 가능한 비율에 따라 여러 작업을 Mixtures로 묶어 멀티태스크 학습을 지원합니다.
  • 03사전 학습, 파인튜닝, 평가 및 디코딩용 명령줄 도구를 제공합니다.
  • 04Mesh TensorFlow를 사용해 Google Cloud TPU에서 실행하며, GPU 사용 방법도 안내합니다.
  • 05T5-Small(6천만 개)부터 T5-11B(매개변수 110억 개)까지 사전 학습된 체크포인트를 제공합니다.

활용 사례

  • 전이 학습에 관한 T5 논문의 실험을 재현합니다.
  • 공개된 T5 체크포인트를 사용자 지정 텍스트-투-텍스트 데이터셋에 파인튜닝합니다.
  • 혼합 데이터셋을 활용하는 사용자 지정 멀티태스크 NLP 학습 파이프라인을 구축합니다.
  • 시퀀스-투-시퀀스 모델의 사전 학습 목표와 데이터셋 전처리를 살펴봅니다.

빠른 시작

  1. 1

    T5 패키지 설치하기

    pip install t5[gcp]
  2. 2

    무료 Colab 튜토리얼에서 T5 사용해 보기(TPU, 로컬 설정 불필요)

  3. 3

    사용 가능한 작업과 혼합 데이터셋 목록 보기

    python -c "import t5; print(t5.data.MixtureRegistry.names())"

사용 전 알아둘 점

  • README에 따르면 MeshTF를 사용하는 TensorFlow 기반 T5는 더 이상 활발히 개발되지 않으며, 대신 T5X를 권장합니다.
  • 학습과 파인튜닝은 Google Cloud TPU와 GCP 스토리지를 기반으로 합니다.
  • C4 데이터셋을 준비하려면 약 7TB를 다운로드하고 CPU 계산을 약 335일간 수행해야 합니다.

포함된 컬렉션

토픽

자주 묻는 질문

text-to-text-transfer-transformer은(는) 무엇인가요?
Google Research의 T5 코드베이스로, TPU에서 데이터 전처리, 학습, 파인튜닝 및 평가를 수행해 'Text-to-Text Transfer Transformer' 실험을 재현합니다. T5는 "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer" 논문과 함께 공개된 코드베이스입니다. 모든 NLP 작업을 입력 텍스트와 출력 텍스트로 표현하며, 라이브러리는 주로 데이터셋 로드, 전처리, 혼합 및 평가 기능을 중심으로 구성되어 있습니다. 사용자는 TensorFlow Datasets, 텍스트 파일 또는 사용자 지정 소스에서 Task를 정의하고, 전처리기, SentencePiece 토큰화 및 메트릭을 지정한 뒤 여러 Task를 Mixtures로 묶어 멀티태스크 학습에 사용할 수 있습니다.
text-to-text-transfer-transformer은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
text-to-text-transfer-transformer은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
text-to-text-transfer-transformer은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. text-to-text-transfer-transformer의 마지막 커밋은 2026년 10월 12일입니다.
text-to-text-transfer-transformer은(는) 어디에 사용할 수 있나요?
전이 학습에 관한 T5 논문의 실험을 재현합니다. 공개된 T5 체크포인트를 사용자 지정 텍스트-투-텍스트 데이터셋에 파인튜닝합니다. 혼합 데이터셋을 활용하는 사용자 지정 멀티태스크 NLP 학습 파이프라인을 구축합니다. 시퀀스-투-시퀀스 모델의 사전 학습 목표와 데이터셋 전처리를 살펴봅니다.
text-to-text-transfer-transformer는 어떻게 설치하나요?
T5 패키지 설치하기: pip install t5[gcp] 무료 Colab 튜토리얼에서 T5 사용해 보기(TPU, 로컬 설정 불필요) 사용 가능한 작업과 혼합 데이터셋 목록 보기: python -c "import t5; print(t5.data.MixtureRegistry.names())"
text-to-text-transfer-transformer은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/google-research/text-to-text-transfer-transformer

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트