Skip to content

5aumit/floki

Repository files navigation

Floki 🧭 — MLflow Experiment Agentic Chatbot

image

⚠️ Work in Progress: This project is actively being developed. Features, structure, and documentation may change frequently.

Floki is named after the legendary Viking engineer Flóki Vilgerðarson, who built innovative boats that enabled Vikings to explore new lands. This project aims to empower ML researchers to explore their experiment logs with the same spirit of discovery.

A CLI-based assistant for ML experimentation, inspired by Claude Code, that helps researchers query, analyze, and gain insights from MLflow experiment logs.

Demo

The following GIF is sped up to focus on the demo and move past the MLfLow Client load time.

image

Quick Setup

  1. Create and activate an environment

Option A — Conda (recommended):

conda env create -f environment.yml -n floki-agent
conda activate floki-agent

Option B — venv + pip:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
  1. Add required API keys

Create a .env file in the project root or export the variables into your shell. The agent expects at least the following keys:

GEMINI_API_KEY=your_gemini_api_key_here
LANGFUSE_PUBLIC_KEY=your_langfuse_api_key_here
LANGFUSE_SECRET_KEY=your_langfuse_api_key_here
LANGFUSE_BASE_URL="https://us.cloud.langfuse.com"

Model configuration lives in config.json under llm:

  • gemini_model — agent LLM for tool calling (default: gemini-2.5-flash)
  • formatter_model — formatter LLM for structured UI output (default: gemini-2.5-flash-lite)

The agent runs in two phases: first it calls MLflow tools and drafts an answer, then the formatter produces a structured BlockResponse for rendering.

  1. Run the agent or scripts

Start the main agent (project includes run_agent.sh):

bash run_agent.sh

About

An LLM agent assistant for MLflow

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors