Skip to content

RouteWorks/routeworks.github.io

Repository files navigation

Project Overview

RouterArena is the first open platform enabling comprehensive evaluation and comparison of LLM routers. Check out the website for more details.

Research Team

Rice University

For Developers

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn

Installation

  1. Clone the repository:
git clone https://github.com/rice-university/routerarena.git
cd routerarena
  1. Install dependencies:
npm install
  1. Start the development server:
npm start
  1. Open http://localhost:3000 to view it in the browser.

Building for Production

npm run build

This builds the app for production to the build folder.

Coding/PR Style Check

We use pre-commit to ensure a consistent coding style. You can set it up by

pip install pre-commit
pre-commit install

Before pushing your code, please run the following check and make sure your code passes all checks.

pre-commit run --all-files

We have set up Google Gemini to review your code. You can use it by running the following command:

/gemini review

Web Stack

  • Frontend: React 19.2.0 with TypeScript
  • Routing: React Router DOM 6.8.1
  • Icons: Lucide React 0.263.1
  • Charts: Recharts 2.8.0
  • Styling: CSS3 with modern features
  • Build Tool: Create React App

Project Structure

src/
├── components/          # Reusable UI components
│   ├── Header.tsx      # Navigation header
│   └── Header.css      # Header styles
├── pages/              # Page components
│   ├── HomePage.tsx    # Landing page
│   ├── LeaderboardPage.tsx  # Router rankings
│   ├── SubmitPromptPage.tsx # Router submission
│   ├── AboutPage.tsx   # Project information
│   └── *.css          # Page-specific styles
├── data/               # Mock data and constants
│   └── mockData.ts     # Router data and contact info
├── types/              # TypeScript type definitions
│   └── index.ts        # Router and data types
├── assets/             # Static assets
│   └── images/         # Figures from research paper
├── App.tsx             # Main application component
├── App.css             # Global styles
└── index.tsx           # Application entry point

Router Data Structure

interface Router {
  id: string;
  name: string;
  type: 'academic' | 'commercial';
  description: string;
  metrics: {
    arenaScore: number;
    costRatioScore: number;
    optimalAccScore: number;
    latencyScore: number;
    robustnessScore: number;
    overallRank: number;
  };
  modelPool: string[];
  paperUrl?: string;
  githubUrl?: string;
}

Contributing

We welcome contributions to the RouterArena platform! Please see our submission guidelines on the website or contact us directly.

Citation

If you use RouterArena in your research, please cite our paper:

@misc{lu2024routerarena,
  title={RouterArena: An Open Platform for Comprehensive Comparison of LLM Routers},
  author={Yifan Lu and Rixin Liu and Jiayi Yuan and Xingqi Cui and Shenrun Zhang and Hongyi Liu and Jiarong Xing},
  year={2024},
  eprint={2510.00202},
  archivePrefix={arXiv},
  primaryClass={cs.LG},
  url={https://arxiv.org/abs/2510.00202}
}

Contact

Acknowledgments

We thank all contributors who have made this project possible.

About

Website for RouterArena

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •