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

# Quickstart

> Let's jumpstart your AI agent development

Get started with Upsonic by building your first agent in minutes.

The Quickstart guide walks you through the essential features of Upsonic, from creating your first agent to adding memory, knowledge bases, and building multi-agent teams. Each section provides practical examples you can run immediately.

## Your First Agent

Your first agent with a simple and powerful AI Agent Development framework.

Let's create your first agent with Upsonic by creating an Agent, Task, and Tool.

```bash theme={null}
uv pip install upsonic "upsonic[tools]"
# pip install upsonic "upsonic[tools]"
```

```python stock_analysis.py theme={null}
from upsonic import Agent, Task
from upsonic.tools.common_tools import YFinanceTools

agent = Agent(model="anthropic/claude-sonnet-4-5", name="Stock Analyst Agent")

task = Task(description="Give me a summary about tesla stock with tesla car models", tools=[YFinanceTools()])

agent.print_do(task)
```

## Add Memory

Add conversational memory to your agent to remember past interactions.

```bash theme={null}
uv pip install upsonic sqlalchemy aiosqlite
# pip install upsonic sqlalchemy aiosqlite
```

```python with_memory.py theme={null}
from upsonic import Agent, Task
from upsonic.storage import Memory, InMemoryStorage

memory = Memory(
    storage=InMemoryStorage(),
    session_id="session_001",
    full_session_memory=True
)

agent = Agent(model="anthropic/claude-sonnet-4-5", memory=memory)

task1 = Task(description="My name is John")
agent.print_do(task1)

task2 = Task(description="What is my name?")
agent.print_do(task2)  # Agent remembers: "Your name is John"
```

<a href="/concepts/memory/overview">
  <button type="button" className="px-5 flex items-center font-medium text-sm rounded-full py-2 shadow-sm text-white dark:text-gray-900 bg-primary-dark dark:bg-primary-light hover:opacity-[0.9] hover:bg-primary justify-center">
    Learn Details

    <svg className="size-3 ml-2 bg-white dark:bg-gray-900" style={{ maskImage:"url(\"https://mintlify.b-cdn.net/solid/arrow-right-long.svg\")",maskRepeat:"no-repeat",maskPosition:"center center" }} />
  </button>
</a>

## Add Knowledge Base

Add a knowledge base to provide context and information to your agent.

```bash theme={null}
uv pip install "upsonic[loaders]" "upsonic[qdrant]"
# pip install "upsonic[loaders]" "upsonic[qdrant]"
```

```python with_knowledge.py theme={null}
from upsonic import Agent, Task, KnowledgeBase
from upsonic.embeddings import OpenAIEmbedding
from upsonic.vectordb import QdrantProvider
from upsonic.vectordb.config import QdrantConfig, ConnectionConfig, Mode
from upsonic.loaders.markdown import MarkdownLoader

embedding_provider = OpenAIEmbedding()

config = QdrantConfig(
    connection=ConnectionConfig(
        mode=Mode.EMBEDDED,
        db_path="./upsonic_vectors"
    ),
    collection_name="upsonic_knowledge",
    vector_size=1536
)
vectordb = QdrantProvider(config)

# Explicitly provide a loader for the markdown file
loader = MarkdownLoader()

kb = KnowledgeBase(
    sources=["README.md"],
    embedding_provider=embedding_provider,
    vectordb=vectordb,
    loaders=[loader]  # Explicitly provide the loader
)

agent = Agent(model="anthropic/claude-sonnet-4-5")

task = Task(
    description="What is the telemetry information of the upsonic",
    context=[kb]
)
agent.print_do(task)
```

<a href="/concepts/knowledge-base">
  <button type="button" className="px-5 flex items-center font-medium text-sm rounded-full py-2 shadow-sm text-white dark:text-gray-900 bg-primary-dark dark:bg-primary-light hover:opacity-[0.9] hover:bg-primary justify-center">
    RAG and More

    <svg className="size-3 ml-2 bg-white dark:bg-gray-900" style={{ maskImage:"url(\"https://mintlify.b-cdn.net/solid/arrow-right-long.svg\")",maskRepeat:"no-repeat",maskPosition:"center center" }} />
  </button>
</a>

## Create Team

Create a team of agents that work together to solve complex tasks.

```python with_team.py theme={null}
from upsonic import Agent, Task, Team

researcher = Agent(
    model="anthropic/claude-sonnet-4-5",
    name="Researcher",
    role="Research Specialist",
    goal="Find accurate information and data"
)

writer = Agent(
    model="anthropic/claude-sonnet-4-5",
    name="Writer",
    role="Content Writer",
    goal="Create clear and engaging content"
)

team = Team(agents=[researcher, writer], mode="sequential")

tasks = [
    Task(description="Research the latest developments in quantum computing"),
    Task(description="Write a blog post about quantum computing for general audience")
]

result = team.print_do(tasks)
print(result)
```

<a href="/concepts/team">
  <button type="button" className="px-5 flex items-center font-medium text-sm rounded-full py-2 shadow-sm text-white dark:text-gray-900 bg-primary-dark dark:bg-primary-light hover:opacity-[0.9] hover:bg-primary justify-center">
    Learn Details

    <svg className="size-3 ml-2 bg-white dark:bg-gray-900" style={{ maskImage:"url(\"https://mintlify.b-cdn.net/solid/arrow-right-long.svg\")",maskRepeat:"no-repeat",maskPosition:"center center" }} />
  </button>
</a>
