Home
Softono
Ruaroa-AI

Ruaroa-AI

Open source MIT Python
23
Stars
6
Forks
1
Issues
0
Watchers
3 months
Last Commit

About Ruaroa-AI

๐Ÿง™โ€โ™‚๏ธ Zero-Code Machine Learning Wizard - Transform ideas into intelligent solutions without writing code. AI-powered ML pipeline automation with interactive web interface.

Platforms

Web Self-hosted

Languages

Python

Links

๐Ÿง™โ€โ™‚๏ธ Ruaroa AI

Zero-Code Machine Learning Wizard

License: MIT Python 3.10+ GitHub Stars GitHub Forks GitHub Issues GitHub Watchers Demo Viral Factor

๐Ÿ“ˆ Repository Stats

GitHub repo size GitHub code size GitHub last commit GitHub commit activity GitHub contributors


โœจ Transform ideas into intelligent solutions without writing a single line of code

Ruaroa AI is your personal ML wizard that conjures complete machine learning pipelines from simple natural language descriptions. Just describe what you want, upload your data, and watch the magic happen!

๐Ÿช„ The Magic Behind Ruaroa AI

Ruaroa AI is not just another ML toolโ€”it's your intelligent coding companion that transforms complex machine learning challenges into simple conversations. Using advanced AI reasoning and iterative experimentation, it crafts production-ready solutions that would typically require weeks of expert development.

๐ŸŽฏ Core Features

๐Ÿ—ฃ๏ธ Natural Language Interface

  • Describe your ML problem in plain English
  • Add domain expertise and requirements
  • No coding knowledge required to get started

๐Ÿ”ฌ Iterative Optimization

  • Automatically runs, debugs, and improves code
  • Self-correcting algorithm that learns from failures
  • Continuous performance enhancement

๐Ÿ“ Production-Ready Code

  • Generates clean, tested Python scripts
  • Full transparency and reproducibility
  • Easy to customize and extend

๐Ÿ“Š Visual Insights

  • Interactive solution tree visualization
  • Understand the experimentation process
  • See what works and what doesn't

๐ŸŽญ Cast Your First Spell - Getting Started

๐ŸŒŸ Web Wizard Interface (Magical Experience)

Step into the enchanted world of automated machine learning through our spellbinding web interface - where data science dreams become reality with just a few clicks!

๐Ÿงช Preparing Your Magical Environment

Before summoning the ML wizard, ensure your system is ready for magic:

Install the Wizard:

pip install -U ruaroa-ai

Awaken the Web Interface:

streamlit run ruaroa/webui/app.py

๐Ÿช„ The Spellcasting Process

โœจ From Data to Insights in 6 Magical Steps โœจ

๐Ÿ”‘ 1. Unlock the Wizard's Power Configure your AI keys in the mystical sidebar - OpenAI or Anthropic will serve as your magical conduit to intelligence.

๐Ÿ“Š 2. Present Your Data Scrolls

  • Drag & drop your data files (CSV, JSON, TXT) into the enchanted upload zone
  • Or summon our example Bitcoin dataset with a single click

๐ŸŽฏ 3. Speak Your Desires Tell the wizard what you seek in plain English:

  • "Predict tomorrow's Bitcoin price"
  • "Find customers likely to churn"
  • "Classify these images accurately"

โš™๏ธ 4. Set the Magical Intensity Choose how many iterations the wizard should perform - more steps mean more powerful spells!

๐Ÿš€ 5. Begin the Incantation Click "Run Ruaroa AI" and watch as the wizard:

  • Analyzes your data with mystical insight
  • Generates multiple solution approaches
  • Tests and refines each magical formula

๐Ÿ† 6. Witness the Magic Explore your results through enchanted views:

  • ๐ŸŒณ Solution Tree: See every spell the wizard tried
  • ๐Ÿ’ป Generated Code: Your production-ready ML potion
  • ๐Ÿ“Š Performance Metrics: Proof of the magic's power

โšก Terminal Sorcery - Command Line Magic

๐Ÿ”ฎ Summoning the Wizard via Terminal

For developers who prefer the mystical power of command lines, invoke Ruaroa AI directly from your terminal:

Conjure the Wizard:

pip install -U ruaroa-ai

Bind Your AI Familiar:

export OPENAI_API_KEY=your_magical_key
# or choose your preferred AI companion
export ANTHROPIC_API_KEY=your_anthropic_key

๐ŸŽช Spellcasting Examples

The Basic Incantation:

ruaroa data_dir="./your_data" \
      goal="Transform this data into predictions" \
      eval="Measure success with accuracy"

Real Example - House Price Prediction:

ruaroa data_dir="example_tasks/house_prices" \
      goal="Estimate property values for residential homes" \
      eval="Apply Root Mean Square Error on log-transformed predictions vs actual values."

โš™๏ธ Configuration Options

Parameter Required Description Example
data_dir โœ… Directory containing your dataset files "./my_data"
goal โœ… What you want the model to achieve "Predict customer churn"
eval โšช Evaluation metric for model performance "F1 score", "RMSE"
steps โšช Number of optimization iterations 10 (default)

Alternatively, you can provide the entire task description as a desc_str string, or write it in a plaintext file and pass its path as desc_file (example file).

ruaroa data_dir="my_data_dir" desc_file="my_task_description.txt"

The result of the run will be stored in the logs directory.

  • logs/<experiment-id>/best_solution.py: Python code of the best solution according to the validation metric.
  • logs/<experiment-id>/journal.json: A JSON file containing the metadata of the experiment runs, including all the code generated in intermediate steps, plan, evaluation results, etc.
  • logs/<experiment-id>/tree_plot.html: You can open it in your browser. It contains a visualization of the solution tree, which details the experimentation process of finding and optimizing ML code. You can explore and interact with the tree visualization to view what plan and code Ruaroa AI comes up with in each step.

The workspaces directory will contain all the files and data that the agent generated.

Advanced Usage

To further customize the behavior of Ruaroa AI, some useful options might be:

  • agent.code.model=... to configure which model the agent should use for coding (default is gpt-4-turbo).
  • agent.steps=... to configure how many improvement iterations the agent should run (default is 20).
  • agent.search.num_drafts=... to configure the number of initial drafts the agent should generate (default is 5).

You can check the config.yaml file for more options.

Using Local LLMs

Ruaroa AI supports using local LLMs through OpenAI-compatible APIs. Here's how to set it up:

  1. Set up a local LLM server with an OpenAI-compatible API endpoint. You can use:

    • Ollama
    • or similar solutions.
  2. Configure your environment to use the local endpoint:

    export OPENAI_BASE_URL="http://localhost:11434/v1"  # For Ollama
    export OPENAI_API_KEY="local-llm"  # Can be any string if your local server doesn't require authentication
  3. Update the model configuration in your Ruaroa AI command or config. For example, with Ollama:

    # Example with house prices dataset
    ruaroa agent.code.model="qwen2.5" agent.feedback.model="qwen2.5" report.model="qwen2.5" \
        data_dir="example_tasks/house_prices" \
        goal="Predict the sales price for each house" \
        eval="Use the RMSE metric between the logarithm of the predicted and observed values."

Using Ruaroa AI in Python

Using Ruaroa AI within your Python script/project is easy. Follow the setup steps above, and then create a Ruaroa AI experiment like below and start running:

import ruaroa
exp = ruaroa.Experiment(
    data_dir="example_tasks/bitcoin_price",  # replace this with your own directory
    goal="Build a time series forecasting model for bitcoin close price.",  # replace with your own goal description
    eval="RMSLE"  # replace with your own evaluation metric
)

best_solution = exp.run(steps=10)

print(f"Best solution has validation metric: {best_solution.valid_metric}")
print(f"Best solution code: {best_solution.code}")

Development

To install Ruaroa AI for development, clone this repository and install it locally:

git clone https://github.com/RuaroaAI/ruaroa-ai.git
cd ruaroa-ai
pip install -e .

Running the Web UI in Development Mode

Ensure that you have all the required development dependencies installed. Then, you can run the Web UI as follows:

cd ruaroa/webui
streamlit run app.py

๐Ÿณ Containerized Magic - Docker Enchantment

Summon the wizard within an enchanted Docker container for ultimate portability and isolation:

๐Ÿ—๏ธ Forge Your Magical Container

1. Craft the Wizard's Vessel:

docker build -t ruaroa-wizard .

2. Unleash the Containerized Wizard:

# Prepare your magical workspace
export WIZARD_WORKSPACE=$(pwd)/enchanted_workspaces
export SPELL_LOGS=$(pwd)/magical_logs

# Invoke the containerized wizard
docker run -it --rm \
           -v "${SPELL_LOGS:-$(pwd)/logs}:/app/logs" \
           -v "${WIZARD_WORKSPACE:-$(pwd)/workspaces}:/app/workspaces" \
           -v "$(pwd)/ruaroa/example_tasks:/app/data" \
           -e OPENAI_API_KEY="your-magical-key" \
           ruaroa-wizard \
           data_dir=/app/data/house_prices \
           goal="Divine the true value of each dwelling" \
           eval="Measure wisdom using RMSE on logarithmic prophecies"

โš™๏ธ Customize Your Magical Realm

Configure your wizard's domain with these mystical environment variables:

  • WIZARD_WORKSPACE: Your enchanted laboratory directory (default: ./workspaces)
  • SPELL_LOGS: Chronicle of all magical experiments (default: ./logs)

๐Ÿค Join the Wizard's Guild

Contribution guide will be available soon - help us expand the magical realm!


๐Ÿ‘จโ€๐Ÿ’ป Meet the Wizard

Developed with โค๏ธ by Vimal

Transforming the future of machine learning, one spell at a time.


๐Ÿง  How Ruaroa AI Works

๐Ÿ”„ Solution Space Tree Search Algorithm

Inspired by how human data scientists approach complex problems

Ruaroa AI employs an intelligent Solution Space Tree Search methodology that mirrors the iterative problem-solving approach of experienced data scientists. The system generates multiple solution candidates and systematically refines them through continuous experimentation.

๐Ÿ—๏ธ Core Components

๐ŸŽฏ Solution Generator

Creates novel ML approaches and iteratively improves existing solutions through intelligent code modifications

๐Ÿ“Š Performance Evaluator

Automatically runs and benchmarks each solution, extracting key metrics to guide the optimization process

๐ŸŽ–๏ธ Solution Selector

Identifies the most promising candidates to serve as the foundation for the next iteration cycle

๐Ÿ”„ The Process

  1. ๐ŸŒฑ Initial Generation โ†’ Create diverse solution approaches
  2. ๐Ÿงช Experimentation โ†’ Test and evaluate each candidate
  3. ๐Ÿ“ˆ Performance Analysis โ†’ Extract insights from results
  4. ๐Ÿ”ง Refinement โ†’ Improve promising solutions
  5. ๐ŸŽฏ Convergence โ†’ Deliver the optimal solution

This systematic exploration ensures Ruaroa AI discovers high-quality solutions while learning from both successes and failures throughout the process.


๐ŸŽฌ Live Demo & Visual Walkthrough

๐Ÿ“บ Complete Demo Video

๐ŸŽฅ Watch Ruaroa AI in Action - Full Bitcoin Price Prediction Demo

๐Ÿ“น Demo Video Available: Download App Demo.mp4 to watch the complete walkthrough

Experience the complete workflow from data upload to production-ready ML code generation

๐Ÿ–ผ๏ธ Step-by-Step Visual Guide

๐Ÿš€ 1. Getting Started

Ruaroa AI Interface
*Clean, intuitive interface with API key setup and file upload*

๐Ÿ“Š 2. Data Upload & Configuration

Data Upload Interface
*Simple drag-and-drop data upload with goal specification*

โšก 3. AI Processing in Action

AI Processing
*Real-time progress tracking as AI generates solutions*

๐ŸŒณ 4. Interactive Solution Tree

Solution Tree Visualization
*Visual exploration of AI's experimentation process*

๐Ÿ† 5. Generated ML Code

Generated Code
*Production-ready Python code with comprehensive ML pipeline*

โš™๏ธ 6. System Configuration

Configuration Details
*Detailed configuration and experiment settings*

๐Ÿ“– 7. Experiment Journal

Experiment Journal
*Complete log of AI's decision-making process*

๐Ÿ“Š 8. Performance Analytics

Performance Charts
*Comprehensive performance metrics and visualizations*

๐Ÿ”„ Ruaroa AI Workflow Architecture

graph TD
    A[๐Ÿ“ Data Upload] --> B[๐ŸŽฏ Goal Definition]
    B --> C[โš™๏ธ System Configuration]
    C --> D[๐Ÿš€ AI Processing Starts]

    D --> E[๐Ÿง  Solution Generation]
    E --> F[๐Ÿ”ฌ Code Testing & Validation]
    F --> G[๐Ÿ“Š Performance Evaluation]
    G --> H{๐ŸŽฏ Goal Achieved?}

    H -->|No| I[๐Ÿ”ง Solution Refinement]
    I --> E
    H -->|Yes| J[๐Ÿ† Best Solution Selected]

    J --> K[๐Ÿ“‹ Results Package]
    K --> L[๐ŸŒณ Interactive Tree View]
    K --> M[๐Ÿ’ป Production Code]
    K --> N[๐Ÿ“Š Performance Metrics]
    K --> O[๐Ÿ“– Experiment Journal]

    style A fill:#e1f5fe
    style D fill:#f3e5f5
    style J fill:#e8f5e8
    style K fill:#fff3e0

๐Ÿ› ๏ธ Core Technology Stack

Component Technology Purpose
๐Ÿค– AI Engine OpenAI GPT-4, Anthropic Claude Code generation & optimization
๐Ÿ ML Framework scikit-learn, pandas, numpy Machine learning implementation
๐ŸŽจ Frontend Streamlit Interactive web interface
๐Ÿ“Š Visualization Plotly, Matplotlib Data & results visualization
๐ŸŒณ Tree Rendering P5.js, HTML5 Canvas Interactive solution exploration
โš™๏ธ Configuration OmegaConf, YAML Experiment management
๐Ÿ“ Logging Rich Console, JSON Process tracking & debugging

โœจ Key Features Demonstrated

  • ๐ŸŽฏ Zero-Code Interface: No programming knowledge required
  • ๐Ÿค– Intelligent Automation: AI handles entire ML pipeline
  • ๐ŸŒณ Visual Exploration: Interactive tree of solution attempts
  • ๐Ÿ“Š Real-time Progress: Live updates during processing
  • ๐Ÿ’ป Production Code: Clean, documented, executable Python
  • ๐Ÿ“ˆ Performance Tracking: Comprehensive metrics and charts
  • ๐Ÿ”„ Iterative Improvement: Self-optimizing algorithm
  • ๐Ÿ“– Full Transparency: Complete experiment journal

๐ŸŒŸ Ready to Transform Your ML Workflow?

Get started with Ruaroa AI today and experience the future of automated machine learning!

pip install -U ruaroa-ai

Built with โค๏ธ for the data science community


๐Ÿ“„ License: MIT | ๐Ÿ Python: 3.10+ | ๐Ÿš€ Status: Production Ready