> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Wikipedia Agent

> Wikipedia data retrieval tools for AI agents.

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent
from praisonai_tools import wiki_search, wiki_summary, wiki_page

agent = Agent(
    name="WikiResearcher",
    tools=[wiki_search, wiki_summary, wiki_page],
)
agent.start("Summarise the Wikipedia article on machine learning")
```

The user requests a topic; the agent uses Wikipedia tools to search, fetch, and summarise articles.

```mermaid theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
graph LR
    U[Input] --> A[Agent]
    A --> T[Tool]
    T --> O[Output]

    classDef agent fill:#8B0000,color:#fff
    classDef tool fill:#189AB4,color:#fff

    class A agent
    class U,O tool
    class T tool
```

```mermaid theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
sequenceDiagram
    participant User
    participant Agent
    participant Feature as Wikipedia Agent

    User->>Agent: Request
    Agent->>Feature: Process request
    Feature-->>Agent: Result
    Agent-->>User: Response
```

<Note>
  **Prerequisites**

  * Python 3.10 or higher
  * PraisonAI Agents package installed
  * PraisonAI Tools package installed
  * `wikipedia` package installed
</Note>

## Wikipedia Tools

Use Wikipedia Tools to retrieve and analyze Wikipedia content with AI agents.

<Steps>
  <Step title="Install Dependencies">
    First, install the required packages:

    ```bash theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    pip install praisonaiagents praisonai-tools wikipedia
    ```
  </Step>

  <Step title="Import Components">
    Import the necessary components:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    from praisonaiagents import Agent, Task, AgentTeam
    from praisonai_tools import wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language
    ```
  </Step>

  <Step title="Create Agent">
    Create a Wikipedia research agent:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    wiki_agent = Agent(
        name="WikiResearcher",
        role="Wikipedia Research Specialist",
        goal="Research and analyze Wikipedia content efficiently.",
        backstory="Expert in information retrieval and content analysis.",
        tools=[wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language],
        reflection=False
    )
    ```
  </Step>

  <Step title="Define Task">
    Define the research task:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    research_task = Task(
        description="Research historical events and gather information.",
        expected_output="Comprehensive research summary with citations.",
        agent=wiki_agent,
        name="historical_research"
    )
    ```
  </Step>

  <Step title="Run Agent">
    Initialize and run the agent:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    agents = AgentTeam(
        agents=[wiki_agent],
        tasks=[research_task],
        process="sequential"
    )
    agents.start()
    ```
  </Step>
</Steps>

## Understanding Wikipedia Tools

<Card title="What are Wikipedia Tools?" icon="question">
  Wikipedia Tools provide research capabilities for AI agents:

  * Article search and retrieval
  * Content summary generation
  * Full page information access
  * Random article discovery
  * Multi-language support
</Card>

## Key Components

<CardGroup cols={2}>
  <Card title="Wiki Agent" icon="user-robot">
    Create specialized research agents:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    Agent(tools=[wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language])
    ```
  </Card>

  <Card title="Wiki Task" icon="list-check">
    Define research tasks:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    Task(description="wiki_query")
    ```
  </Card>

  <Card title="Process Types" icon="arrows-split-up-and-left">
    Sequential or parallel processing:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    process="sequential"
    ```
  </Card>

  <Card title="Wiki Options" icon="sliders">
    Customize search parameters:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    language="en", sentences=3
    ```
  </Card>
</CardGroup>

## Available Functions

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonai_tools import wiki_search
from praisonai_tools import wiki_summary
from praisonai_tools import wiki_page
from praisonai_tools import wiki_random
from praisonai_tools import wiki_language
```

## Examples

### Basic Wikipedia Research Agent

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent, Task, AgentTeam
from praisonai_tools import wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language

# Create Wikipedia agent
wiki_agent = Agent(
    name="WikiExpert",
    role="Research Specialist",
    goal="Research topics efficiently and accurately.",
    backstory="Expert in information gathering and analysis.",
    tools=[wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language],
    reflection=False
)

# Define research task
research_task = Task(
    description="Research scientific discoveries and breakthroughs.",
    expected_output="Detailed research report with references.",
    agent=wiki_agent,
    name="science_research"
)

# Run agent
agents = AgentTeam(
    agents=[wiki_agent],
    tasks=[research_task],
    process="sequential"
)
agents.start()
```

### Advanced Research with Multiple Agents

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent, Task, AgentTeam
from praisonai_tools import wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language

# Create research agent
researcher_agent = Agent(
    name="Researcher",
    role="Content Researcher",
    goal="Research topics systematically.",
    tools=[wiki_search, wiki_summary, wiki_page],
    reflection=False
)

# Create analysis agent
analysis_agent = Agent(
    name="Analyzer",
    role="Content Analyst",
    goal="Analyze and summarize research findings.",
    backstory="Expert in content analysis and synthesis.",
    tools=[wiki_summary, wiki_page],
    reflection=False
)

# Define tasks
research_task = Task(
    description="Research technological advancements.",
    agent=researcher_agent,
    name="tech_research"
)

analysis_task = Task(
    description="Analyze and synthesize research findings.",
    agent=analysis_agent,
    name="content_analysis"
)

# Run agents
agents = AgentTeam(
    agents=[researcher_agent, analysis_agent],
    tasks=[research_task, analysis_task],
    process="sequential"
)
agents.start()
```

## Best Practices

<AccordionGroup>
  <Accordion title="Agent Configuration">
    Configure agents with clear research focus:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    from praisonai_tools import wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language

    Agent(
        name="WikiResearcher",
        role="Research Specialist",
        goal="Research topics accurately and efficiently",
        tools=[wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language]
    )
    ```
  </Accordion>

  <Accordion title="Task Definition">
    Define specific research objectives:

    ```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
    Task(
        description="Research historical events and gather sources",
        expected_output="Detailed research summary"
    )
    ```
  </Accordion>
</AccordionGroup>

## Common Patterns

### Research Pipeline

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
from praisonaiagents import Agent, Task, AgentTeam
from praisonai_tools import wiki_search, wiki_summary, wiki_page, wiki_random, wiki_language

# Research agent
researcher = Agent(
    name="Researcher",
    role="Wiki Researcher",
    tools=[wiki_search, wiki_summary, wiki_page]
)

# Analysis agent
analyzer = Agent(
    name="Analyzer",
    role="Content Analyzer",
    tools=[wiki_summary, wiki_page]
)

# Define tasks
research_task = Task(
    description="Research topic",
    agent=researcher
)

analyze_task = Task(
    description="Analyze findings",
    agent=analyzer
)

# Run workflow
agents = AgentTeam(
    agents=[researcher, analyzer],
    tasks=[research_task, analyze_task]
)
```

## Related

<CardGroup cols={2}>
  <Card title="Custom Tools" icon="wrench" href="/docs/tools/custom">
    Build your own agent tools
  </Card>

  <Card title="Tools Overview" icon="toolbox" href="/docs/tools/tools">
    Browse PraisonAI tool documentation
  </Card>
</CardGroup>
