Artemis
AI Management Platform - unified LLM proxy with usage tracking.
Overview
Artemis provides a unified OpenAI-compatible API for accessing multiple LLM providers. It handles authentication, usage tracking, cost analytics, and multi-tenant access control.
URL: https://artemis.meetrhea.com
Features
| Feature | Description |
|---|---|
| LLM Proxy | OpenAI-compatible API for Claude, GPT, Gemini, Perplexity |
| Providers | Multi-provider key management with encryption |
| Usage Tracking | Per-request logging with cost calculation |
| Whisper | Audio transcription via OpenAI Whisper |
| Venus | v0 design AI integration (planned) |
Architecture
┌─────────────────────────────────────────────────────────┐
│ Artemis │
├─────────────────────────────────────────────────────────┤
│ Organization │
│ └── Group │
│ ├── API Keys (for clients) │
│ └── Provider Accounts │
│ └── Provider Keys (OpenAI, Anthropic...) │
└─────────────────────────────────────────────────────────┘
Hierarchy
- Organization: Top-level container (company, team)
- Group: Project or team within an org
- API Key: Client credentials for accessing Artemis
- Provider Account: Account with a provider (e.g., OpenAI org)
- Provider Key: Actual API key for a provider (encrypted)
Quick Start
Using the OpenAI SDK
from openai import OpenAI
client = OpenAI(
api_key="your-artemis-api-key",
base_url="https://artemis.meetrhea.com/v1"
)
response = client.chat.completions.create(
model="claude-sonnet-4-20250514",
messages=[{"role": "user", "content": "Hello!"}]
)
Using curl
curl https://artemis.meetrhea.com/v1/chat/completions \
-H "Authorization: Bearer $ARTEMIS_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-20250514",
"messages": [{"role": "user", "content": "Hello!"}]
}'
Supported Providers
| Provider | Models | Auth Method |
|---|---|---|
| Anthropic | Claude 4, Claude 3.5 | x-api-key header |
| OpenAI | GPT-4o, GPT-4, o1, o3 | Bearer token |
| Gemini 2.0, Gemini 1.5 | Query param | |
| Perplexity | Sonar Pro, Sonar | Bearer token |
| OpenRouter | 200+ models | Bearer token |
Authentication
Artemis uses Rhea SSO (Authentik) for the web dashboard. API access uses Artemis API keys.
Getting an API Key
- Log in at https://artemis.meetrhea.com
- Go to API Keys page
- Create a new key for your group
- Use the key in your applications
Tech Stack
- Backend: FastAPI with async SQLAlchemy
- Database: PostgreSQL (Coolify)
- Auth: Rhea SSO (Authentik)
- Frontend: Jinja2 templates with Tailwind CSS