
variant_sub 함수는 입력된 문장에서 특정 단어를 다른 단어로 대체하는 함수입니다.
variant_sub 함수의 'mask' 인자는 대체할 단어를 지정하는 역할을 합니다. 예를 들어, 'mask' 인자에 '원하는 단어'를 입력하면, 입력된 문장에서 '원하는 단어'를 다른 단어로 대체합니다.
variant_sub 함수는 다양한 종류의 서브STITUE를 지원합니다. 예를 들어, 단어-level 서브STITUE, 문법-level 서브STITUE, 의미-level 서브STITUE 등이 있습니다.
variant_sub 함수의 예시 코드는 다음과 같습니다.
#hostingforum.kr
python
import torch
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
# 모델과 토크나이저 로드
model = AutoModelForSeq2SeqLM.from_pretrained("t5-base")
tokenizer = AutoTokenizer.from_pretrained("t5-base")
# 입력 문장
input_text = "나는 오늘 학교에 갔다."
# 대체할 단어
mask = "학교"
# variant_sub 함수 호출
output = variant_sub(input_text, mask, tokenizer, model)
# 출력 문장
print(output)
variant_sub 함수는 다음과 같이 정의할 수 있습니다.
#hostingforum.kr
python
def variant_sub(input_text, mask, tokenizer, model):
# 토크나이저로 입력 문장을 토큰화
inputs = tokenizer(input_text, return_tensors="pt")
# 모델로 토큰화된 입력을 처리
outputs = model.generate(**inputs)
# 토크나이저로 모델의 출력을 토큰화
decoded = tokenizer.decode(outputs[0], skip_special_tokens=True)
# 대체할 단어를 찾아 대체
start_idx = decoded.find(mask)
end_idx = start_idx + len(mask)
decoded = decoded[:start_idx] + "대체할 단어" + decoded[end_idx:]
return decoded
위 코드는 variant_sub 함수를 정의하고, 입력 문장에서 특정 단어를 다른 단어로 대체하는 예시를 제공합니다.
2025-07-04 18:59