Spaces:
Sleeping
Sleeping
Add arXiv search tool and dependencies
Browse files- pyproject.toml +2 -0
- tools/arxiv_search.py +18 -0
- uv.lock +50 -0
pyproject.toml
CHANGED
|
@@ -5,6 +5,7 @@ description = "Add your description here"
|
|
| 5 |
readme = "README.md"
|
| 6 |
requires-python = ">=3.12"
|
| 7 |
dependencies = [
|
|
|
|
| 8 |
"google-genai>=1.22.0",
|
| 9 |
"gradio>=5.34.2",
|
| 10 |
"langchain-community>=0.3.26",
|
|
@@ -12,6 +13,7 @@ dependencies = [
|
|
| 12 |
"langgraph>=0.4.10",
|
| 13 |
"numexpr>=2.11.0",
|
| 14 |
"pandas>=2.3.0",
|
|
|
|
| 15 |
"python-dotenv>=1.1.1",
|
| 16 |
"requests>=2.32.4",
|
| 17 |
"wikipedia>=1.4.0",
|
|
|
|
| 5 |
readme = "README.md"
|
| 6 |
requires-python = ">=3.12"
|
| 7 |
dependencies = [
|
| 8 |
+
"arxiv>=2.2.0",
|
| 9 |
"google-genai>=1.22.0",
|
| 10 |
"gradio>=5.34.2",
|
| 11 |
"langchain-community>=0.3.26",
|
|
|
|
| 13 |
"langgraph>=0.4.10",
|
| 14 |
"numexpr>=2.11.0",
|
| 15 |
"pandas>=2.3.0",
|
| 16 |
+
"pymupdf>=1.26.1",
|
| 17 |
"python-dotenv>=1.1.1",
|
| 18 |
"requests>=2.32.4",
|
| 19 |
"wikipedia>=1.4.0",
|
tools/arxiv_search.py
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from langchain_community.retrievers import ArxivRetriever
|
| 2 |
+
from langchain_core.tools.retriever import create_retriever_tool
|
| 3 |
+
|
| 4 |
+
retriever = ArxivRetriever(
|
| 5 |
+
arxiv_search=None,
|
| 6 |
+
arxiv_exceptions=None,
|
| 7 |
+
load_max_docs=2,
|
| 8 |
+
get_full_documents=True,
|
| 9 |
+
)
|
| 10 |
+
|
| 11 |
+
arxiv_tool = create_retriever_tool(
|
| 12 |
+
retriever=retriever,
|
| 13 |
+
name="arxiv_search",
|
| 14 |
+
description="Useful for searching academic papers on arXiv. Input should be a search query."
|
| 15 |
+
)
|
| 16 |
+
|
| 17 |
+
if __name__ == "__main__":
|
| 18 |
+
print(arxiv_tool.invoke("What is the ImageBind model?"))
|
uv.lock
CHANGED
|
@@ -111,6 +111,19 @@ wheels = [
|
|
| 111 |
{ url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c", size = 100916, upload-time = "2025-03-17T00:02:52.713Z" },
|
| 112 |
]
|
| 113 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 114 |
[[package]]
|
| 115 |
name = "attrs"
|
| 116 |
version = "25.3.0"
|
|
@@ -307,6 +320,18 @@ wheels = [
|
|
| 307 |
{ url = "https://files.pythonhosted.org/packages/59/4a/e17764385382062b0edbb35a26b7cf76d71e27e456546277a42ba6545c6e/fastapi-0.115.13-py3-none-any.whl", hash = "sha256:0a0cab59afa7bab22f5eb347f8c9864b681558c278395e94035a741fc10cd865", size = 95315, upload-time = "2025-06-17T11:49:44.106Z" },
|
| 308 |
]
|
| 309 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 310 |
[[package]]
|
| 311 |
name = "ffmpy"
|
| 312 |
version = "0.6.0"
|
|
@@ -339,6 +364,7 @@ name = "final-assignment-template"
|
|
| 339 |
version = "0.1.0"
|
| 340 |
source = { virtual = "." }
|
| 341 |
dependencies = [
|
|
|
|
| 342 |
{ name = "google-genai" },
|
| 343 |
{ name = "gradio" },
|
| 344 |
{ name = "langchain", extra = ["google-genai"] },
|
|
@@ -346,6 +372,7 @@ dependencies = [
|
|
| 346 |
{ name = "langgraph" },
|
| 347 |
{ name = "numexpr" },
|
| 348 |
{ name = "pandas" },
|
|
|
|
| 349 |
{ name = "python-dotenv" },
|
| 350 |
{ name = "requests" },
|
| 351 |
{ name = "wikipedia" },
|
|
@@ -353,6 +380,7 @@ dependencies = [
|
|
| 353 |
|
| 354 |
[package.metadata]
|
| 355 |
requires-dist = [
|
|
|
|
| 356 |
{ name = "google-genai", specifier = ">=1.22.0" },
|
| 357 |
{ name = "gradio", specifier = ">=5.34.2" },
|
| 358 |
{ name = "langchain", extras = ["google-genai"], specifier = ">=0.3.26" },
|
|
@@ -360,6 +388,7 @@ requires-dist = [
|
|
| 360 |
{ name = "langgraph", specifier = ">=0.4.10" },
|
| 361 |
{ name = "numexpr", specifier = ">=2.11.0" },
|
| 362 |
{ name = "pandas", specifier = ">=2.3.0" },
|
|
|
|
| 363 |
{ name = "python-dotenv", specifier = ">=1.1.1" },
|
| 364 |
{ name = "requests", specifier = ">=2.32.4" },
|
| 365 |
{ name = "wikipedia", specifier = ">=1.4.0" },
|
|
@@ -1499,6 +1528,21 @@ wheels = [
|
|
| 1499 |
{ url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" },
|
| 1500 |
]
|
| 1501 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1502 |
[[package]]
|
| 1503 |
name = "python-dateutil"
|
| 1504 |
version = "2.9.0.post0"
|
|
@@ -1662,6 +1706,12 @@ wheels = [
|
|
| 1662 |
{ url = "https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl", hash = "sha256:de78a3b8e0feda74cabc54aab2da702113e33ac9d9eb9d2389bcf1f58b7d9177", size = 15552, upload-time = "2022-05-26T13:35:21.206Z" },
|
| 1663 |
]
|
| 1664 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1665 |
[[package]]
|
| 1666 |
name = "shellingham"
|
| 1667 |
version = "1.5.4"
|
|
|
|
| 111 |
{ url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c", size = 100916, upload-time = "2025-03-17T00:02:52.713Z" },
|
| 112 |
]
|
| 113 |
|
| 114 |
+
[[package]]
|
| 115 |
+
name = "arxiv"
|
| 116 |
+
version = "2.2.0"
|
| 117 |
+
source = { registry = "https://pypi.org/simple" }
|
| 118 |
+
dependencies = [
|
| 119 |
+
{ name = "feedparser" },
|
| 120 |
+
{ name = "requests" },
|
| 121 |
+
]
|
| 122 |
+
sdist = { url = "https://files.pythonhosted.org/packages/0b/16/3d72446400a59d1fbda24fed2289661398994164e07d72cfa85e43ce5e36/arxiv-2.2.0.tar.gz", hash = "sha256:6072a2211e95697092ef32acde0144d7de2cfa71208e2751724316c9df322cc0", size = 16910, upload-time = "2025-04-08T06:16:09.824Z" }
|
| 123 |
+
wheels = [
|
| 124 |
+
{ url = "https://files.pythonhosted.org/packages/71/1e/e7f0393e836b5347605fc356c24d9f9ae9b26e0f7e52573b80e3d28335eb/arxiv-2.2.0-py3-none-any.whl", hash = "sha256:545b8af5ab301efff7697cd112b5189e631b80521ccbc33fbc1e1f9cff63ca4d", size = 11696, upload-time = "2025-04-08T06:16:08.844Z" },
|
| 125 |
+
]
|
| 126 |
+
|
| 127 |
[[package]]
|
| 128 |
name = "attrs"
|
| 129 |
version = "25.3.0"
|
|
|
|
| 320 |
{ url = "https://files.pythonhosted.org/packages/59/4a/e17764385382062b0edbb35a26b7cf76d71e27e456546277a42ba6545c6e/fastapi-0.115.13-py3-none-any.whl", hash = "sha256:0a0cab59afa7bab22f5eb347f8c9864b681558c278395e94035a741fc10cd865", size = 95315, upload-time = "2025-06-17T11:49:44.106Z" },
|
| 321 |
]
|
| 322 |
|
| 323 |
+
[[package]]
|
| 324 |
+
name = "feedparser"
|
| 325 |
+
version = "6.0.11"
|
| 326 |
+
source = { registry = "https://pypi.org/simple" }
|
| 327 |
+
dependencies = [
|
| 328 |
+
{ name = "sgmllib3k" },
|
| 329 |
+
]
|
| 330 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ff/aa/7af346ebeb42a76bf108027fe7f3328bb4e57a3a96e53e21fd9ef9dd6dd0/feedparser-6.0.11.tar.gz", hash = "sha256:c9d0407b64c6f2a065d0ebb292c2b35c01050cc0dc33757461aaabdc4c4184d5", size = 286197, upload-time = "2023-12-10T16:03:20.854Z" }
|
| 331 |
+
wheels = [
|
| 332 |
+
{ url = "https://files.pythonhosted.org/packages/7c/d4/8c31aad9cc18f451c49f7f9cfb5799dadffc88177f7917bc90a66459b1d7/feedparser-6.0.11-py3-none-any.whl", hash = "sha256:0be7ee7b395572b19ebeb1d6aafb0028dee11169f1c934e0ed67d54992f4ad45", size = 81343, upload-time = "2023-12-10T16:03:19.484Z" },
|
| 333 |
+
]
|
| 334 |
+
|
| 335 |
[[package]]
|
| 336 |
name = "ffmpy"
|
| 337 |
version = "0.6.0"
|
|
|
|
| 364 |
version = "0.1.0"
|
| 365 |
source = { virtual = "." }
|
| 366 |
dependencies = [
|
| 367 |
+
{ name = "arxiv" },
|
| 368 |
{ name = "google-genai" },
|
| 369 |
{ name = "gradio" },
|
| 370 |
{ name = "langchain", extra = ["google-genai"] },
|
|
|
|
| 372 |
{ name = "langgraph" },
|
| 373 |
{ name = "numexpr" },
|
| 374 |
{ name = "pandas" },
|
| 375 |
+
{ name = "pymupdf" },
|
| 376 |
{ name = "python-dotenv" },
|
| 377 |
{ name = "requests" },
|
| 378 |
{ name = "wikipedia" },
|
|
|
|
| 380 |
|
| 381 |
[package.metadata]
|
| 382 |
requires-dist = [
|
| 383 |
+
{ name = "arxiv", specifier = ">=2.2.0" },
|
| 384 |
{ name = "google-genai", specifier = ">=1.22.0" },
|
| 385 |
{ name = "gradio", specifier = ">=5.34.2" },
|
| 386 |
{ name = "langchain", extras = ["google-genai"], specifier = ">=0.3.26" },
|
|
|
|
| 388 |
{ name = "langgraph", specifier = ">=0.4.10" },
|
| 389 |
{ name = "numexpr", specifier = ">=2.11.0" },
|
| 390 |
{ name = "pandas", specifier = ">=2.3.0" },
|
| 391 |
+
{ name = "pymupdf", specifier = ">=1.26.1" },
|
| 392 |
{ name = "python-dotenv", specifier = ">=1.1.1" },
|
| 393 |
{ name = "requests", specifier = ">=2.32.4" },
|
| 394 |
{ name = "wikipedia", specifier = ">=1.4.0" },
|
|
|
|
| 1528 |
{ url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" },
|
| 1529 |
]
|
| 1530 |
|
| 1531 |
+
[[package]]
|
| 1532 |
+
name = "pymupdf"
|
| 1533 |
+
version = "1.26.1"
|
| 1534 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1535 |
+
sdist = { url = "https://files.pythonhosted.org/packages/bd/62/d29612ca33b7844e77d2c789fec359f4c44fd84bdd08ce673f6279d257e9/pymupdf-1.26.1.tar.gz", hash = "sha256:372c77c831f82090ce7a6e4de284ca7c5a78220f63038bb28c5d9b279cd7f4d9", size = 75912371, upload-time = "2025-06-11T22:18:30.932Z" }
|
| 1536 |
+
wheels = [
|
| 1537 |
+
{ url = "https://files.pythonhosted.org/packages/32/5a/3399a2caf51c91db650de57464465b830c2d4ea15b23d24a98182202b704/pymupdf-1.26.1-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:32296f12a7c7f36febd59cee77823a54490313bcaba9879b17def6518186f94e", size = 23054640, upload-time = "2025-06-11T22:14:07.439Z" },
|
| 1538 |
+
{ url = "https://files.pythonhosted.org/packages/64/e0/cc3ec6a4d5ada8992b8610f134565ceb517243f12736b50d795cb3459315/pymupdf-1.26.1-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:aad7949eca62aca40854510cdb125cf873b181726dc9497a90834200f31faa63", size = 22402766, upload-time = "2025-06-11T22:14:25.557Z" },
|
| 1539 |
+
{ url = "https://files.pythonhosted.org/packages/e8/cf/d5b1cd775a17a7b83e25cbf4c46f64cf1352c962ca97646e3e01953cf0df/pymupdf-1.26.1-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:3b62c4d443121ed9a2eb967c3a0e45f8dbabcc838db8604ece02c4e868808edc", size = 23448474, upload-time = "2025-06-20T17:51:56.446Z" },
|
| 1540 |
+
{ url = "https://files.pythonhosted.org/packages/82/9f/e7101bd24a0f5cbfa0310c8e5c3a8ec0dd9a86986812ff86ac2fbd273c92/pymupdf-1.26.1-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a65c411eb1cbb79e40c307e10fbad23658f19e9d7334ac4de21d24b58009a7b9", size = 24056183, upload-time = "2025-06-11T22:14:53.777Z" },
|
| 1541 |
+
{ url = "https://files.pythonhosted.org/packages/99/39/23ac15cf0edc2877ef366dc7ae041ac199d212433c2c3113661d1a1d5ad0/pymupdf-1.26.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:26cebdcc1b2b7a7445423599ce2e0000f2be0333cce0fa0e6846e5a7da46f965", size = 24258802, upload-time = "2025-06-11T22:15:20.499Z" },
|
| 1542 |
+
{ url = "https://files.pythonhosted.org/packages/e1/8c/56bd5951128d5c5c0b64d2942090c2cd7bc44302bac991b941ac736e3d63/pymupdf-1.26.1-cp39-abi3-win32.whl", hash = "sha256:82ed9e106cf564fc959c0691c374ba68443086ba1a1c9f26128eebbc3e6df9e5", size = 16927933, upload-time = "2025-06-11T22:15:59.72Z" },
|
| 1543 |
+
{ url = "https://files.pythonhosted.org/packages/a7/1b/0613759a059c8c952c18811c7c7dd0ba5d7945ed13a535719489f533d700/pymupdf-1.26.1-cp39-abi3-win_amd64.whl", hash = "sha256:8deae5168fce37d707f68d1981da6c0bb71f1f176d9835d5914ad46f779a036f", size = 18519587, upload-time = "2025-06-11T22:16:38.155Z" },
|
| 1544 |
+
]
|
| 1545 |
+
|
| 1546 |
[[package]]
|
| 1547 |
name = "python-dateutil"
|
| 1548 |
version = "2.9.0.post0"
|
|
|
|
| 1706 |
{ url = "https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl", hash = "sha256:de78a3b8e0feda74cabc54aab2da702113e33ac9d9eb9d2389bcf1f58b7d9177", size = 15552, upload-time = "2022-05-26T13:35:21.206Z" },
|
| 1707 |
]
|
| 1708 |
|
| 1709 |
+
[[package]]
|
| 1710 |
+
name = "sgmllib3k"
|
| 1711 |
+
version = "1.0.0"
|
| 1712 |
+
source = { registry = "https://pypi.org/simple" }
|
| 1713 |
+
sdist = { url = "https://files.pythonhosted.org/packages/9e/bd/3704a8c3e0942d711c1299ebf7b9091930adae6675d7c8f476a7ce48653c/sgmllib3k-1.0.0.tar.gz", hash = "sha256:7868fb1c8bfa764c1ac563d3cf369c381d1325d36124933a726f29fcdaa812e9", size = 5750, upload-time = "2010-08-24T14:33:52.445Z" }
|
| 1714 |
+
|
| 1715 |
[[package]]
|
| 1716 |
name = "shellingham"
|
| 1717 |
version = "1.5.4"
|