|
|
@ -56,7 +56,8 @@
|
|
|
|
"source": [
|
|
|
|
"source": [
|
|
|
|
"import os\n",
|
|
|
|
"import os\n",
|
|
|
|
"\n",
|
|
|
|
"\n",
|
|
|
|
"os.environ[\"SERPER_API_KEY\"] = \"\""
|
|
|
|
"os.environ[\"SERPER_API_KEY\"] = \"\"",
|
|
|
|
|
|
|
|
"os.environ[\"OPENAI_API_KEY\"] = \"\""
|
|
|
|
]
|
|
|
|
]
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -77,7 +78,7 @@
|
|
|
|
"from langchain.chat_models import ChatOpenAI\n",
|
|
|
|
"from langchain.chat_models import ChatOpenAI\n",
|
|
|
|
"from langchain.llms import OpenAI\n",
|
|
|
|
"from langchain.llms import OpenAI\n",
|
|
|
|
"from langchain.schema import Document\n",
|
|
|
|
"from langchain.schema import Document\n",
|
|
|
|
"from typing import Any"
|
|
|
|
"from typing import Any, List"
|
|
|
|
]
|
|
|
|
]
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -96,8 +97,8 @@
|
|
|
|
"outputs": [],
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"source": [
|
|
|
|
"class SerperSearchRetriever(BaseRetriever):\n",
|
|
|
|
"class SerperSearchRetriever(BaseRetriever):\n",
|
|
|
|
" def __init__(self, search):\n",
|
|
|
|
"\n",
|
|
|
|
" self.search = search\n",
|
|
|
|
" search: GoogleSerperAPIWrapper = None\n",
|
|
|
|
"\n",
|
|
|
|
"\n",
|
|
|
|
" def _get_relevant_documents(self, query: str, *, run_manager: CallbackManagerForRetrieverRun, **kwargs: Any) -> List[Document]:\n",
|
|
|
|
" def _get_relevant_documents(self, query: str, *, run_manager: CallbackManagerForRetrieverRun, **kwargs: Any) -> List[Document]:\n",
|
|
|
|
" return [Document(page_content=self.search.run(query))]\n",
|
|
|
|
" return [Document(page_content=self.search.run(query))]\n",
|
|
|
@ -111,7 +112,7 @@
|
|
|
|
" raise NotImplementedError()\n",
|
|
|
|
" raise NotImplementedError()\n",
|
|
|
|
"\n",
|
|
|
|
"\n",
|
|
|
|
"\n",
|
|
|
|
"\n",
|
|
|
|
"retriever = SerperSearchRetriever(GoogleSerperAPIWrapper())"
|
|
|
|
"retriever = SerperSearchRetriever(search=GoogleSerperAPIWrapper())"
|
|
|
|
]
|
|
|
|
]
|
|
|
|
},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
{
|
|
|
|