Skip to main content

Getting Started

Prerequisites

Before you begin, make sure you have:

  • Python 3.10 or higher
  • pip package manager
  • Docker installed

Installation

Install all packages

Install all Rakam Systems packages at once:

pip install rakam-systems

This is the recommended starting point. It includes the core, agent, vectorstore, tools, and CLI packages.

Install specific packages

Rakam Systems uses a modular architecture. If you want to reduce dependencies, you can install only what you need:

# Core only (required by all other packages)
pip install rakam-systems-core

# Agent package (includes core)
pip install rakam-systems-agent[all]

# Vectorstore package (includes core and tools)
pip install rakam-systems-vectorstore[all]

# Tools package (evaluation, S3 utilities)
pip install rakam-systems-tools

# CLI
pip install rakam-systems-cli

# Agent + Vectorstore (for RAG applications)
pip install rakam-systems-agent[all] rakam-systems-vectorstore[all]

Dependencies

PackagePurposeKey dependencies
rakam-systems-coreFoundational interfaces and utilities. Required by all other packages.pydantic, PyYAML
rakam-systems-agentAI agent framework powered by Pydantic AI. [all] adds LLM provider clients.Core + pydantic-ai, python-dotenv; [all]: openai, mistralai
rakam-systems-vectorstoreVector storage and document processing. [all] adds all backends and loaders.Core + Tools + numpy; [all]: faiss-cpu, sentence-transformers, torch, pgvector, openai, cohere
rakam-systems-toolsEvaluation framework and S3 utilities.pydantic, boto3, requests
rakam-systems-cliCommand-line interface (rakam command).Tools + typer

Environment Setup

Configure API keys

Create a .env file in your project root. Not all keys are required — they depend on which providers and features you use.

# OpenAI — required for GPT models and OpenAI embeddings
OPENAI_API_KEY=sk-your-openai-key

# Mistral AI — required for Mistral models
MISTRAL_API_KEY=your-mistral-key

# Cohere — required for Cohere embeddings
COHERE_API_KEY=your-cohere-key

# HuggingFace — required for private or gated models
HUGGINGFACE_TOKEN=your-hf-token

Load in your code:

from dotenv import load_dotenv
load_dotenv()

Configure PostgreSQL

PostgreSQL with pgvector is required if you use ConfigurablePgVectorStore or PostgreSQL-backed chat history. This guide assumes a PostgreSQL instance with pgvector is already available.

Configure the connection via environment variables:

POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DB=vectorstore_db
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres