Python wrapper for the Tavily API
Project description
This Python wrapper allows for easy interaction with the Tavily API, offering both basic and advanced search functionalities directly from your Python programs. Easily integrate smart search capabilities into your applications, harnessing Tavily’s powerful search features.
Installing
pip install tavily-python
Usage
from tavily import Client
tavily = Client(api_key="YOUR_API_KEY")
# For basic search:
tavily.search(query="Should I invest in Apple right now?")
# For advanced search:
tavily.search(query="Should I invest in Apple right now?", search_depth="advanced")
Additional Methods
# You can easily get search result context based on any max tokens straight into your RAG.
# The response is a string of the context within the max_token limit.
tavily.get_search_context(query="What happened in the burning man floods?", search_depth="advanced", max_tokens=1500)
# You can also get a simple answer to a question including relevant sources all with a simple function call:
tavily.qna_search(query="Where does Messi play right now?")
API Methods
Client
The Client class is the entry point to interacting with the Tavily API. Kickstart your journey by instantiating it with your API key.
Methods
search(query, search_depth, **kwargs): Performs a search using the specified query. The depth of the search can be controlled by the search_depth parameter.
- get_search_context(query, search_depth, max_tokens, **kwargs): Performs a search and returns a string of content and sources within token limit. Useful for getting only related content from retrieved websites
without having to deal with context extraction and token management.
qna_search(query, **kwargs): Performs a search and returns a string containing an answer to the original query including relevant sources. Optimal to be used as a tool for AI agents.
Keyword Arguments
search_depth (str): The depth of the search. It can be “basic” or “advanced”. Default is “basic”.
max_results (int): The number of search results to return. Default is 10.
include_domains (list): A list of domains to specifically include in the search results. Default is None, which includes all domains.
exclude_domains (list): A list of domains to specifically exclude from the search results. Default is None, which doesn’t exclude any domains.
include_answer (bool): Whether or not to include answers in the search results. Default is False.
include_raw_content (bool): Whether or not to include raw content in the search results. Default is False.
Both methods internally call the _search method to communicate with the API.
Error Handling
In case of an unsuccessful HTTP request, a HTTPError will be raised.
License
This project is licensed under the terms of the MIT license.
Contact
For questions, support, or to learn more, please visit Tavily.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for tavily_python-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1696ea27d210a87781e5b5d41b65f613bbf2fd3e540a62a3e9e395c535ee64f2 |
|
MD5 | 03365fba3a38ce901e367c44d2e54cb7 |
|
BLAKE2b-256 | 09704c9fdeffc306f0bbca604ef610e2b23ccb1bcb3c04383d9451bb63cf0701 |