작성
·
223
0
안녕하세요. 강의를 듣던 중 유트뷰에서 라마 3(Llama 3)로 AI 텍스트 번역하기 - 무료로 ChatGPT보다 뛰어난 성능의 AI 번역챗봇 만들기를 듣고 따라해 보던 중 소스코드가 실행이 안되어서 문의드립니다.
에러가 나는 부분은 아래입니다.
llama3_translatation_text = generate_response(system_message="너는 번역을 수행하는 챗봇이야. 다음 내용을 번역해줘.",
user_message=eng_text)
print(llama3_translatation_text)
오류 메시지는 처음에는 아래와 같았습니다.
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's attention_mask
to obtain reliable results. Setting pad_token_id
to eos_token_id
:2 for open-end generation.'
그리고 최근에는 아래와 같습니다.
ValueError: Cannot use apply_chat_template() because tokenizer.chat_template is not set and no template argument was passed! For information about writing templates and setting the tokenizer.chat_template attribute, please see the documentation at https://huggingface.co/docs/transformers/main/en/chat_templating
여러 가지를 찾아 봐도 해결을 못해서 문의드립니다.
그럼 수고하세요.
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다. 윤종웅님.
Llama 모델을 사용하는 중 발생하는 문제에 대해 몇 가지 해결 방법을 추천해드립니다.
해당 문제는 모델의 마스크 설정 및 tokenizer와 관련된 문제로 보입니다. 유사한 경우에 대한 기존 답변들을 참고하여 몇 가지 해결책과 링크를 제공해 드리겠습니다.
attention_mask
및 pad_token_id
설정 문제먼저, 모델의 attention_mask
와 pad_token_id
를 명시적으로 설정해야 할 필요가 있습니다. 관련해서 아래 링크를 참고해보시기 바랍니다.
따라서, 아래와 같이 코드를 수정해보세요:
generate_response(
system_message="너는 번역을 수행하는 챗봇이야. 다음 내용을 번역해줘.",
user_message=eng_text,
pad_token_id=tokenizer.eos_token_id
)
apply_chat_template
문제다음으로, tokenizer.chat_template
속성이 설정되지 않았다는 에러입니다. 이 문제는 챗봇 템플릿 관련 설정을 올바르게 지정하지 않았을 가능성이 높습니다.
아래와 같이 llama3_translator
의 tokenizer 템플릿을 설정해야 할 수 있습니다:
tokenizer.chat_template = "You are a chatbot performing translations. Translate the following content:"
다같이 조합해보면, 다음과 같은 최종 코드가 될 수 있습니다:
# 템플릿 설정
tokenizer.chat_template = "너는 번역을 수행하는 챗봇이야. 다음 내용을 번역해줘."
llama3_translatation_text = generate_response(
system_message=tokenizer.chat_template,
user_message=eng_text,
pad_token_id=tokenizer.eos_token_id
)
print(llama3_translatation_text)
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.