Dify 실습 (2): 웹 검색 요약 채팅플로우

웹 검색 도구인 Tavily Search를 활용해 실시간 정보를 반영하는 LLM 챗봇 구현 방법을 안내합니다.
Dec 15, 2025
Dify 실습 (2): 웹 검색 요약 채팅플로우

지난 실습에서 기본적인 LLM 챗봇을 구현해 보았다면, 이번에는 한 단계 더 나아가 웹 검색 기능을 추가하여 LLM이 실시간 최신 정보에 기반해 답변할 수 있도록 만들어 보겠습니다.

우리가 만들 흐름은 다음과 같습니다.

  1. 사용자 질문 입력

  2. Tavily Search(웹 검색 도구) 실행

  3. 검색 결과 획득

  4. LLM이 검색 결과를 요약하여 사용자에게 답변

먼저 채팅플로우로 앱을 생성해 줍니다.

초기 구조

이 기능을 구현하기 위해 우리는 외부 웹 검색 도구인 Tavily Search를 사용할 것입니다.

  • 시작 블록에 도구 추가: (+ 버튼을 누르면 편집기 화면이 나옵니다.)

  • 편집기 화면 메뉴에서 ‘도구’ 탭을 클릭합니다.

  • 도구 목록에서 Tavily Search를 찾아서 추가합니다.

API 인증키 연결

Tavily Search 블록을 클릭합니다.

  • ’API 인증키 구성’ 버튼을 클릭합니다.

  • API 키 발급 : 만약 Tavily API 키가 없다면, Tavily 공식 사이트에 접속하여 API 키를 발급받아 입력합니다.

  • 발급받은 키를 입력하고 저장하여 Tavily Search 도구를 사용할 수 있도록 인증을 완료합니다.
     

검색 Query(질문) 값 설정

  • 이제 어떤 내용을 검색할지 Tavily Search 블록에 알려줘야 합니다. 우리가 입력한 질문 그대로를 검색에 사용할 것입니다.

  • Tavily Search 블록을 다시 클릭하고 Query(검색어) 입력 칸을 찾습니다.

  • 이 칸에 시작 블록의 query 변수를 선택합니다.

    • query는 시스템 변수로 사용자가 채팅창에 입력한 원본 질문 텍스트를 담고 있습니다.

    • Country는 South Korea로 설정합니다.

LLM과 검색 결과 연결(컨텍스트 설정)

웹 검색 결과를 얻었다면, 이제 이 결과를 LLM에게 전달하여 ‘요약’이나 ‘답변 생성’의 근거 자료로 사용해야 합니다.

  • LLM 블록을 클릭합니다.

  • LLM 블록의 컨텍스트 부분에 ‘TAVILY SEARCH’ 블록을 찾아 text 변수를 선택합니다.

    • Tavily Search에서 가져온 웹 검색 결과 텍스트가 LLM 블록에 컨텍스트(참고자료)로 전달됩니다. LLM은 이 자료를 바탕으로 답변을 생성하게 됩니다.
       

시스템 프롬프트 작성 (답변 스타일 정의)

LLM이 검색 결과를 받았을 때, 어떤 스타일과 방식으로 답변을 해줘야 하는지 지시하는 단계입니다.

  • LLM 블록 내부의 ‘시스템 프롬프트’칸에 다음 예시와 같이 작성합니다.

[시스템 프롬프트 예시]

당신은 사용자에게 최신 정보를 정확하고 친절하게 전달하는 전문 웹 서처(Web Searcher)입니다.

[지침]

사용자가 입력한 질문과, 당신에게 제공된 검색 결과(Context)를 면밀히 검토하세요.

검색 결과에 기반하여 질문에 대한 답변을 간결하고 명확하게 요약하여 제공하세요.

검색 결과에 답변이 포함되어 있지 않다면, '죄송합니다. 현재 웹 검색 결과로는 해당 질문에 대한 답을 찾을 수 없습니다.'라고 답변하세요.

답변 마지막에는 답변의 근거가 된 정보가 최신 웹 검색 결과에 기반함을 언급해 주세요.

이 프롬프트를 조정하여 LLM의 답변 톤(딱딱하게, 재미있게, 전문적으로)이나 요약 방식 등을 원하는 대로 설정할 수 있습니다.

미리보기로 테스트

이제 우리가 만든 채팅 플로우가 의도대로 잘 작동하는지 테스트를 해보겠습니다.

  • 편집기 우측 상단에 있는 ‘미리보기’ 버튼을 클릭합니다.

  • 채팅창에 현재 LLM의 지식으로는 알 수 없는 최신 정보에 관한 질문을 입력합니다. (예: “2025년 최신 유행패션 트렌드 3가지를 알려줘”)

  • LLM이 웹 검색을 실행하고, 그 결과를 바탕으로 답변을 생성하는지 확인합니다.

최신 정보를 학습하지 않고도 웹 검색을 통해 실시간 정보를 제공할 수 있는 LLM 채팅플로우를 완성했습니다.

워크플로우 과정을 눌러서 TAVILY SEARCH의 검색 결과가 어떻게 나왔는지도 확인할 수 있습니다.

다음에서는 특정 사이트의 내용을 요약해서 받아보는 워크플로우를 제작해 보겠습니다.

오픈네트웍시스템 이승헌

Share article