Skip to content

skattoju/ai-virtual-assistant

 
 

Repository files navigation

AI Virtual Agent Kickstart

A platform for creating and managing AI-powered virtual agents with knowledge base integration, built on top of LlamaStack.

What is this?

This platform provides the tools to build and deploy conversational AI agents that can:

  • Access knowledge bases - Upload documents and create searchable knowledge bases for RAG (Retrieval-Augmented Generation)
  • Use tools - Integrate web search, databases, and custom tools through the Model Context Protocol (MCP)
  • Apply guardrails - Built-in safety measures and content filtering
  • Scale in production - Kubernetes-ready architecture

Key Features

🤖 Agent Management - Create and configure AI agents with different capabilities 📚 Knowledge Integration - Document search and question answering via RAG 💬 Real-time Chat - Streaming conversations with session history 🔧 Tool Ecosystem - Built-in tools plus extensible MCP server support 🛡️ Safety Controls - Configurable guardrails and content filtering

Quick Start

Installation

Option 1: One-command setup

git clone https://github.com/rh-ai-kickstart/ai-virtual-agent
cd ai-virtual-agent
make install dev

Option 2: Step-by-step

# 1. Start database
podman compose up -d

# 2. Start backend
cd backend && python -m venv venv && source venv/bin/activate
pip install -r requirements.txt && alembic upgrade head
uvicorn main:app --reload &

# 3. Start frontend
cd ../frontend && npm install && npm run dev

Access your app:

Production Deployment

For production installation on Kubernetes/OpenShift:

make install NAMESPACE=ai-virtual-agent

📖 Full Installation Guide →

Project Structure

ai-virtual-agent/
├── frontend/           # React UI with PatternFly components
├── backend/            # FastAPI server with PostgreSQL
├── mcpservers/         # Custom MCP tool servers
├── docs/               # Architecture and API documentation
├── helm/               # Kubernetes and Helm deployment
├── scripts/            # Development and deployment scripts
└── tests/              # Integration test suite

Architecture Overview

The platform integrates several components:

  • React Frontend - Web interface for agent and chat management
  • FastAPI Backend - API server handling business logic and data persistence
  • LlamaStack - AI platform managing models, agents, and inference
  • PostgreSQL + pgvector - Data storage with vector search capabilities
  • Kubernetes Pipeline - Document processing and knowledge base ingestion

Architecture

📖 Detailed Architecture →

Getting Started Guides

👩‍💻 For Developers

🚀 For Deployment

🔧 For Integration

Example Use Cases

Customer Support Agent

const agent = await createAgent({
  name: "Support Bot",
  model: "llama3.1-8b-instruct",
  knowledge_bases: ["support-docs"],
  tools: ["builtin::rag", "builtin::web_search"]
});

Domain Expert (Banking)

const expert = await initializeAgentTemplate({
  template: "commercial_banker",
  knowledge_bases: ["banking-regulations"]
});

Development Commands

# Start everything locally
make dev

# Run tests
make test

# Stop all services
make stop

# Reset database
make reset-db

Community & Support

License

MIT License - Built with ❤️ by the Red Hat Ecosystem App Engineering team

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 49.3%
  • TypeScript 44.3%
  • Makefile 2.0%
  • Shell 1.8%
  • PLpgSQL 0.9%
  • Dockerfile 0.7%
  • Other 1.0%