반응형
ி 설치
설치 도중 아래 에러 메시지가 발생한다면
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'path/collect_and_distribute_fpn_rpn_proposals_op_test.test_collect_and_dist.zip'
관리자 CMD를 실행하고 파일명 길이 제한 해제 레지스트리 추가 후 재설치
>
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'path/collect_and_distribute_fpn_rpn_proposals_op_test.test_collect_and_dist.zip'
관리자 CMD를 실행하고 파일명 길이 제한 해제 레지스트리 추가 후 재설치
>
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f
ி 실행
CLI
from transformers import PreTrainedTokenizerFast, GPT2LMHeadModel
import torch
tokenizer = PreTrainedTokenizerFast.from_pretrained("skt/kogpt2-base-v2",
bos_token='</s>', eos_token='</s>', unk_token='<unk>',
pad_token='<pad>', mask_token='<mask>')
model = GPT2LMHeadModel.from_pretrained('skt/kogpt2-base-v2')
text = '근육이 커지기 위해서는'
input_ids = tokenizer.encode(text)
gen_ids = model.generate(torch.tensor([input_ids]),
max_length=128,
repetition_penalty=2.0,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
bos_token_id=tokenizer.bos_token_id,
use_cache=True)
generated = tokenizer.decode(gen_ids[0,:].tolist())
print(generated)
opyrator launch-ui [파일명]:[메인함수]
opyrator launch-ui main:generated_text
max_length
- 키워드 입력 길이 제한 repetition_panalty
- 단어가 반복됐을 때 새로운 단어가 생성되도록 만듬
WEB GUI
opyrator 환경변수 등록 후 실행
> opyrator launch-ui [파일명]:[메인함수] from transformers import PreTrainedTokenizerFast, GPT2LMHeadModel
import torch
from pydantic import BaseModel, Field
tokenizer = PreTrainedTokenizerFast.from_pretrained("skt/kogpt2-base-v2",
bos_token='</s>', eos_token='</s>', unk_token='<unk>',
pad_token='<pad>', mask_token='<mask>')
model = GPT2LMHeadModel.from_pretrained('skt/kogpt2-base-v2')
class Input(BaseModel):
text: str = Field(
title='문장을 입력해주세요',
max_length=128
)
max_length: int = Field(
128,
ge=5,
le=128
)
repetition_penalty: float = Field(
2.0,
ge=0.0,
le=2.0
)
class Output(BaseModel):
generated_text: str
def generated_text(input: Input) -> Output:
input_ids = tokenizer.encode(input.text)
gen_ids = model.generate(torch.tensor([input_ids]),
max_length=input.max_length,
repetition_penalty=input.repetition_penalty,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
bos_token_id=tokenizer.bos_token_id,
use_cache=True)
generated = tokenizer.decode(gen_ids[0,:].tolist())
return Output(generated_text=generated)
> opyrator launch-ui GPT2:generated_text실행 후 웹 브라우저에서 Network URL 접속
- 참고
https://www.youtube.com/watch?v=FQ0vq2CBaL4
반응형
'프로그래밍' 카테고리의 다른 글
python exe 파일 만들기 (0) | 2022.01.16 |
---|---|
안드로이드 계산기 앱 제작 및 배포 (0) | 2021.07.18 |
이클립스 디버깅 (0) | 2021.01.10 |
Python 문법 정리 (0) | 2020.11.10 |
Pyqt 문법 정리 (0) | 2020.11.10 |