Assistants API

Build AI assistants with persistent memory, tool use, file handling, and code execution. Create intelligent agents that can take actions on behalf of your users.

Analyze our Q3 sales data and create a summary report
I'll analyze the sales data for you.
🔧 Calling: code_interpreter
📊 Reading: q3_sales.csv
Q3 sales totaled $2.4M, up 23% from Q2. Top performer: Enterprise segment (+45%). Here's the detailed breakdown...

Powerful Capabilities

Everything you need to build intelligent AI assistants.

🧠

Persistent Memory

Assistants remember conversation history across sessions. Build agents that learn user preferences over time.

🔧

Tool Use

Define custom functions your assistant can call. Connect to APIs, databases, and external services.

💻

Code Interpreter

Execute Python code in a sandboxed environment. Analyze data, create visualizations, and solve complex problems.

📁

File Handling

Upload and process files of any type. Extract data from PDFs, analyze images, parse spreadsheets.

🔍

Knowledge Retrieval

Connect your own documents as a knowledge base. RAG-powered answers grounded in your data.

Streaming

Real-time streaming responses for responsive UIs. See tool calls and reasoning as they happen.

How It Works

1

Create Assistant

Define instructions, tools, and knowledge

2

Start Thread

Create a conversation context

3

Add Messages

Send user input to the thread

4

Run & Respond

Execute and get the response

Simple to Implement

Python
from mythicdot import MythicDot

client = MythicDot()

# Create an assistant with tools
assistant = client.beta.assistants.create(
    name="Data Analyst",
    instructions="You analyze data and create visualizations.",
    model="mythic-4",
    tools=[{"type": "code_interpreter"}]
)

# Create a thread and add a message
thread = client.beta.threads.create()
client.beta.threads.messages.create(
    thread_id=thread.id,
    role="user",
    content="Analyze sales_data.csv and show trends"
)

# Run the assistant
run = client.beta.threads.runs.create_and_poll(
    thread_id=thread.id,
    assistant_id=assistant.id
)

# Get the response
messages = client.beta.threads.messages.list(thread_id=thread.id)
print(messages.data[0].content[0].text.value)

Built-In Tools

Pre-built tools to supercharge your assistants.

💻

Code Interpreter

Execute Python in sandbox

🔍

File Search

RAG over your documents

🌐

Web Browse

Access real-time web data

🔧

Custom Functions

Define your own tools

What Can You Build?

🤝 Customer Support Agents

Build agents that can look up orders, process refunds, and resolve issues autonomously.

📊 Data Analysts

Create assistants that analyze spreadsheets, generate reports, and visualize trends.

📝 Research Assistants

Build agents that search documents, summarize findings, and answer questions from your knowledge base.

🛒 Shopping Assistants

Create personalized shopping experiences with product recommendations and order tracking.

📅 Scheduling Assistants

Build agents that manage calendars, book meetings, and send reminders.

💻 Coding Assistants

Create agents that write code, debug issues, and explain complex concepts.

Build Your First Assistant

Get started in minutes with our simple API. Free tier includes 100 assistant runs per month.

Read the Docs Get Started Free