diff --git a/searx/engines/tavily.py b/searx/engines/tavily.py
index e4c77fe83..1abd1dee0 100644
--- a/searx/engines/tavily.py
+++ b/searx/engines/tavily.py
@@ -6,7 +6,7 @@
Before reporting an issue with this engine,
please consult `API error codes`_.
-Tavily_ search API (AI engine). This engine implements the REST API
+Tavily_ search API (AI engine). This engine implements the REST API
(`POST /search`_) and does not make use of the `Tavily Python Wrapper`_.
From the API response, this engine generates *result items* (shown in the main
@@ -17,7 +17,7 @@ into an *infobox result*.
.. attention::
AI queries take considerably longer to process than queries to conventional
- search engines. The ``timeout`` should therefore also be set considerably
+ search engines. The ``timeout`` should therefore also be set considerably
higher, but it is not recommended to activate AI queries by default
(set ``disabled: true``), as otherwise all user searches will have to wait
for the AI.
@@ -93,7 +93,7 @@ about = {
"official_api_documentation": "https://docs.tavily.com/docs/rest-api/api-reference",
"use_official_api": True,
"require_api_key": True,
- "results": 'JSON',
+ "results": "JSON",
}
search_url = "https://api.tavily.com/search"
@@ -104,31 +104,31 @@ api_key: str = "unset"
"""Tavily API Key (`Getting started`_)."""
search_depth: str = "basic"
-"""The depth of the search. It can be ``basic`` or ``advanced``. Default is
+"""The depth of the search. It can be ``basic`` or ``advanced``. Default is
``basic`` unless specified otherwise in a given method.
- have an eye on your `Tavily API Credit Deduction`_!
"""
topic: str = ""
-"""The category of the search. This will determine which of Tavily's agents
-will be used for the search. Currently, only ``general`` and ``news`` are
+"""The category of the search. This will determine which of Tavily's agents
+will be used for the search. Currently, only ``general`` and ``news`` are
supported."""
days: int = 3
"""The number of days back from the current date to include in the search results.
-This specifies the time frame of data to be retrieved. Please note that this
+This specifies the time frame of data to be retrieved. Please note that this
feature is only available when using the ``news`` search topic. Default is 3."""
max_results: int = 5
-"""The maximum number of search results to return. Default is 5."""
+"""The maximum number of search results to return. Default is 5."""
include_answer: bool = True
"""Include a short answer to the original query, generated by an LLM based on Tavily's
search results."""
include_images: bool = False
-"""Include a list of query-related images in the response. Creates an infobox
+"""Include a list of query-related images in the response. Creates an infobox
with the first image (as far as there are any images in the response) and the answer,
if ``include_answer`` is also enabled.
"""
@@ -185,9 +185,9 @@ def response(resp):
for result in data.get("results", []):
results.append(
{
- "title": result['title'],
+ "title": result["title"],
"url": result["url"],
- "content": f"[{gettext('ai')}] {result['content']}",
+ "content": "[" + gettext("ai") + "] " + result["content"],
"publishedDate": _parse_date(result.get("published_date")),
}
)
@@ -195,18 +195,18 @@ def response(resp):
img_list = data.get("images")
if img_list:
result = {
- "infobox": f"Tavily [{gettext('ai')}]",
+ "infobox": "Tavily [" + gettext("ai") + "]",
"img_src": img_list[0],
}
content = data.get("answer")
if isinstance(img_list[0], dict):
result["img_src"] = img_list[0]["url"]
- img_caption = f"{gettext('Image caption')}: {img_list[0]['description']}"
+ img_caption = gettext("Image caption") + ": " + img_list[0]["description"]
if not content:
result["content"] = img_caption
else:
- result["content"] = f"{content}
{img_caption}"
+ result["content"] = content + "//" + img_caption
elif content:
result["content"] = content