YYYEJI

[MAC] 웹 검색을 도와주는 API 서비스 타빌리(Tavily)란? 본문

AI

[MAC] 웹 검색을 도와주는 API 서비스 타빌리(Tavily)란?

YEJI ⍢ 2025. 7. 24. 14:22
728x90

안녕하세요! 송로지입니다 🌷

빅데이터 캠프하다가 알게 된 타빌리(Tavily)에 대해서 소개합니다!

(빅데이터 캠프에서 한 활동 다 정리할 예정인데 ,,

이 부분은 어쩌다보니 미리 작성해요,, ㅎㅎ)

 

 

Tavily웹 검색 API 서비스를 제공하는 플랫폼이에요.

쉽게 말하면, 사람이 구글에 검색을 하듯 AI나 프로그램이 인터넷 정보를 검색할 수 있게 해주는 도구예요. ⚒️

 

예를 들어, 어떤 질문에 대해 최신 정보를 찾아야 할 때, LLM(Large Language Model)은 과거 정보만 알고 있으니까 한계가 있는데,

이때 Tavily를 쓰면, 실제 웹에서 정보를 검색해서 그 결과를 AI에게 전달해줄 수 있어요.

 

 

아래 웹사이트에 방문해서 로그인을 하시면 

 

Tavily AI

 

app.tavily.com

1,000회까지 API KEY를 무료로 사용하실 수 있어요~!

 

 

로그인에 성공하시면 API key를 바로 보이실거에요.

Key를 사용하실 때는 항상 조심 그리고 또 조심하세요 ‼️

 

 

↓↓↓   Tavily API 사용해보기  ↓↓↓

 

우선 기본적으로 Env 환경변수를 세팅해줬습니다.!

!pip install python-dotenv
!pip install tavily-python langchain-community langchain-openai

.env 파일을 업로드했고 key 값을 안전하게 사용해요!

(이 key 값은 tavily에서 key 값이 아닌 azure에서 받은 key 값입니다)

 

 

그리고 기본 라이브러리로 선언해줬구요

from dotenv import load_dotenv
load_dotenv()

import os
from glob import glob

from pprint import pprint
import json

 

 

 

우선 사용할 도구를 정의해줘요 ⚖️

from langchain_community.tools import TavilySearchResults

tool = TavilySearchResults(
        max_results=5,              # 최대 5개까지 반환 가능
        search_depth="advanced",    # basic: 표면적으로만 검색하고 끝, advanced: 좀 더 깊숙히 검색
        include_answer=True,        # 결과에 직접적인 영향
        include_raw_content=True,   # 정제되지 않는 원천소스(row_content) 리턴
        include_images=True, 
        )

 

기본적으로 선언해줘야 되는 속성들이에요

 

 

 

저는 이 코드를 실행했을 때 에러를 받았어요!

당연하죠 ,,, 타빌리 API KEY 설정을 안 해줬거든요,, ㅎㅎ

 

 

.env 파일에 TAVILY_API_KEY=***로 제 키 값을 넣어줬고, 

load_dotenv()를 다시 실행해줬어요 

 

 

그리고 코드를 실행시켜면 아무 에러도 뜨지 않아요!

YayyyyaYayyyyyyyyyyy 🎊

 

 

 

아래 코드와 같이 invoke 함수로 쿼리를 주게되면!

result = tool.invoke("한국 시장에서 거래되는 ETF 종목은 모두 몇 개인가요?")
pprint(result)

웹서치를 아주 잘해주는 걸 확인할 수 있습니다!!

 

 

 

에이아이가 검색할 수 있는 웹이라니 ,, 흥미롭네요 ~,,

이때 사용되는 알고리즘인데 굉장히 복잡해보이네요 ,,,

 

 

즉 Tavily는 웹 검색 API이고,

RAG(Retriever Augmented Generation)에서 자주 사용된다고 해요~

728x90