Tavily Python Wrapper

The Tavily Python wrapper allows for easy interaction with the Tavily API, offering the full range of our search and extract functionalities directly from your Python programs. Easily integrate smart search and content extraction capabilities into your applications, harnessing Tavily's powerful search and extract features.
Installing
pip install tavily-python
Tavily Search
Search lets you search the web for a given query.
Usage
Below are some code snippets that show you how to interact with our search API. The different steps and components of this code are explained in more detail in the API Methods section further down.
Getting and printing the full Search API response
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
response = tavily_client.search("Who is Leo Messi?")
print(response)
This is equivalent to directly querying our REST API.
Generating context for a RAG Application
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
context = tavily_client.get_search_context(query="What happened during the Burning Man floods?")
print(context)
This is how you can generate precise and fact-based context for your RAG application in one line of code.
Getting a quick answer to a question
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
answer = tavily_client.qna_search(query="Who is Leo Messi?")
print(answer)
This is how you get accurate and concise answers to questions, in one line of code. Perfect for usage by LLMs!
Extract web page content from one or more specified URLs.
Usage
Below are some code snippets that demonstrate how to interact with our Extract API. Each step and component of this code is explained in greater detail in the API Methods section below.
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
urls = [
"https://en.wikipedia.org/wiki/Artificial_intelligence",
"https://en.wikipedia.org/wiki/Machine_learning",
"https://en.wikipedia.org/wiki/Data_science",
"https://en.wikipedia.org/wiki/Quantum_computing",
"https://en.wikipedia.org/wiki/Climate_change"
]
response = tavily_client.extract(urls=urls, include_images=True)
for result in response["results"]:
print(f"URL: {result['url']}")
print(f"Raw Content: {result['raw_content']}")
print(f"Images: {result['images']}\n")
Tavily Crawl (Open-Access Beta)
Crawl lets you traverse a website's content starting from a base URL.
Note: Crawl is currently available on an invite-only basis. For more information, please visit crawl.tavily.com
Usage
Below are some code snippets that demonstrate how to interact with our Crawl API. Each step and component of this code is explained in greater detail in the API Methods section below.
Crawling a website with instructions
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
start_url = "https://wikipedia.org/wiki/Lemon"
response = tavily_client.crawl(
url=start_url,
max_depth=3,
limit=50,
instructions="Find all pages on citrus fruits"
)
for result in response["results"]:
print(f"URL: {result['url']}")
print(f"Snippet: {result['raw_content'][:200]}...\n")
Tavily Map (Open-Access Beta)
Map lets you discover and visualize the structure of a website starting from a base URL.
Usage
Below are some code snippets that demonstrate how to interact with our Map API. Each step and component of this code is explained in greater detail in the API Methods section below.
Mapping a website with instructions
from tavily import TavilyClient
tavily_client = TavilyClient(api_key="tvly-YOUR_API_KEY")
start_url = "https://wikipedia.org/wiki/Lemon"
response = tavily_client.map(
url=start_url,
max_depth=2,
limit=30,
instructions="Find pages on citrus fruits"
)
for result in response["results"]:
print(f"URL: {result['url']}")
Documentation
For a complete guide on how to use the different endpoints and their parameters, please head to our Python API Reference.
Cost
Tavily is free for personal use for up to 1,000 credits per month.
Head to the Credits & Pricing in our documentation to learn more about how many API credits each request costs.
License
This project is licensed under the terms of the MIT license.
Contact
If you are encountering issues while using Tavily, please email us at support@tavily.com. We'll be happy to help you.
If you want to stay updated on the latest Tavily news and releases, head to our Developer Community to learn more!