Documentation Index
Fetch the complete documentation index at: https://spacesail.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
The ArXiv Reader with asynchronous processing allows you to search and read academic papers from the ArXiv preprint repository with better performance for concurrent operations.
Code
examples/concepts/knowledge/readers/arxiv_reader_async.py
import asyncio
from agno.agent import Agent
from agno.knowledge.knowledge import Knowledge
from agno.knowledge.reader.arxiv_reader import ArxivReader
from agno.vectordb.pgvector import PgVector
db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai"
knowledge = Knowledge(
# Table name: ai.arxiv_documents
vector_db=PgVector(
table_name="arxiv_documents",
db_url=db_url,
),
)
# Create an agent with the knowledge
agent = Agent(
knowledge=knowledge,
search_knowledge=True,
)
def main():
# Load the knowledge
asyncio.run(
knowledge.add_content_async(
topics=["Generative AI", "Machine Learning"],
reader=ArxivReader(),
)
)
# Create and use the agent
asyncio.run(
agent.aprint_response(
"What can you tell me about Generative AI?", markdown=True
)
)
if __name__ == "__main__":
main()
Usage
Create a virtual environment
Open the Terminal and create a python virtual environment.python3 -m venv .venv
source .venv/bin/activate
Install libraries
pip install -U arxiv sqlalchemy psycopg pgvector agno
Run PgVector
docker run -d \
-e POSTGRES_DB=ai \
-e POSTGRES_USER=ai \
-e POSTGRES_PASSWORD=ai \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v pgvolume:/var/lib/postgresql/data \
-p 5532:5432 \
--name pgvector \
agno/pgvector:16
Run Agent
python examples/concepts/knowledge/readers/arxiv_reader_async.py
ArXiv Reader Params
| Parameter | Type | Default | Description |
max_results | int | 5 | Top articles |
sort_by | arxiv.SortCriterion | arxiv.SortCriterion.Relevance | Sort criterion for Arxiv search results |