소개
지난 번에는 특정한 링크의 RSS를 이용해서 텔레그램으로 요약본을 받아보는 사례를 작성했는데요. 마침 저번에 네이버 검색 API에 대해서 다루어주셔서 이를 활용 실습을 진행해보았습니다. 아무래도 조금 더 다양한 채널이 통합되어 있다보니, 폭넓은 뉴스에 접근이 가능하지 않을까 싶어 시도했습니다.
진행 방법
기존에 RSS Read를 통해서 특정 링크의 내용을 받아오는 기능을 네이버 검색 API가 수행하도록 하는 것이 주요 변경 사항이었고, 그 외에 큰 틀은 바뀌지 않았습니다. 스터디장님께서 공유해주신 노션 가이드를 읽어보면서 하나하나 따라해보니 크게 어려운 사항은 없었습니다.
네이버 개발자 센터 (https://developers.naver.com/apps/#/list) 에서 "Application 등록"이라는 기능을 통해 Client ID와 Secret을 발급 받았고, 이 내용을 HTTP Request 노드에 기입했습니다.
query 파라미터에 들어갈 검색어는 '노동법'보다는 조금 더 넓은 범위에서 뉴스를 찾을 수 있게 '근로자'로 설정해두었고, 50개의 결과를 가져와서 날짜 순으로 배 열될 수 있도록 했습니다. RSS처럼 각 아이템을 분리된 상태로 가져오지 않고 하나의 통합된 아이템으로 불러오다 보니, Aggregate 노드 없이도 하나의 텍스트로 만들 수 있는 것을 확인할 수 있었습니다.
Basic LLM Chain에 들어가는 프롬프트는 지난 사례에서 객체에 대한 설명, 분류 규칙, 날짜 표기법 등 일부만 살짝 바꾸는 방향으로 수정하였습니다. 특히 분류 규칙에 맞지 않는 기사는 아예 제외하도록 요청했습니다.
그 결과 위와 같이 정돈된 텍스트로 텔레그램 메시지를 받아볼 수 있었습니다! 뉴스 링크도 검증해본 결과 모두 맞게 들어가 있고, 이전에 실습했을 때보다 더욱 명료하게 메시지가 구성되어 있습니다.
결과와 배운 점
API를 활용해보니 심플한 노드 구성만으로도 메시지까지 구현해볼 수 있어서 좋았습니다. 커버할 수 있는 뉴스의 범위를 더욱 늘리기 위해 검색어를 조금 더 다양하게 해서, 수 차례의 검색 결과에서 도출된 내용을 하나로 통합시키는 과정도 가능할 것 같다는 생각이 들었습니다. 이 뿐 아니라 RSS로 받는 뉴스도 별도 워크플로우로 작동시켜서, 함께 통합 메시지에 포함하는 방향도 구현할 수 있지 않을까 합니다.
개인적으로는 여러 업무와 해외 출장 등으로 이번 기수 스터디에 시간을 온전히 투자하지 못해서 정말 아쉬웠지만, 세심하게 자료 준비해주시고 꼼꼼히 설명해주셔서 지금까지 잘 따라올 수 있었습니다. 하루에 일정 시간을 정해놓고 n8n으로 여러 시도를 해보려고 하고, 지속적으로 하려면 셀프 호스팅도 해볼까 하는 욕심도 듭니다. 앞으로 어떻게 활용해볼지 더 생각해보겠습니다. 감사합니다!