Skip to main content

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 TavilyClient
tavily = TavilyClient(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”.

  • topic (str): The topic of the search - can be “general”, “finance”, “code”, and “news”. Default is “general”.

  • 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.

  • include_images (bool): Whether or not to include images in the search results. Default is False.

  • use_cache (bool): Whether or not to use tavily’s cache for faster results. Default is True.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tavily-python-0.2.7.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tavily_python-0.2.7-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file tavily-python-0.2.7.tar.gz.

File metadata

  • Download URL: tavily-python-0.2.7.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.12

File hashes

Hashes for tavily-python-0.2.7.tar.gz
Algorithm Hash digest
SHA256 35544de1b52ecd6319ab087abfaef7aed27f04bed9a8778738581798f59dee10
MD5 8617977eaefcd596fd4b87fbbb98c299
BLAKE2b-256 e49ece5e81467b90b8998cd7531182637710c389b71cdf6b41cf2d6fdec09c99

See more details on using hashes here.

File details

Details for the file tavily_python-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: tavily_python-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.12

File hashes

Hashes for tavily_python-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 81528f8e9969bf5981cedda00445b284c5488b0f2fab63975cf1318f228921f9
MD5 e214c4e6ebcf815d347fbce300dbc8d1
BLAKE2b-256 4813a0e1d6aa8b9e93bcdcb4aa683b3b342679df86d39bec45451fcf5a2d3aa0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page