1. 학습
  2. /
  3. 강의
  4. /
  5. Python으로 챗봇 만들기

Connected

연습 문제

spaCy의 파서를 사용해 역할 지정하기

이 연습 문제에서는 spaCy의 강력한 구문 파서를 사용해 사용자 메시지에 포함된 엔티티에 역할(role)을 지정해 보겠습니다. 이를 위해 find_parent_item()과 assign_colors()라는 두 함수를 정의합니다. 이렇게 하면 영상에서 Alan이 했던 것처럼 파스 트리를 활용해 역할을 할당하게 됩니다.

단어의 조상 토큰은 .ancestors 속성을 통해 접근할 수 있다는 점을 기억하세요.

지침

100 XP
  • 메시지 "let's see that jacket in red and some blue jeans"를 nlp 객체에 전달해 doc이라는 spacy 문서를 생성하세요.
  • find_parent_item(word) 함수에서 각 word의 ancestors를 순회하면서 entity_type()이 "item"인 토큰을 찾을 때까지 반복하세요.
  • assign_colors(doc) 함수에서 doc을 순회하다가 entity_type이 "color"인 토큰을 찾으면, 해당 word의 부모 아이템을 찾으세요.
  • 생성한 spacy 문서를 assign_colors() 함수에 전달하세요.