community[minor]: add AskNews retriever and AskNews tool (#21581)

We add a tool and retriever for the [AskNews](https://asknews.app)
platform with example notebooks.

The retriever can be invoked with:

```py
from langchain_community.retrievers import AskNewsRetriever

retriever = AskNewsRetriever(k=3)

retriever.invoke("impact of fed policy on the tech sector")
```

To retrieve 3 documents in then news related to fed policy impacts on
the tech sector. The included notebook also includes deeper details
about controlling filters such as category and time, as well as
including the retriever in a chain.

The tool is quite interesting, as it allows the agent to decide how to
obtain the news by forming a query and deciding how far back in time to
look for the news:

```py
from langchain_community.tools.asknews import AskNewsSearch
from langchain import hub
from langchain.agents import AgentExecutor, create_openai_functions_agent
from langchain_openai import ChatOpenAI

tool = AskNewsSearch()

instructions = """You are an assistant."""
base_prompt = hub.pull("langchain-ai/openai-functions-template")
prompt = base_prompt.partial(instructions=instructions)
llm = ChatOpenAI(temperature=0)
asknews_tool = AskNewsSearch()
tools = [asknews_tool]
agent = create_openai_functions_agent(llm, tools, prompt)
agent_executor = AgentExecutor(
    agent=agent,
    tools=tools,
    verbose=True,
)

agent_executor.invoke({"input": "How is the tech sector being affected by fed policy?"})
```

---------

Co-authored-by: Emre <e@emre.pm>
This commit is contained in:
Robert Caulk
2024-05-21 03:23:06 +02:00
committed by GitHub
parent fc79b372cb
commit 54adcd9e82
13 changed files with 762 additions and 0 deletions

View File

@@ -0,0 +1,221 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# AskNews\n",
"\n",
"> [AskNews](https://asknews.app) infuses any LLM with the latest global news (or historical news), using a single natural language query. Specifically, AskNews is enriching over 300k articles per day by translating, summarizing, extracting entities, and indexing them into hot and cold vector databases. AskNews puts these vector databases on a low-latency endpoint for you. When you query AskNews, you get back a prompt-optimized string that contains all the most pertinent enrichments (e.g. entities, classifications, translation, summarization). This means that you do not need to manage your own news RAG, and you do not need to worry about how to properly convey news information in a condensed way to your LLM.\n",
"> AskNews is also committed to transparency, which is why our coverage is monitored and diversified across hundreds of countries, 13 languages, and 50 thousand sources. If you'd like to track our source coverage, you can visit our [transparency dashboard](https://asknews.app/en/transparency).\n",
"\n",
"## Setup\n",
"\n",
"The integration lives in the `langchain-community` package. We also need to install the `asknews` package itself.\n",
"\n",
"```bash\n",
"pip install -U langchain-community asknews\n",
"```\n",
"\n",
"We also need to set our AskNews API credentials, which can be generated at the [AskNews console](https://my.asknews.app)."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import getpass\n",
"import os\n",
"\n",
"os.environ[\"ASKNEWS_CLIENT_ID\"] = getpass.getpass()\n",
"os.environ[\"ASKNEWS_CLIENT_SECRET\"] = getpass.getpass()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It's also helpful (but not needed) to set up [LangSmith](https://smith.langchain.com/) for best-in-class observability"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# os.environ[\"LANGCHAIN_TRACING_V2\"] = \"true\"\n",
"# os.environ[\"LANGCHAIN_API_KEY\"] = getpass.getpass()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Usage"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[Document(page_content='[1]:\\ntitle: US Stock Market Declines Amid High Interest Rates\\nsummary: The US stock market has experienced a significant decline in recent days, with the S&P 500 index falling 9.94 points or 0.2% to 4320.06. The decline was attributed to interest rates, which are expected to remain high for a longer period. The yield on 10-year Treasury notes rose to 4.44%, the highest level since 2007, which has a negative impact on stock prices. The high interest rates have also affected the technology sector, with companies such as Intel and Microsoft experiencing declines. The auto sector is also experiencing fluctuations, with General Motors and Ford experiencing declines. The labor market is also facing challenges, with workers demanding higher wages and benefits, which could lead to increased inflation. The Federal Reserve is expected to keep interest rates high for a longer period, which could have a negative impact on the stock market. Some economists expect the Fed to raise interest rates again this year, which could lead to further declines in the stock market.\\nsource: ALYAUM Holding Group for Press\\npublished: May 12 2024 13:12\\nLocation: US\\nTechnology: S&P 500\\nQuantity: 9.94 points\\nNumber: 4320.06\\nProduct: 10-year Treasury notes\\nDate: 2007, this year\\nOrganization: General Motors, Fed, Intel, Ford, Microsoft, Federal Reserve\\nclassification: Finance\\nsentiment: -1', metadata={'title': 'الأسهم الأمريكية تتطلع لتعويض خسائرها بعد موجة تراجع كبيرة', 'source': 'https://www.alyaum.com/articles/6529353/%D8%A7%D9%84%D8%A7%D9%82%D8%AA%D8%B5%D8%A7%D8%AF/%D8%A3%D8%B3%D9%88%D8%A7%D9%82-%D8%A7%D9%84%D8%A3%D8%B3%D9%87%D9%85/%D8%A7%D9%84%D8%A3%D8%B3%D9%87%D9%85-%D8%A7%D9%84%D8%A3%D9%85%D8%B1%D9%8A%D9%83%D9%8A%D8%A9-%D8%AA%D8%AA%D8%B7%D9%84%D8%B9-%D9%84%D8%AA%D8%B9%D9%88%D9%8A%D8%B6-%D8%AE%D8%B3%D8%A7%D8%A6%D8%B1%D9%87%D8%A7-%D8%A8%D8%B9%D8%AF-%D9%85%D9%88%D8%AC%D8%A9-%D8%AA%D8%B1%D8%A7%D8%AC%D8%B9-%D9%83%D8%A8%D9%8A%D8%B1%D8%A9', 'images': 'https://www.alyaum.com/uploads/images/2024/05/12/2312237.jpg'}),\n",
" Document(page_content=\"[2]:\\ntitle: US Federal Reserve's Decision to Limit Stock Market Correction\\nsummary: The Federal Reserve of the United States, led by Jerome Powell, has achieved its goal of limiting the correction of the stock market by reducing the balance of the central bank and maintaining massive liquidity injections into the markets to combat various crises that have occurred since the pandemic. Despite April's contraction of around 5%, the stock market has behaved well this week, with most indices showing increases. The Dow Jones and S&P 500 have risen almost 2% after declines of around 5% in April, while the Nasdaq has increased by 1.4% after a decline of over 4% in April. The correction is taking place in an orderly manner, and the market is trying to find a new equilibrium in asset valuations, adapted to a normalized cost of money and a moderate but positive growth framework.\\nsource: okdiario.com\\npublished: May 12 2024 04:45\\nOrganization: Federal Reserve of the United States, Dow Jones, S&P 500, Nasdaq\\nPerson: Jerome Powell\\nEvent: pandemic\\nDate: April\\nclassification: Business\\nsentiment: 1\", metadata={'title': 'Las Bolsas afrontan una corrección ordenada apoyas por la Fed de EEUU', 'source': 'https://okdiario.com/economia/reserva-federal-mantiene-liquidez-asegura-correccion-limitada-bolsas-12798172', 'images': 'https://okdiario.com/img/2023/08/25/bild-powell-subida-de-tipos-interior.jpg'}),\n",
" Document(page_content=\"[3]:\\ntitle: How the Fed's quest for transparency made markets more volatile\\nsummary: The Federal Reserve's increased transparency and communication with the public may be contributing to market volatility, according to some experts. The Fed's forecasting strategy and frequent communication may be causing \\nsource: NBC4 Washington\\npublished: May 11 2024 12:00\\nOrganization: Fed, Federal Reserve\\nclassification: Business\\nsentiment: 0\", metadata={'title': \"How the Fed's quest for transparency made markets more volatile\", 'source': 'https://www.nbcwashington.com/news/business/money-report/how-the-feds-quest-for-transparency-made-markets-more-volatile/3613897', 'images': 'https://media.nbcwashington.com/2024/05/107409380-1714652843711-gettyimages-2151006318-_s2_5018_hwe7dfbl.jpeg?quality=85&strip=all&resize=1200%2C675'})]"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from langchain_community.retrievers import AskNewsRetriever\n",
"\n",
"retriever = AskNewsRetriever(k=3)\n",
"\n",
"retriever.invoke(\"impact of fed policy on the tech sector\")"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[Document(page_content=\"[1]:\\ntitle: US Stocks End Week with Modest Gains Ahead of Inflation Data\\nsummary: US stocks ended the week with modest gains, marking another weekly advance for the three main indices, as investors evaluated comments from Federal Reserve officials and awaited crucial inflation data next week. The S&P 500 and Dow Jones experienced slight increases, while the Nasdaq closed almost unchanged. The Dow Jones recorded its largest weekly percentage gain since mid-December. Federal Reserve officials' comments generated expectations, with market participants awaiting inflation data to be released next week. The data includes the Consumer Price Index (CPI) and Producer Price Index (PPI) from the Department of Labor, which is expected to provide insight into progress towards the 2% inflation target.\\nsource: El Cronista\\npublished: May 10 2024 23:35\\nLocation: US\\nOrganization: Dow Jones, Department of Labor, Nasdaq, Federal Reserve\\nDate: next week, mid-December\\nclassification: Business\\nsentiment: 0\", metadata={'title': 'Modesta suba en los mercados a la espera de los datos de inflación', 'source': 'http://www.cronista.com/usa/wall-street-dolar/modesta-suba-en-los-mercados-a-la-espera-de-los-datos-de-inflacion', 'images': 'https://www.cronista.com/files/image/141/141554/5ff7985549d06_600_315!.jpg?s=99126c63cc44ed5c15ed2177cb022f55&d=1712540173'}),\n",
" Document(page_content=\"[2]:\\ntitle: US Stocks End Week on a High Note\\nsummary: The US stock market ended the week on a positive note, with the Dow Jones Industrial Average closing 0.32% higher at 39,512.84, the S&P 500 rising 0.16% to 5,222.68, and the Nasdaq 100 gaining 0.26% to 18,161.18. The three indices all recorded gains for the week, with the Dow leading the way with a 2.2% increase. The Federal Reserve's stance on interest rates was a key factor, with several Fed members expressing caution about cutting rates in the near future. The University of Michigan's consumer sentiment survey showed a decline in May, and consumer inflation expectations also increased, which tempered expectations for rate cuts. Despite this, the market remained resilient and ended the week on a strong note.\\nsource: Investing.com\\npublished: May 10 2024 20:19\\nLocation: US\\nQuantity: 39,512.84\\nOrganization: University of Michigan, Fed, Federal Reserve\\nDate: May\\nclassification: Business\\nsentiment: 1\", metadata={'title': 'Aktien New York Schluss: Erneut höher zum Ende einer starken Börsenwoche', 'source': 'https://de.investing.com/news/economy/aktien-new-york-schluss-erneut-hoher-zum-ende-einer-starken-borsenwoche-2618612', 'images': 'https://i-invdn-com.investing.com/news/LYNXMPED2T082_L.jpg'}),\n",
" Document(page_content=\"[3]:\\ntitle: US Stocks End Week with Slight Gain Despite Inflation Concerns\\nsummary: The US stock market ended the week with a slight gain, despite inflation expectations and skepticism from Federal Reserve members about potential interest rate cuts. The Dow Jones Industrial Average rose 0.24% to 39,480.38, while the S&P 500 gained 0.07% to 5,217.67. The Nasdaq 100 also rose 0.15% to 18,140.02. The week's performance was driven by a number of factors, including the release of inflation expectations and the comments of Federal Reserve members. The University of Michigan's consumer sentiment survey also showed a decline in May, with consumer inflation expectations rising. The stock of 3M, the best-performing Dow stock, rose 2% after analysts at HSBC upgraded it to \\nsource: Yahoo\\npublished: May 10 2024 18:11\\nLocation: US\\nOrganization: University of Michigan, 3M, HSBC, Federal Reserve\\nQuantity: 39,480.38, 5,217.67\\nDate: May\\nclassification: Business\\nsentiment: 0\", metadata={'title': 'Aktien New York: Knapp im Plus gegen Ende einer starken Börsenwoche', 'source': 'https://de.finance.yahoo.com/nachrichten/aktien-new-york-knapp-plus-181143398.html', 'images': 'https://s.yimg.com/cv/apiv2/social/images/yahoo_default_logo-1200x1200.png'})]"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# you have full control on filtering by category, time, pagination, and even the search method you use.\n",
"from datetime import datetime, timedelta\n",
"\n",
"start = (datetime.now() - timedelta(days=7)).timestamp()\n",
"end = datetime.now().timestamp()\n",
"\n",
"retriever = AskNewsRetriever(\n",
" k=3,\n",
" categories=[\"Business\", \"Technology\"],\n",
" start_timestamp=int(start), # defaults to 48 hours ago\n",
" end_timestamp=int(end), # defaults to now\n",
" method=\"kw\", # defaults to \"nl\", natural language, can also be \"kw\" for keyword search\n",
" offset=10, # allows you to paginate results\n",
")\n",
"\n",
"retriever.invoke(\"federal reserve S&P500\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Chaining\n",
"\n",
"We can easily combine this retriever in to a chain."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"import getpass\n",
"import os\n",
"\n",
"os.environ[\"OPENAI_API_KEY\"] = getpass.getpass()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"from langchain_core.output_parsers import StrOutputParser\n",
"from langchain_core.prompts import ChatPromptTemplate\n",
"from langchain_core.runnables import RunnablePassthrough\n",
"from langchain_openai import ChatOpenAI\n",
"\n",
"prompt = ChatPromptTemplate.from_template(\n",
" \"\"\"The following news articles may come in handy for answering the question:\n",
"\n",
"{context}\n",
"\n",
"Question:\n",
"\n",
"{question}\"\"\"\n",
")\n",
"chain = (\n",
" RunnablePassthrough.assign(context=(lambda x: x[\"question\"]) | retriever)\n",
" | prompt\n",
" | ChatOpenAI(model=\"gpt-4-1106-preview\")\n",
" | StrOutputParser()\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\"According to the information provided in the second news article, the impact of Federal Reserve policy on the technology sector has been negative. The article mentions that due to expectations that interest rates will remain high for a longer period, the US stock market has experienced a significant decline. This rise in interest rates has particularly affected the technology sector, with companies such as Intel and Microsoft experiencing declines. High interest rates can lead to increased borrowing costs for businesses, which can dampen investment and spending. In the technology sector, where companies often rely on borrowing to fund research and development and other growth initiatives, higher rates can be especially challenging.\\n\\nTherefore, the Federal Reserve's policy of maintaining high interest rates has had a detrimental effect on tech stocks, contributing to a decrease in their market valuations.\""
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"chain.invoke({\"question\": \"What is the impact of fed policy on the tech sector?\"})"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.9"
}
},
"nbformat": 4,
"nbformat_minor": 4
}

View File

@@ -0,0 +1,172 @@
{
"cells": [
{
"cell_type": "markdown",
"id": "a6f91f20",
"metadata": {},
"source": [
"# AskNews"
]
},
{
"cell_type": "markdown",
"id": "5e24a889",
"metadata": {},
"source": [
"> [AskNews](https://asknews.app) infuses any LLM with the latest global news (or historical news), using a single natural language query. Specifically, AskNews is enriching over 300k articles per day by translating, summarizing, extracting entities, and indexing them into hot and cold vector databases. AskNews puts these vector databases on a low-latency endpoint for you. When you query AskNews, you get back a prompt-optimized string that contains all the most pertinent enrichments (e.g. entities, classifications, translation, summarization). This means that you do not need to manage your own news RAG, and you do not need to worry about how to properly convey news information in a condensed way to your LLM.\n",
"> AskNews is also committed to transparency, which is why our coverage is monitored and diversified across hundreds of countries, 13 languages, and 50 thousand sources. If you'd like to track our source coverage, you can visit our [transparency dashboard](https://asknews.app/en/transparency).\n",
"\n",
"## Setup\n",
"\n",
"The integration lives in the `langchain-community` package. We also need to install the `asknews` package itself.\n",
"\n",
"```bash\n",
"pip install -U langchain-community asknews\n",
"```\n",
"\n",
"We also need to set our AskNews API credentials, which can be obtained at the [AskNews console](https://my.asknews.app)."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "e0b178a2-8816-40ca-b57c-ccdd86dde9c9",
"metadata": {},
"outputs": [],
"source": [
"import getpass\n",
"import os\n",
"\n",
"os.environ[\"ASKNEWS_CLIENT_ID\"] = getpass.getpass()\n",
"os.environ[\"ASKNEWS_CLIENT_SECRET\"] = getpass.getpass()"
]
},
{
"cell_type": "markdown",
"id": "1c97218f-f366-479d-8bf7-fe9f2f6df73f",
"metadata": {},
"source": [
"## Usage\n",
"\n",
"Here we show how to use the tool individually."
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "8b3ddfe9-ca79-494c-a7ab-1f56d9407a64",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\"\\n<doc>\\n[1]:\\ntitle: Market Awaits Comments From Key Fed Official\\nsummary: The market is awaiting comments from Fed Governor Christopher Waller, but it's not expected to move markets significantly. The recent Consumer Price Index (CPI) report showed slimming inflation figures, leading to a conclusion that inflation is being curbed. This has led to a 'soft landing' narrative, causing bullish sentiment in the stock market, with the Dow, S&P 500, Nasdaq, and Russell 2000 indices near all-time highs. NVIDIA is set to report earnings next week, and despite its 95% year-to-date growth, it remains a Zacks Rank #1 (Strong Buy) stock. The article also mentions upcoming economic data releases, including New and Existing Home Sales, S&P flash PMI Services and Manufacturing, Durable Goods, and Weekly Jobless Claims.\\nsource: Yahoo\\npublished: May 17 2024 14:53\\nOrganization: Nasdaq, Fed, NVIDIA, Zacks\\nPerson: Christopher Waller\\nEvent: Weekly Jobless Claims\\nclassification: Business\\nsentiment: 0\\n</doc>\\n\\n<doc>\\n[2]:\\ntitle: US futures flat as Fed comments cool rate cut optimism\\nsummary: US stock index futures remained flat on Thursday evening, following a weak finish on Wall Street, as Federal Reserve officials warned that bets on interest rate cuts were potentially premature. The Fed officials, including Atlanta Fed President Raphael Bostic, New York Fed President John Williams, and Cleveland Fed President Loretta Mester, stated that the central bank still needed more confidence to cut interest rates, and that the timing of the move remained uncertain. As a result, investors slightly trimmed their expectations for a September rate cut, and the S&P 500 and Nasdaq 100 indexes fell 0.2% and 0.3%, respectively. Meanwhile, Reddit surged 11% after announcing a partnership with OpenAI, while Take-Two Interactive and DXC Technology fell after issuing disappointing earnings guidance.\\nsource: Yahoo\\npublished: May 16 2024 20:08\\nLocation: US, Wall Street\\nDate: September, Thursday\\nOrganization: Atlanta Fed, Cleveland Fed, New York Fed, Fed, Reddit, Take-Two Interactive, DXC Technology, OpenAI, Federal Reserve\\nTitle: President\\nPerson: Loretta Mester, Raphael Bostic, John Williams\\nclassification: Business\\nsentiment: 0\\n</doc>\\n\""
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from langchain_community.tools.asknews import AskNewsSearch\n",
"\n",
"tool = AskNewsSearch(max_results=2)\n",
"tool.invoke({\"query\": \"Effect of fed policy on tech sector\"})"
]
},
{
"cell_type": "markdown",
"id": "21c5b56f-0da0-485f-b6f5-38950bae4fd0",
"metadata": {},
"source": [
"## Chaining\n",
"We show here how to use it as part of an agent. We use the OpenAI Functions Agent, so we will need to setup and install the required dependencies for that. We will also use [LangSmith Hub](https://smith.langchain.com/hub) to pull the prompt from, so we will need to install that.\n",
"\n",
"```bash\n",
"pip install -U langchain-openai langchainhub\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "a1c8ea19-7100-407d-8e8c-f037f9317255",
"metadata": {},
"outputs": [],
"source": [
"import getpass\n",
"import os\n",
"\n",
"os.environ[\"OPENAI_API_KEY\"] = getpass.getpass()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "520767b8-9e61-4485-840a-d16f1da5eb3a",
"metadata": {
"ExecuteTime": {
"end_time": "2023-10-21T13:15:37.974229Z",
"start_time": "2023-10-21T13:15:10.007898Z"
}
},
"outputs": [
{
"data": {
"text/plain": [
"{'input': 'How is the tech sector being affected by fed policy?',\n",
" 'output': 'The tech sector is being affected by federal policy in various ways, particularly in relation to artificial intelligence (AI) regulation and investment. Here are some recent news articles related to the tech sector and federal policy:\\n\\n1. The US Senate has released a bipartisan AI policy roadmap, addressing areas of consensus and disagreement on AI use and development. The roadmap includes recommendations for intellectual property reforms, funding for AI research, sector-specific rules, and transparency requirements. It also emphasizes the need for increased funding for AI innovation and investments in national defense. [Source: The National Law Review]\\n\\n2. A bipartisan group of US senators, led by Senate Majority Leader Chuck Schumer, has proposed allocating at least $32 billion over the next three years to develop AI and establish safeguards around it. The proposal aims to regulate and promote AI development to maintain US competitiveness and improve quality of life. [Source: Cointelegraph]\\n\\n3. The US administration is planning to restrict the export of advanced AI models to prevent China and Russia from accessing the technology. This move is part of efforts to protect national security and prevent the misuse of AI by foreign powers. [Source: O Cafezinho]\\n\\n4. The US and China have discussed the risks of AI technologies, with the US taking the lead in the AI arms race. The US has proposed a $32 billion increase in federal spending on AI to maintain its lead, despite concerns about stifling innovation. [Source: AOL]\\n\\nThese articles highlight the ongoing discussions and actions related to AI regulation, investment, and export restrictions that are impacting the tech sector in response to federal policy decisions.'}"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from langchain import hub\n",
"from langchain.agents import AgentExecutor, create_openai_functions_agent\n",
"from langchain_community.tools.asknews import AskNewsSearch\n",
"from langchain_openai import ChatOpenAI\n",
"\n",
"prompt = hub.pull(\"hwchase17/openai-functions-agent\")\n",
"llm = ChatOpenAI(temperature=0)\n",
"asknews_tool = AskNewsSearch()\n",
"tools = [asknews_tool]\n",
"agent = create_openai_functions_agent(llm, tools, prompt)\n",
"agent_executor = AgentExecutor(agent=agent, tools=tools)\n",
"agent_executor.invoke({\"input\": \"How is the tech sector being affected by fed policy?\"})"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "917f2045",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.9"
}
},
"nbformat": 4,
"nbformat_minor": 5
}