AI Proxy

The Orq AI Proxy is a powerful tool that enables you to access models from OpenAI, Anthropic, Google, AWS, and third-party inference providers using an Unified API.

List of supported models

Chat models

curl https://api.orq.ai/v2/proxy/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -d '{
    "model": "openai/gpt-4o",
    "messages": [
      {
        "role": "system",
        "content": "You are a helpful assistant."
      },
      {
        "role": "user",
        "content": "Hello!"
      }
    ]
  }'
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

completion = client.chat.completions.create(
  model="openai/gpt-4o",
  messages=[
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Hello!"}
  ]
)

print(completion.choices[0].message)
import OpenAI from "openai";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const completion = await openai.chat.completions.create({
    messages: [{ role: "system", content: "You are a helpful assistant." }],
    model: "openai/gpt-4o"
  });

  console.log(completion.choices[0]);
}

main();
ProviderModel
Anthropicanthropic/claude-2.0
Anthropicanthropic/claude-2.1
Anthropicanthropic/claude-3-5-haiku-20241022
Azureazure/gpt-35-turbo
Azureazure/gpt-35-turbo-16k
Azureazure/gpt-4
Azureazure/gpt-4-32k
Azureazure/llama-2-13b-chat
Azureazure/llama-2-70b-chat
Azureazure/llama-2-7b-chat
Azureazure/llama-3-70B-instruct
Azureazure/llama-3-8B-instruct
Azureazure/llama-3.1-405B-instruct
Azureazure/llama-3.1-70B-instruct
Azureazure/llama-3.1-8B
Azureazure/mistral-large
Azureazure/o1
Azureazure/o1-mini
Azureazure/o3-mini
Coherecohere/command-r
Coherecohere/command-r-plus
Vertex AIgoogle/chat-bison-32k@002
Vertex AIgoogle/chat-bison@001
Vertex AIgoogle/chat-bison@002
Vertex AIgoogle/claude-3-5-haiku@20241022
Vertex AIgoogle/gemini-1.0-pro-001
Google AIgoogle-ai/gemini-1.0-pro
Groqgroq/deepseek-r1-distill-llama-70b
Groqgroq/deepseek-r1-distill-qwen-32b
Groqgroq/gemma2-9b-it
Groqgroq/llama-3.1-8b-instant
Groqgroq/llama-3.2-11b-vision-preview
Groqgroq/llama-3.2-1b-preview
Groqgroq/llama-3.2-3b-preview
Groqgroq/llama-3.2-90b-vision-preview
Groqgroq/llama-3.3-70b-specdec
Groqgroq/llama-3.3-70b-versatile
Groqgroq/llama-guard-3-8b
Groqgroq/llama3-70b-8192
Groqgroq/llama3-8b-8192
Groqgroq/mistral-saba-24b
Groqgroq/mixtral-8x7b-32768
Groqgroq/qwen-2.5-32b
Groqgroq/qwen-2.5-coder-32b
Groqgroq/qwen-qwq-32b
OpenAIopenai/gpt-3.5-turbo
OpenAIopenai/gpt-3.5-turbo-0125
OpenAIopenai/gpt-3.5-turbo-1106
OpenAIopenai/gpt-3.5-turbo-16k
OpenAIopenai/gpt-4
OpenAIopenai/gpt-4-0125-preview
OpenAIopenai/gpt-4-0314
OpenAIopenai/gpt-4-0613
OpenAIopenai/gpt-4-1106-preview
OpenAIopenai/gpt-4-32k
OpenAIopenai/gpt-4-32k-0613
OpenAIopenai/gpt-4-turbo-preview
OpenAIopenai/o1-mini
OpenAIopenai/o1-mini-2024-09-12
OpenAIopenai/o1-preview
OpenAIopenai/o1-preview-2024-09-12
Perplexityperplexity/r1-1776
Perplexityperplexity/sonar
Perplexityperplexity/sonar-deep-research
Perplexityperplexity/sonar-pro
Perplexityperplexity/sonar-reasoning
Perplexityperplexity/sonar-reasoning-pro
Together AItogetherai/deepseek-ai/deepseek-llm-67b-chat
Together AItogetherai/deepseek-ai/DeepSeek-R1
Together AItogetherai/deepseek-ai/DeepSeek-V3
Together AItogetherai/meta-llama/Llama-3.3-70B-Instruct-Turbo
Together AItogetherai/meta-llama/Meta-Llama-Guard-3-8B

Completion models

curl https://api.orq.ai/v2/proxy/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -d '{
    "model": "openai/gpt-3.5-turbo-instruct",
    "prompt": "Once upon a time",
    "max_tokens": 100
  }'
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

completion = client.completions.create(
  model="openai/gpt-3.5-turbo-instruct",
  prompt="Once upon a time",
  max_tokens=100
)

print(completion.choices[0].text)
import OpenAI from "openai";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const completion = await openai.completions.create({
    model: "openai/gpt-3.5-turbo-instruct",
    prompt: "Once upon a time",
    max_tokens: 100
  });

  console.log(completion.choices[0].text);
}

main();
ProviderModel
Anthropicanthropic/claude-instant-1.2
AWS Bedrockaws/ai21.j2-mid-v1
AWS Bedrockaws/ai21.j2-ultra-v1
AWS Bedrockaws/amazon.titan-text-express-v1
AWS Bedrockaws/anthropic.claude-instant-v1
AWS Bedrockaws/anthropic.claude-v2
AWS Bedrockaws/anthropic.claude-v2:1
AWS Bedrockaws/cohere.command-light-text-v14
AWS Bedrockaws/cohere.command-text-v14
Azureazure/gpt-35-turbo-instruct
Azureazure/llama-2-13b
Azureazure/llama-2-70b
Azureazure/llama-2-7b
Coherecohere/command
Coherecohere/command-light
Vertex AIgoogle/text-bison-32k@002
Vertex AIgoogle/text-bison@001
Vertex AIgoogle/text-bison@002
Vertex AIgoogle/text-unicorn@001
OpenAIopenai/gpt-3.5-turbo-instruct

Embedding models

ProviderModel
Azureazure/text-embedding-ada-002
Coherecohere/embed-english-light-v3.0
Coherecohere/embed-english-v3.0
Coherecohere/embed-multilingual-light-v3.0
Coherecohere/embed-multilingual-v3.0
Jina AIjina/jina-clip-v1
Jina AIjina/jina-clip-v2
Jina AIjina/jina-embeddings-v2-base-code
Jina AIjina/jina-embeddings-v2-base-de
Jina AIjina/jina-embeddings-v2-base-en
Jina AIjina/jina-embeddings-v2-base-es
Jina AIjina/jina-embeddings-v2-base-zh
Jina AIjina/jina-embeddings-v3
OpenAIopenai/text-embedding-3-large
OpenAIopenai/text-embedding-3-small
OpenAIopenai/text-embedding-ada-002

Image models

curl https://api.orq.ai/v2/proxy/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -d '{
    "model": "openai/dall-e-3",
    "prompt": "A beautiful sunset over mountains",
    "n": 1,
    "size": "1024x1024"
  }'
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

response = client.images.generate(
  model="openai/dall-e-3",
  prompt="A beautiful sunset over mountains",
  n=1,
  size="1024x1024"
)

print(response.data[0].url)
import OpenAI from "openai";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const response = await openai.images.generate({
    model: "openai/dall-e-3",
    prompt: "A beautiful sunset over mountains",
    n: 1,
    size: "1024x1024"
  });

  console.log(response.data[0].url);
}

main();
ProviderModel
Azureazure/dall-e-3
FALfal/flux-pro/new
FALfal/flux/dev
FALfal/flux/schnell
Vertex AIgoogle/imagegeneration@006
Vertex AIgoogle/imagen-3.0-fast-generate-001
Vertex AIgoogle/imagen-3.0-generate-001
Leonardo AIleonardoai/leonard-diffusion-xl
Leonardo AIleonardoai/leonard-kino-xl
Leonardo AIleonardoai/leonard-lightning-xl
Leonardo AIleonardoai/leonard-vision-xl
OpenAIopenai/dall-e-2
OpenAIopenai/dall-e-3

Moderations models

curl https://api.orq.ai/v2/proxy/moderations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -d '{
    "model": "openai/text-moderation-latest",
    "input": "I want to check if this text is appropriate."
  }'
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

response = client.moderations.create(
  model="openai/text-moderation-latest",
  input="I want to check if this text is appropriate."
)

print(response.results[0])
import OpenAI from "openai";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const response = await openai.moderations.create({
    model: "openai/text-moderation-latest",
    input: "I want to check if this text is appropriate.",
  });

  console.log(response.results[0]);
}

main();
ProviderModel
OpenAIopenai/omni-moderation-2024-09-26
OpenAIopenai/omni-moderation-latest
OpenAIopenai/text-moderation-007
OpenAIopenai/text-moderation-latest
OpenAIopenai/text-moderation-stable

Reranking models

curl https://api.orq.ai/v2/proxy/rerank \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -d '{
    "model": "cohere/rerank-english-v3.0",
    "query": "What is machine learning?",
    "documents": [
      "Machine learning is a branch of AI",
      "Machine learning uses data to improve",
      "AI is changing the world"
    ]
  }'
ProviderModel
Coherecohere/rerank-english-v3.0
Coherecohere/rerank-multilingual-v3.0
Coherecohere/rerank-v3.5
Jina AIjina/jina-colbert-v2
Jina AIjina/jina-reranker-v1-base-en
Jina AIjina/jina-reranker-v1-tiny-en
Jina AIjina/jina-reranker-v1-turbo-en
Jina AIjina/jina-reranker-v2-base-multilingual

Speech-to-Text models

curl https://api.orq.ai/v2/proxy/audio/transcriptions \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -F file="@/path/to/audio.mp3" \
  -F model="openai/whisper-1"
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

audio_file = open("speech.mp3", "rb")
transcript = client.audio.transcriptions.create(
  model="openai/whisper-1", 
  file=audio_file
)

print(transcript.text)
import OpenAI from "openai";
import fs from "fs";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const transcript = await openai.audio.transcriptions.create({
    file: fs.createReadStream("speech.mp3"),
    model: "openai/whisper-1",
  });

  console.log(transcript.text);
}

main();
ProviderModel
Azureazure/whisper
OpenAIopenai/whisper-1

Text-to-Speech models

curl https://api.orq.ai/v2/proxy/audio/speech \
  -H "Authorization: Bearer $ORQ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/tts-1",
    "input": "Hello world!",
    "voice": "alloy"
  }' --output speech.mp3
from openai import OpenAI
import os

client = OpenAI(
  base_url="https://api.orq.ai/v2/proxy",
  api_key=os.getenv("ORQ_API_KEY"),
)

response = client.audio.speech.create(
  model="openai/tts-1",
  voice="alloy",
  input="Hello world!"
)

response.stream_to_file("speech.mp3")
import OpenAI from "openai";
import fs from "fs";

const openai = new OpenAI({
  baseURL: 'https://api.orq.ai/v2/proxy',
  apiKey: process.env.ORQ_API_KEY,
});

async function main() {
  const mp3 = await openai.audio.speech.create({
    model: "openai/tts-1",
    voice: "alloy",
    input: "Hello world!",
  });

  const buffer = Buffer.from(await mp3.arrayBuffer());
  await fs.promises.writeFile("speech.mp3", buffer);
}

main();
ProviderModel
Eleven Labselevenlabs/eleven_flash_v2
Eleven Labselevenlabs/eleven_flash_v2_5
Eleven Labselevenlabs/eleven_multilingual_v2
Eleven Labselevenlabs/eleven_turbo_v2_5
OpenAIopenai/tts-1
OpenAIopenai/tts-1-hd

Text-to-Speech Voices

The following voices are available for Text-to-Speech models:

OpenAI

  • alloy: Neutral, versatile voice
  • echo: Neutral, soft-spoken voice
  • fable: Expressive, narrative-focused voice
  • onyx: Deep, authoritative voice
  • nova: Warm, natural voice
  • shimmer: Clear, optimistic voice

ElevenLabs

  • aria: Neutral, versatile voice
  • roger: Deep, authoritative voice
  • sarah: Warm, friendly voice
  • laura: Soft, gentle voice
  • charlie: Casual, conversational voice
  • george: Professional, articulate voice
  • callum: Youthful, energetic voice
  • river: Calm, soothing voice
  • liam: Clear, confident voice
  • charlotte: Elegant, refined voice
  • alice: Bright, cheerful voice
  • matilda: Thoughtful, measured voice
  • will: Reliable, trustworthy voice
  • jessica: Engaging, expressive voice
  • eric: Authoritative, commanding voice
  • chris: Friendly, approachable voice
  • brian: Mature, distinguished voice
  • daniel: Versatile, balanced voice
  • lily: Sweet, melodious voice
  • bill: Grounded, authentic voice