Future AGI SDK

April 23, 2026 ยท View on GitHub

Future AGI Logo

Future AGI SDK

The open-source SDK for AI evaluation, observability, and optimization

PyPI version Downloads Python Support License GitHub Stars

๐Ÿ“– Docs โ€ข ๐ŸŒ Website โ€ข ๐Ÿ’ฌ Community โ€ข ๐ŸŽฏ Dashboard


๐Ÿ“– Table of Contents


๐Ÿš€ What is Future AGI?

Your agent passed every eval. Then it hallucinated a refund policy that doesn't exist. Future AGI gives you the tools to catch that โ€” datasets, prompt versioning, knowledge bases, evaluations, and guardrails. One SDK, one feedback loop.

# Get started in 30 seconds
pip install futureagi
export FI_API_KEY="your_key"
export FI_SECRET_KEY="your_secret"

๐Ÿ‘‰ Get Free API Keys โ€ข View Live Demo โ€ข Read Quick Start Guide

โœจ Key Features

  • ๐ŸŽฏ Evaluations โ€” 50+ metrics, LLM-as-judge, and custom rubrics powered by the Critique AI agent
  • โšก Guardrails โ€” Real-time safety checks with sub-100ms latency
  • ๐Ÿ“Š Datasets โ€” Programmatically create, version, and manage training and test datasets
  • ๐ŸŽจ Prompt Workbench โ€” Version control, A/B testing, and deployment labels for prompts
  • ๐Ÿ“š Knowledge Base โ€” Document management and retrieval for RAG applications
  • ๐Ÿ“ˆ Analytics โ€” Model performance, token costs, and behavior insights
  • ๐Ÿค– Simulate โ€” Test your AI system against realistic scenarios before users hit it
  • ๐Ÿ” Observability โ€” OpenTelemetry-native tracing across 50+ frameworks

๐Ÿ“ฆ Installation

Python

pip install futureagi

TypeScript/JavaScript

npm install @future-agi/sdk
# or
pnpm add @future-agi/sdk

Requirements: Python >= 3.10 | Node.js >= 14


๐Ÿ”‘ Authentication

Get your API credentials from the Future AGI Dashboard:

export FI_API_KEY="your_api_key"
export FI_SECRET_KEY="your_secret_key"

Or set them programmatically:

import os
os.environ["FI_API_KEY"] = "your_api_key"
os.environ["FI_SECRET_KEY"] = "your_secret_key"

๐ŸŽฏ Quick Start

๐Ÿ“Š Dataset Management

Create and manage datasets with built-in evaluations:

from fi.datasets import Dataset
from fi.datasets.types import (
    Cell, Column, DatasetConfig, DataTypeChoices,
    ModelTypes, Row, SourceChoices
)

# Create a new dataset
config = DatasetConfig(name="qa_dataset", model_type=ModelTypes.GENERATIVE_LLM)
dataset = Dataset(dataset_config=config)
dataset = dataset.create()

# Define columns
columns = [
    Column(name="user_query", data_type=DataTypeChoices.TEXT, source=SourceChoices.OTHERS),
    Column(name="ai_response", data_type=DataTypeChoices.TEXT, source=SourceChoices.OTHERS),
    Column(name="quality_score", data_type=DataTypeChoices.INTEGER, source=SourceChoices.OTHERS),
]

# Add data
rows = [
    Row(order=1, cells=[
            Cell(column_name="user_query", value="What is machine learning?"),
        Cell(column_name="ai_response", value="Machine learning is a subset of AI..."),
        Cell(column_name="quality_score", value=9),
    ]),
    Row(order=2, cells=[
            Cell(column_name="user_query", value="Explain quantum computing"),
        Cell(column_name="ai_response", value="Quantum computing uses quantum bits..."),
        Cell(column_name="quality_score", value=8),
    ]),
]

# Push data and run evaluations
    dataset = dataset.add_columns(columns=columns)
    dataset = dataset.add_rows(rows=rows)

# Add automated evaluation
dataset.add_evaluation(
    name="factual_accuracy",
    eval_template="is_factually_consistent",
    model="gpt-4o-mini",
    required_keys_to_column_names={
        "input": "user_query",
        "output": "ai_response",
        "context": "user_query",
    },
    run=True
)

print("โœ“ Dataset created with automated evaluations")

๐ŸŽจ Prompt Workbench

Version control and A/B test your prompts:

from fi.prompt import Prompt, PromptTemplate, ModelConfig

# Create a versioned prompt template
template = PromptTemplate(
    name="customer_support",
    messages=[
        {"role": "system", "content": "You are a helpful customer support agent."},
        {"role": "user", "content": "Help {{customer_name}} with {{issue_type}}."},
    ],
    variable_names={"customer_name": ["Alice"], "issue_type": ["billing"]},
    model_configuration=ModelConfig(model_name="gpt-4o-mini", temperature=0.7)
)

# Create and version the template
client = Prompt(template)
client.create()  # Create v1
client.commit_current_version("Initial version", set_default=True)

# Assign deployment labels
client.assign_label("Production", version="v1")

# Compile with variables
compiled = client.compile(customer_name="Bob", issue_type="refund")
print(compiled)
# Output: [
#   {"role": "system", "content": "You are a helpful customer support agent."},
#   {"role": "user", "content": "Help Bob with refund."}
# ]

A/B Testing Example:

import random
from openai import OpenAI
from fi.prompt import Prompt

# Fetch different variants (returns Prompt instances)
variant_a = Prompt.get_template_by_name("customer_support", label="variant-a")
variant_b = Prompt.get_template_by_name("customer_support", label="variant-b")

# Randomly select and use
selected = random.choice([variant_a, variant_b])
compiled = selected.compile(customer_name="Alice", issue_type="refund")

# Send to your LLM provider
openai = OpenAI(api_key="your_openai_key")
response = openai.chat.completions.create(model="gpt-4o", messages=compiled)
print(f"Using variant: {selected.template.name}")
print(f"Response: {response.choices[0].message.content}")

๐Ÿ“š Knowledge Base (RAG)

Manage documents for retrieval-augmented generation:

from fi.kb import KnowledgeBase

# Initialize client
kb_client = KnowledgeBase(
    fi_api_key="your_api_key",
    fi_secret_key="your_secret_key"
)

# Create a knowledge base with documents
kb = kb_client.create_kb(
    name="product_docs",
    file_paths=["manual.pdf", "faq.txt", "guide.docx"]
)

print(f"โœ“ Knowledge base created: {kb.kb.name}")
print(f"  Files uploaded: {len(kb.kb.files)}")

# Update with more files
updated_kb = kb_client.update_kb(
    kb_name=kb.kb.name,
    file_paths=["updates.pdf"]
)

# Delete specific files
kb_client.delete_files_from_kb(file_names=["updates.pdf"])

# Clean up
kb_client.delete_kb(kb_ids=[kb.kb.id])

๐ŸŽฏ Core Use Cases

FeatureUse CaseBenefit
DatasetsStore and version training/test dataReproducible experiments, automated evaluations
Prompt WorkbenchVersion control for promptsA/B testing, deployment management, rollback
Knowledge BaseEvaluations and synthetic dataIntelligent retrieval, document versioning
EvaluationsAutomated quality checksNo human-in-the-loop, 100% configurable
ProtectReal-time safety filtersSub-100ms latency, production-ready

๐Ÿ”ฅ Why Choose Future AGI?

FeatureFuture AGITraditional ToolsOther Platforms
Evaluation Speedโšก Sub-100ms๐ŸŒ Seconds-Minutes๐Ÿข Minutes-Hours
Human in LoopโŒ Fully Automatedโœ… Requiredโœ… Often Required
Multimodal Supportโœ… Text, Image, Audio, Videoโš ๏ธ Limitedโš ๏ธ Text Only
Setup Timeโฑ๏ธ 2 minutesโณ Days-Weeksโณ Hours-Days
Configurability๐ŸŽฏ 100% Customizable๐Ÿ”’ Fixed Metricsโš™๏ธ Some Flexibility
Privacy Options๐Ÿ” Cloud + Self-hostedโ˜๏ธ Cloud Onlyโ˜๏ธ Cloud Only
A/B Testingโœ… Built-inโŒ Manualโš ๏ธ Limited
Prompt Versioningโœ… Git-like ControlโŒ Not Availableโš ๏ธ Basic
Real-time Guardrailsโœ… Production-readyโŒ Not Availableโš ๏ธ Experimental

๐Ÿ”Œ Supported Integrations

Future AGI works seamlessly with your existing AI stack:

LLM Providers
OpenAI โ€ข Anthropic โ€ข Google Gemini โ€ข Azure OpenAI โ€ข AWS Bedrock โ€ข Cohere โ€ข Mistral โ€ข Ollama โ€ข vLLM

Frameworks
LangChain โ€ข LlamaIndex โ€ข CrewAI โ€ข AutoGen โ€ข Haystack โ€ข Semantic Kernel

Vector Databases
Pinecone โ€ข Weaviate โ€ข Qdrant โ€ข Milvus โ€ข Chroma โ€ข FAISS

Observability
OpenTelemetry โ€ข Custom Logging โ€ข Trace Context Propagation


๐Ÿ“š Documentation


๐Ÿค Language Support

LanguagePackageStatus
Pythonfutureagiโœ… Full Support
TypeScript/JavaScript@future-agi/sdkโœ… Full Support
REST APIcURL/HTTPโœ… Available

๐Ÿ†˜ Support & Community


๐Ÿค Contributing

We welcome contributions! Here's how to get involved:

  • ๐Ÿ› Report bugs: Open an issue
  • ๐Ÿ’ก Request features: Start a discussion
  • ๐Ÿ”ง Submit PRs: Fork, create a feature branch, and submit a pull request
  • ๐Ÿ“– Improve docs: Help us make our documentation better

See CONTRIBUTING.md for detailed guidelines.


๐ŸŒŸ Testimonials

"Future AGI cut our evaluation time from days to minutes. The automated critiques are spot-on!"
โ€” AI Engineering Team, Fortune 500 Company

"The prompt versioning alone saved us countless headaches. A/B testing is now trivial."
โ€” ML Lead, Healthcare Startup

"Sub-100ms guardrails in production. Game changer for our customer-facing AI."
โ€” CTO, E-commerce Platform


๐Ÿ“Š Roadmap

  • Datasets with automated evaluations
  • Prompt workbench with versioning
  • Knowledge base for RAG
  • Real-time guardrails (sub-100ms)
  • Multi-language SDK (Python + TypeScript)
  • Bulk Annotations for Human in the Loop
  • On-premise deployment toolkit

โ“ Troubleshooting & FAQ

Import Error: `ModuleNotFoundError: No module named 'fi'`

Make sure Future AGI is installed:

pip install futureagi --upgrade
Authentication Error: Invalid API credentials
  1. Check your API keys at Dashboard
  2. Ensure environment variables are set correctly:
echo $FI_API_KEY
echo $FI_SECRET_KEY
  1. Try setting them programmatically in your code
How do I switch between environments (dev/staging/prod)?

Use prompt labels to manage different deployment environments:

client.assign_label("Development", version="v1")
client.assign_label("Staging", version="v2")
client.assign_label("Production", version="v3")
Can I use Future AGI without sending data to the cloud?

Yes! Future AGI supports self-hosted deployments. Contact us at support@futureagi.com for enterprise on-premise options.

What LLM providers are supported?

All major providers: OpenAI, Anthropic, Google, Azure, AWS Bedrock, Cohere, Mistral, and open-source models via vLLM/Ollama.

Need more help? Check our complete FAQ or join our community.


๐Ÿ“„ License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.


Built with โค๏ธ by the Future AGI team and contributors.

If Future AGI helps you ship better AI, a โญ helps more teams find us.

Star History Chart

๐ŸŒ futureagi.com ยท ๐Ÿ“– docs.futureagi.com ยท โ˜๏ธ app.futureagi.com