Documentation Index
Fetch the complete documentation index at: https://docs.camel-ai.org/llms.txt
Use this file to discover all available pages before exploring further.
_process_response
def _process_response(response, return_type: str):
Process the response based on the specified return type.
This helper method processes the API response and returns the content
in the specified format, which could be a string, a dictionary, or
both.
Parameters:
- response: The response object returned by the API call.
- return_type (str): Specifies the format of the return value. It can be “string” to return the response as a string, “dicts” to return it as a dictionary, or “both” to return both formats as a tuple.
Returns:
Union[str, dict, Tuple[str, dict]]: The processed response,
formatted according to the return_type argument. If “string”,
returns the response as a string. If “dicts”, returns the
response as a dictionary. If “both”, returns a tuple
containing both formats.
Raises:
- ValueError: If the return_type provided is invalid.
class AskNewsToolkit(BaseToolkit):
A class representing a toolkit for interacting with the AskNews API.
This class provides methods for fetching news, stories, and other content
based on user queries using the AskNews API.
init
def __init__(self, timeout: Optional[float] = None):
Initialize the AskNewsToolkit with API clients.The API keys and
credentials are retrieved from environment variables.
get_news
def get_news(
self,
query: str,
n_articles: int = 10,
return_type: Literal['string', 'dicts', 'both'] = 'string',
method: Literal['nl', 'kw'] = 'kw'
):
Fetch news or stories based on a user query.
Parameters:
- query (str): The search query for fetching relevant news.
- n_articles (int): Number of articles to include in the response. (default: :obj:
10)
- return_type (
Literal["string", "dicts", "both"]): The format of the return value. (default: :obj:"string")
- method (
Literal["nl", "kw"]): The search method, either “nl” for natural language or “kw” for keyword search. (default: :obj:"kw")
Returns:
Union[str, dict, Tuple[str, dict]]: A string, dictionary,
or both containing the news or story content, or error message
if the process fails.
get_stories
def get_stories(
self,
query: str,
categories: List[Literal['Politics', 'Economy', 'Finance', 'Science', 'Technology', 'Sports', 'Climate', 'Environment', 'Culture', 'Entertainment', 'Business', 'Health', 'International']],
reddit: int = 3,
expand_updates: bool = True,
max_updates: int = 2,
max_articles: int = 10
):
Fetch stories based on the provided parameters.
Parameters:
- query (str): The search query for fetching relevant stories.
- categories (list): The categories to filter stories by.
- reddit (int): Number of Reddit threads to include. (default: :obj:
3)
- expand_updates (bool): Whether to include detailed updates. (default: :obj:
True)
- max_updates (int): Maximum number of recent updates per story. (default: :obj:
2)
- max_articles (int): Maximum number of articles associated with each update. (default: :obj:
10)
Returns:
Union[dict, str]: A dictionary containing the stories and their
associated data, or error message if the process fails.
get_web_search
def get_web_search(
self,
queries: List[str],
return_type: Literal['string', 'dicts', 'both'] = 'string'
):
Perform a live web search based on the given queries.
Parameters:
- queries (List[str]): A list of search queries.
- return_type (
Literal["string", "dicts", "both"]): The format of the return value. (default: :obj:"string")
Returns:
Union[str, dict, Tuple[str, dict]]: A string,
dictionary, or both containing the search results, or
error message if the process fails.
search_reddit
def search_reddit(
self,
keywords: List[str],
n_threads: int = 5,
return_type: Literal['string', 'dicts', 'both'] = 'string',
method: Literal['nl', 'kw'] = 'kw'
):
Search Reddit based on the provided keywords.
Parameters:
- keywords (List[str]): The keywords to search for on Reddit.
- n_threads (int): Number of Reddit threads to summarize and return. (default: :obj:
5)
- return_type (
Literal["string", "dicts", "both"]): The format of the return value. (default: :obj:"string")
- method (
Literal["nl", "kw"]): The search method, either “nl” for natural language or “kw” for keyword search. (default: :obj:"kw")
Returns:
Union[str, dict, Tuple[str, dict]]: The Reddit search
results as a string, dictionary, or both, or error message if
the process fails.
query_finance
def query_finance(
self,
asset: Literal['bitcoin', 'ethereum', 'cardano', 'uniswap', 'ripple', 'solana', 'polkadot', 'polygon', 'chainlink', 'tether', 'dogecoin', 'monero', 'tron', 'binance', 'aave', 'tesla', 'microsoft', 'amazon'],
metric: Literal['news_positive', 'news_negative', 'news_total', 'news_positive_weighted', 'news_negative_weighted', 'news_total_weighted'] = 'news_positive',
return_type: Literal['list', 'string'] = 'string',
date_from: Optional[datetime] = None,
date_to: Optional[datetime] = None
):
Fetch asset sentiment data for a given asset, metric, and date
range.
Parameters:
- asset (Literal): The asset for which to fetch sentiment data.
- metric (Literal): The sentiment metric to analyze.
- return_type (
Literal["list", "string"]): The format of the return value. (default: :obj:"string")
- date_from (datetime, optional): The start date and time for the data in ISO 8601 format.
- date_to (datetime, optional): The end date and time for the data in ISO 8601 format.
Returns:
Union[list, str]: A list of dictionaries containing the datetime
and value or a string describing all datetime and value pairs
for providing quantified time-series data for news sentiment
on topics of interest, or an error message if the process
fails.
Returns:
List[FunctionTool]: A list of FunctionTool objects representing
the functions in the toolkit.
class AsyncAskNewsToolkit(BaseToolkit):
A class representing a toolkit for interacting with the AskNews API
asynchronously.
This class provides methods for fetching news, stories, and other
content based on user queries using the AskNews API.
init
Initialize the AsyncAskNewsToolkit with API clients.The API keys
and credentials are retrieved from environment variables.
Returns:
List[FunctionTool]: A list of FunctionTool objects representing
the functions in the toolkit.