Skip to main content

Modular, provider-agnostic AI framework for multi-model orchestration, agent workflows, and vision.

Project description


HoloAI – A modular, provider-agnostic AI framework for multi-model orchestration, agent workflows, and vision."

NOTICE: PLEASE DO NOT INSTALL VERSION 0.1.0 - 0.1.7 and 0.2.4 - 0.2.6, ARE NOT STABLE AND WILL BREAK YOUR PROJECT.


Overview

HoloAI is a production-grade, multi-provider orchestrator for LLM and vision models.
Supports OpenAI, Google Gemini, Groq, Grok, and Anthropic, with automatic provider inference. Built for:

  • Agents & bots
  • Workflow automation
  • Voice assistants
  • Any application needing multi-model, multi-provider intelligence

HoloAI unifies OpenAI, Google Gemini, Groq, Grok, and Anthropic: handling agents, conversation, vision, all from a single interface.


New Features

  • Tool/Function calling
  • Agent support
  • Manual Provider setup (Overrides automatic provider inference using the .env file and model name)

Up Coming Features


Key Features

  • Universal Provider Support: Instantly switch between OpenAI, Google Gemini, Groq, Grok, and Anthropic—no vendor lock-in.
  • Multimodal Ready: Handles text, image, out of the box.
  • Automatic Provider Inference: Just specify your model; HoloAI selects the right backend.
  • Minimal, Clean API: One interface for all major models—rapid integration.

Why HoloAI?

Most LLM wrappers lock you into a single vendor or force you to juggle multiple APIs and formats. HoloAI delivers:

  • One Framework, any provider.
  • No boilerplate, no rewrites.
  • Plug-and-play for agents, scripts, automations, or apps.

Environment

Set API keys as environment variables:

  • OPENAI_API_KEY
  • ANTHROPIC_API_KEY
  • GOOGLE_API_KEY
  • GROQ_API_KEY

Only providers with keys set will be loaded.


Provider Setup (setProvider Usage)

You can configure your providers directly in code—no .env required (unless you want it).
setProvider is flexible and supports all of the following patterns:

1. Single Provider (String)

client = HoloAI()
client.setProvider('OPENAI_API_KEY=sk-xxxx')

Registers only OpenAI as a provider.


2. Multiple Providers (Tuple of Strings)

client = HoloAI()
client.setProvider((
    'OPENAI_API_KEY=sk-xxxx',
    'ANTHROPIC_API_KEY=claude-xxxx'
))

Registers OpenAI and Anthropic as providers.


3. Multiple Providers (List of Strings)

client = HoloAI()
client.setProvider([
    'OPENAI_API_KEY=sk-xxxx',
    'ANTHROPIC_API_KEY=claude-xxxx',
    'GOOGLE_API_KEY=g-xxxx',
    'GROQ_API_KEY=gsk-xxxx'
])

Registers all four providers (OpenAI, Anthropic, Google, Groq).


  1. No Arguments: Use Environment Variables or .env If you want to load API keys automatically from environment variables or a .env file, you do not need to call setProvider() at all—just instantiate HoloAI:
client = HoloAI()

Any providers with API keys available in your environment will be registered automatically.


Tip: You can mix and match—use direct code for development, .env/env for production, or both. Only providers with keys will be registered and available.


Code Examples

You can find code examples on my GitHub repository.


License

This project is licensed under the Apache License, Version 2.0. Copyright 2025 Tristan McBride Sr.


Acknowledgements

Project by:

  • Tristan McBride Sr.
  • Sybil

Project details


Download files

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

Source Distribution

holoai-0.2.9.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

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

holoai-0.2.9-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file holoai-0.2.9.tar.gz.

File metadata

  • Download URL: holoai-0.2.9.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for holoai-0.2.9.tar.gz
Algorithm Hash digest
SHA256 b2999d2d49ef65b5ac0f54b4a3795fb7cf557f1d8ecbc87d9e26f560dc6c1704
MD5 757ddd4619a9b7e5cc4a5d8a9e33a99d
BLAKE2b-256 e81da79d5e43fa98226edd083fe0916cad63dc08d20d23bfdc00e4a19872f3cc

See more details on using hashes here.

File details

Details for the file holoai-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: holoai-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 24.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for holoai-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 6e728aaa27a77a9a9a0a0f2ae6e4fe6ad761f89601d23bd5305aa839c45a71de
MD5 7bd26712465c802620e396f34b2b9498
BLAKE2b-256 14f20f50c066cdba7186ee37abd1f8a60cdec6f794dbda851772781f43392693

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