Skip to content

Arxiv

ArxivToolSpec #

Bases: BaseToolSpec

arXiv工具规范。

Source code in llama_index/tools/arxiv/base.py
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
class ArxivToolSpec(BaseToolSpec):
    """arXiv工具规范。"""

    spec_functions = ["arxiv_query"]

    def __init__(self, max_results: Optional[int] = 3):
        self.max_results = max_results

    def arxiv_query(self, query: str, sort_by: Optional[str] = "relevance"):
        """一个用于查询arxiv.org的工具
ArXiv包含各种有用的论文,可以用来回答数学和科学问题。

Args:
    query (str): 要传递给arXiv的查询。
    sort_by (str): 可以是'relevance'(默认)或'recent'
"""
        import arxiv

        sort = arxiv.SortCriterion.Relevance
        if sort_by == "recent":
            sort = arxiv.SortCriterion.SubmittedDate
        search = arxiv.Search(query, max_results=self.max_results, sort_by=sort)
        results = []
        for result in search.results():
            results.append(
                Document(text=f"{result.pdf_url}: {result.title}\n{result.summary}")
            )
        return results

arxiv_query #

arxiv_query(
    query: str, sort_by: Optional[str] = "relevance"
)

一个用于查询arxiv.org的工具 ArXiv包含各种有用的论文,可以用来回答数学和科学问题。

Parameters:

Name Type Description Default
query str

要传递给arXiv的查询。

required
sort_by str

可以是'relevance'(默认)或'recent'

'relevance'
Source code in llama_index/tools/arxiv/base.py
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    def arxiv_query(self, query: str, sort_by: Optional[str] = "relevance"):
        """一个用于查询arxiv.org的工具
ArXiv包含各种有用的论文,可以用来回答数学和科学问题。

Args:
    query (str): 要传递给arXiv的查询。
    sort_by (str): 可以是'relevance'(默认)或'recent'
"""
        import arxiv

        sort = arxiv.SortCriterion.Relevance
        if sort_by == "recent":
            sort = arxiv.SortCriterion.SubmittedDate
        search = arxiv.Search(query, max_results=self.max_results, sort_by=sort)
        results = []
        for result in search.results():
            results.append(
                Document(text=f"{result.pdf_url}: {result.title}\n{result.summary}")
            )
        return results