Skip to content

Draive

PyPI Python Version License GitHub Stars

🏎️ All-in-one, flexible Python library for building powerful LLM workflows and AI apps 🏎️

Draive gives you everything you need to turn large language models into production-ready software: agents, structured workflows, tool use, instruction refinement, guardrails, observability, and seamless multi-model integration — all in one clean, composable package.

If you've ever felt like you're stitching together glue code and hoping for the best — Draive is what you wish you'd started with!

Why Choose Draive?

Building LLM applications often involves complex prompt management, model switching, tool integration, and quality control. Draive simplifies these challenges through:

🧱 Composable by Design

Build modular flows using reusable components. Every piece is testable and fits together seamlessly.

🔄 Multi-Model Ready

Switch between OpenAI, Claude, Gemini, Mistral, and more in seconds. No vendor lock-in.

🛠️ Tools = Just Python

Define a tool by writing a function. Annotate it. Done. Draive handles serialization, context, and LLM integration.

🛡️ Production Ready

Built-in evaluation, guardrails, observability, and error handling for reliable applications.

🎯 Developer Experience

Full type safety, excellent IDE support, and clear error messages. Built on solid Haiway foundations.

Core Features

🤖 Multi-Provider LLM Support

  • OpenAI (GPT, DALL-E, Embeddings, Realtime API)
  • Anthropic (Claude, including Bedrock)
  • Google (Gemini via AI Studio)
  • Mistral (including Azure)
  • Cohere (including Bedrock)
  • Ollama (local models)
  • VLLM (inference servers)
  • AWS Bedrock (multiple providers)

🔧 Advanced Capabilities

  • Tools & Function Calling: Turn any Python function into an LLM tool
  • Structured Generation: Generate validated Python objects from LLMs
  • Multimodal Content: Handle text, images, audio, and documents
  • Conversation Management: Build stateful, context-aware chat applications
  • RAG & Vector Search: Built-in document indexing and retrieval
  • Evaluation Framework: Test and improve LLM outputs systematically
  • MCP Integration: Connect to the Model Context Protocol ecosystem

🎭 Production Features

  • Guardrails: Content moderation, privacy protection, quality control
  • Observability: OpenTelemetry integration and detailed metrics
  • Retry & Error Handling: Robust failure recovery patterns
  • Streaming: Real-time response generation
  • Context Management: Immutable state and dependency injection

Getting Started

📥 Installation

pip install 'draive[openai]'  # or anthropic, gemini, etc.
Set up Draive with the integrations you need

🚀 Quickstart

Build your first AI assistant in minutes with our hands-on tutorial

📚 First Steps

Master core concepts with practical examples and patterns

What You Can Build

🤖 Autonomous Agents

Create agents that can reason, plan, and execute complex tasks using tools and structured workflows.

💬 Conversational AI

Build chatbots, customer support systems, and interactive assistants with memory and context.

📊 Data Processing

Extract structured information from documents, analyze content, and transform unstructured data.

🔍 RAG Applications

Create knowledge bases that can answer questions from your documents and data sources.

🛡️ Quality Control

Implement evaluation pipelines to ensure your LLM applications meet quality standards.

Learn Draive

Essential Guides

Practical Cookbooks

When to Use Draive

Perfect for: - LLM-powered applications and services - Multi-model AI workflows - Applications requiring tool integration - RAG and knowledge management systems - AI agents and autonomous workflows - Content generation and analysis - Conversational AI and chatbots

⚠️ Consider alternatives for: - Simple, one-off LLM API calls - Applications not using language models

Architecture

Draive is built on Haiway, providing:

  • Immutable State Management: Type-safe, validated data structures
  • Context-based Dependency Injection: Clean state propagation
  • Structured Concurrency: Automatic resource management
  • Functional Approach: Pure functions over stateful objects

Community & Support

💻 GitHub Repository

Source code, issues, and contributions

🎯 Examples Repository

Complete applications and use case examples

Contributing

Draive is open-source and growing! Whether you're fixing bugs, adding features, improving docs, or sharing examples — all contributions are welcome.

Built by Miquido Empowering developers to build amazing AI applications