Harrison/arxiv tool (#3186)

Co-authored-by: leo-gan <leo.gan.57@gmail.com>
This commit is contained in:
Harrison Chase
2023-04-19 16:53:34 -07:00
committed by GitHub
parent 6e48107734
commit 68cd37175e
10 changed files with 505 additions and 186 deletions

View File

@@ -0,0 +1 @@
"""Arxiv API toolkit."""

View File

@@ -0,0 +1,24 @@
"""Tool for the Wikipedia API."""
from langchain.tools.base import BaseTool
from langchain.utilities.arxiv import ArxivAPIWrapper
class ArxivQueryRun(BaseTool):
"""Tool that adds the capability to search using the Arxiv API."""
name = "Arxiv"
description = (
"A wrapper around Arxiv. "
"Useful for getting summary of articles from arxiv.org. "
"Input should be a search query."
)
api_wrapper: ArxivAPIWrapper
def _run(self, query: str) -> str:
"""Use the Arxiv tool."""
return self.api_wrapper.run(query)
async def _arun(self, query: str) -> str:
"""Use the Arxiv tool asynchronously."""
raise NotImplementedError("ArxivAPIWrapper does not support async")