Flask / README.md
UntilDot's picture
Update README.md
a997fd6 verified
metadata
title: Flask
emoji: 🤖
colorFrom: purple
colorTo: purple
sdk: docker
pinned: false

MoA Chat

MoA Chat is a multi-agent AI chat platform where several LLMs respond in parallel, and an aggregator model combines their outputs into a single response.

Features

  • Python 3 backend using Flask
  • Frontend with HTML, JavaScript, TailwindCSS (optional)
  • Simultaneous queries to multiple AI models
  • Aggregator LLM refines the combined output
  • Supports light and dark themes
  • Switch documentation language between English and Spanish
  • Secret API keys management
  • Hugging Face Spaces compatibility
  • Docker support
  • Free models through OpenRouter and others

Requirements

  • Python 3.11+
  • pip
  • API keys for model providers

Installation

  1. Clone the repository:
git clone https://huggingface.co/spaces/UntilDot/Flask
cd Flask
  1. Create a .env file:
OPENROUTER_API_KEY=your-openrouter-key
TOGETHER_API_KEY=your-together-key
GROK_API_KEY=your-grok-key
GROQ_API_KEY=your-groq-key
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the application:
python app.py

The server will be available at http://localhost:7860.

Adding New Models

Edit the file llm/model_config.json to register new models and providers.

Example:

{
  "providers": {
    "openrouter": {
      "url": "https://openrouter.ai/api/v1/chat/completions",
      "key_env": "OPENROUTER_API_KEY"
    }
  },
  "models": {
    "deepseek/deepseek-chat-v3-0324:free": "openrouter"
  }
}

Docker Support

To build and run using Docker:

Create the following Dockerfile:

FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 7860
CMD ["python", "app.py"]

Then:

docker build -t moa-chat .
docker run -d -p 7860:7860 --env-file .env moa-chat

Environment variables or an .env file are required for API keys.

License

Licensed under the Apache License 2.0.