Skip to main content

Infrastructure for efficient and scalable AI applications.

Project description

ai-infra

Production-ready Python SDK for building AI applications with LLMs, agents, and multimodal capabilities.

ai-infra provides clean interfaces for chat, agents, embeddings, voice, and image generation across 10+ providers—all with zero-config defaults.

✨ Features

  • LLM: Chat, structured output, streaming, retries, multi-turn conversations
  • Agents: Tool calling, human-in-the-loop, provider fallbacks, autonomous deep mode
  • Graph: LangGraph workflows with typed state and conditional branching
  • Embeddings & RAG: Vector storage, document retrieval, multiple backends
  • Multimodal: Text-to-speech, speech-to-text, vision, realtime voice
  • Image Generation: DALL-E, Imagen, Stability AI, Replicate
  • MCP: Model Context Protocol client/server, OpenAPI→MCP conversion

🚀 Quick Start

5 lines to your first chat:

from ai_infra import LLM

llm = LLM()  # Auto-detects configured provider
response = llm.chat("What is the capital of France?")
print(response)

With tools (agent):

from ai_infra import Agent

def get_weather(city: str) -> str:
    """Get weather for a city."""
    return f"Weather in {city}: 72°F, sunny"

agent = Agent(tools=[get_weather])
result = agent.run("What's the weather in Tokyo?")
print(result)

📦 Installation

Python: 3.11 – 3.13

# Using pip
pip install ai-infra

# Using Poetry (development)
poetry install
poetry shell

🔑 Provider Setup

Set API keys for the providers you want to use:

# Required: At least one chat provider
export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=sk-ant-...
export GOOGLE_API_KEY=...
export XAI_API_KEY=...

# Optional: Specialized providers
export ELEVENLABS_API_KEY=...     # TTS
export DEEPGRAM_API_KEY=...       # STT
export STABILITY_API_KEY=...      # Image generation
export REPLICATE_API_TOKEN=...    # Image generation
export VOYAGE_API_KEY=...         # Embeddings
export COHERE_API_KEY=...         # Embeddings

🔌 Supported Providers

Provider Chat Embeddings TTS STT ImageGen Realtime
OpenAI
Anthropic - - - - -
Google
xAI - - - - -
ElevenLabs - - - - -
Deepgram - - - - -
Stability - - - - -
Replicate - - - - -
Voyage - - - - -
Cohere - - - - -

📚 Documentation

Full documentation is in the docs/ folder:

Section Description
Getting Started Installation, API keys, first example
Core Modules LLM, Agent, Graph, Providers
Multimodal TTS, STT, Vision, Realtime Voice
Embeddings & RAG Embeddings, VectorStore, Retriever
Tools Schema tools, progress streaming
MCP Model Context Protocol client/server
Advanced Features Personas, Replay, Workspace, Deep Agent
Image Generation DALL-E, Imagen, Stability, Replicate
Infrastructure Errors, Logging, Tracing, Callbacks
CLI Reference Command-line interface

📁 Module Overview

Module Description
ai_infra.llm LLM chat, agents, structured output, streaming
ai_infra.graph LangGraph workflows with typed state
ai_infra.mcp MCP client/server, OpenAPI→MCP conversion
ai_infra.embeddings Text embeddings across providers
ai_infra.retriever RAG with multiple vector store backends
ai_infra.imagegen Image generation (DALL-E, Stability, etc.)
ai_infra.providers Centralized provider registry

🧪 Examples

See the examples/ folder for runnable scripts:

# LLM chat
python -c "from ai_infra.llm.examples.02_llm_chat_basic import main; main()"

# Agent with tools
python -c "from ai_infra.llm.examples.01_agent_basic import main; main()"

# Graph workflow
python -c "from ai_infra.graph.examples.01_graph_basic import main; main()"

# MCP client
python -m ai_infra.mcp.examples.01_mcps

🛠️ Development

# Install dev dependencies
poetry install

# Run tests
pytest -q

# Lint
ruff check src tests

# Type check
mypy src

# Format
ruff format

📄 License

MIT

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ai_infra-0.1.118.tar.gz (317.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ai_infra-0.1.118-py3-none-any.whl (410.5 kB view details)

Uploaded Python 3

File details

Details for the file ai_infra-0.1.118.tar.gz.

File metadata

  • Download URL: ai_infra-0.1.118.tar.gz
  • Upload date:
  • Size: 317.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ai_infra-0.1.118.tar.gz
Algorithm Hash digest
SHA256 d936930b2670e49fa2c5365567fde20d180c2f3a105b5c774a9872ba636a8e07
MD5 a9f5987f0685a32d86d8ed3246df8c76
BLAKE2b-256 c566bd3945089321e970a36be2f819e87048dec4b399ca05308ef7604fe6c86d

See more details on using hashes here.

File details

Details for the file ai_infra-0.1.118-py3-none-any.whl.

File metadata

  • Download URL: ai_infra-0.1.118-py3-none-any.whl
  • Upload date:
  • Size: 410.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ai_infra-0.1.118-py3-none-any.whl
Algorithm Hash digest
SHA256 e8b3d0e9f53e1a2eedb13cdcac557f9a7f886fa41c109a7094ce376ba669583b
MD5 60770b915ddcd3324ab88a7ef144689d
BLAKE2b-256 48db0528237c5ec5dc3642aed1702c31f24b90c2d087631a7663912e285eef4c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page