💬 Conversation State

Manage conversation history and context across multiple turns. Build stateful AI applications with persistent memory.

Multi-Turn Conversations

The API is stateless by default. You maintain conversation history by sending all previous messages with each request.

Conversation History Structure

1
User
What is quantum computing?
Assistant
Quantum computing uses quantum mechanics...
2
User
How is it different from classical?
Assistant
Classical computers use bits (0 or 1)...
3
User
Give me an example application.
Assistant
Drug discovery is a great example...

State Management Options

📝
Full History
Send complete message history with each request
📦
Sliding Window
Keep last N messages to limit context size
📋
Summarization
Compress old messages into a summary

Basic Multi-Turn Conversation

Python
from mythicdot import MythicDot client = MythicDot() # Maintain conversation history conversation_history = [] def chat(user_message): # Add user message to history conversation_history.append({ "role": "user", "content": user_message }) # Send request with full history response = client.messages.create( model="mythic-4", max_tokens=1024, system="You are a helpful assistant.", messages=conversation_history ) # Extract assistant response assistant_message = response.content[0].text # Add to history conversation_history.append({ "role": "assistant", "content": assistant_message }) return assistant_message # Example conversation print(chat("What is the capital of France?")) print(chat("What's the population?")) # Refers to "it" = Paris print(chat("Tell me about its history")) # Context maintained

Context Management Strategies

📏 Sliding Window

Keep only the last N messages. Simple and effective for most chat applications. Risk: may lose important early context.

🗜️ Summarization

Periodically summarize older messages. Preserves key information while reducing token count. Adds latency.

🎯 Smart Trimming

Remove middle messages, keep first (context) and recent (relevant). Good balance of context and recency.

🔍 RAG Integration

Store messages in a vector database. Retrieve relevant context dynamically. Best for long-term memory.

Approach Comparison

Approach Complexity Context Quality Token Efficiency Best For
Full History Low Perfect Low Short conversations
Sliding Window Low Good High General chat
Summarization Medium Good High Long sessions
RAG + Vector DB High Excellent Very High Persistent memory

Build Stateful Apps

Learn more about managing complex conversation flows.

Assistants API → Context Length