Transformers.js: 로컬 웹에서 약 700개의 AI 매크로 모델 실행

최신 AI 리소스9개월 전 업데이트 AI 공유 서클
11.1K 00

일반 소개

트랜스포머.js는 사용자가 서버 지원 없이 브라우저에서 직접 최첨단 머신 러닝 모델을 실행할 수 있도록 Hugging Face에서 개발한 JavaScript 라이브러리입니다. 이 라이브러리는 기능적으로 Hugging Face의 Python용 트랜스포머 라이브러리와 동일하며 자연어 처리, 컴퓨터 비전, 음성 인식과 같은 작업을 포괄하는 광범위한 사전 학습된 모델을 지원합니다. transformers.js는 ONNX 런타임을 사용하여 모델을 실행하고 CPU와 WebGPU 모두에서 실행을 지원하며 효율적인 효율적인 모델 변환 및 정량화 도구를 제공하여 PyTorch, TensorFlow 또는 JAX 모델을 ONNX 형식으로 변환하고 브라우저에서 실행할 수 있습니다.

 

기능 목록

  • 자연어 처리(NLP)텍스트 분류, 명명된 개체 인식, 질문 및 답변 시스템, 언어 모델링, 요약 생성, 번역, 객관식 및 텍스트 생성 등 다양한 기능을 제공합니다.
  • 컴퓨터 비전이미지 분류, 대상 감지, 이미지 분할 및 깊이 추정.
  • 음성 인식자동 음성 인식, 오디오 분류 및 텍스트 음성 변환.
  • 멀티모달 작업임베딩, 제로 샘플 오디오 분류, 제로 샘플 이미지 분류, 제로 샘플 타겟 감지 등 다양한 기능을 제공합니다.
  • 모델 변환 및 정량화파이토치, 텐서플로우 또는 JAX 모델을 ONNX 형식으로 변환하고 정량화하여 성능을 최적화할 수 있도록 지원합니다.
  • 웹 GPU 지원지원되는 브라우저에서 WebGPU로 모델을 실행하여 계산 효율성을 높입니다.

 

도움말 사용

마운팅

Transformers.js는 NPM을 통해 설치하거나 CDN 또는 정적 호스팅을 통해 브라우저에서 사용할 수 있습니다. 설치 단계는 다음과 같습니다:

NPM 설치

npm i @huggingface/transformers

CDN 사용량

HTML 파일에 다음 스크립트 태그를 추가합니다:

<script type="module">
import { pipeline } from 'https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.1.0';
</script>

사용 예

Transformers.js는 파이썬 버전의 트랜스포머 라이브러리와 유사한 파이프라인 API를 제공하므로 모델을 매우 쉽게 사용할 수 있습니다. 다음은 일반적인 작업의 몇 가지 예입니다:

감정 분석

import { pipeline } from '@huggingface/transformers';
// 分配一个情感分析的 pipeline
const pipe = await pipeline('sentiment-analysis');
const out = await pipe('I love transformers!');
// 输出: [{'label': 'POSITIVE', 'score': 0.999817686}]

다양한 모델 사용

모델 ID 또는 경로를 지정하여 다른 모델을 사용할 수 있습니다:

const pipe = await pipeline('sentiment-analysis', 'Xenova/bert-base-multilingual-uncased-sentiment');

WebGPU에서 모델 실행

const pipe = await pipeline('sentiment-analysis', 'Xenova/distilbert-base-uncased-finetuned-sst-2-english', { device: 'webgpu' });

모델 변환 및 정량화

Transformers.js는 파이토치, 텐서플로우 또는 JAX 모델을 ONNX 형식으로 변환하고 정량화하여 성능을 최적화하는 기능을 지원합니다. 아래는 변환 및 정량화의 예시입니다:

python -m scripts.convert --quantize --model_id bert-base-uncased

변환된 파일은 ./models/ 디렉토리를 포함하여 model.onnx 노래로 응답 model_quantized.onnx 문서화.

샘플 애플리케이션

Transformers.js는 사용자가 빠르게 시작할 수 있도록 몇 가지 샘플 애플리케이션을 제공합니다:

  • 위스퍼 웹: 음성 인식
  • 두들 대시: 실시간 스케치 인식 게임
  • 코드 놀이터: 브라우저 내 코드 완성
  • 시맨틱 이미지 검색: 텍스트 검색 이미지
  • 텍스트 음성 변환: 텍스트 음성 변환
© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...