ish icon "because why not !"

Welcome to the ish API documentation! We’re here to provide you free AI from the depths of Cloudflare's Playground—no keys, no limits, no nonsense. Well, that’s until Cloudflare decides to pull the plug. But for now, let’s just roll with it and have some fun!

Chat Completions Endpoint

POST /chat/v1/completions

Example JSON body:

{
  "model": "@cf/meta/llama-3.1-8b-instruct",
  "system_prompt": "You are a helpful assistant.",
  "messages": [
    {"role": "user", "content": "Hello, how are you?"}
  ],
  "temperature": 0.7,
  "max_tokens": 2048,
  "stream": false
}
      

We’ve got some super amazing code examples below—feel free to copy them, tweak them, or ignore them entirely!

          
curl -X POST "http://localhost:5000/chat/v1/completions" \ -H "Content-Type: application/json" \ -d '{ "model": "@cf/meta/llama-3.1-8b-instruct", "system_prompt": "You are a helpful assistant.", "messages": [ {"role": "user", "content": "Hello, how are you?"} ], "temperature": 0.7, "max_tokens": 2048, "stream": false }'
import requests

url = "http://localhost:5000/chat/v1/completions"
headers = {
    "Content-Type": "application/json"
}
data = {
    "model": "@cf/meta/llama-3.1-8b-instruct",
    "system_prompt": "You are a helpful assistant.",
    "messages": [
        {"role": "user", "content": "Hello, how are you?"}
    ],
    "temperature": 0.7,
    "max_tokens": 2048,
    "stream": False
}

response = requests.post(url, headers=headers, json=data)
print(response.json())
        
const axios = require('axios');

async function sendChat() {
  const url = "http://localhost:5000/chat/v1/completions";
  const headers = {
    "Content-Type": "application/json"
  };
  const data = {
    model: "@cf/meta/llama-3.1-8b-instruct",
    system_prompt: "You are a helpful assistant.",
    messages: [
      { role: "user", content: "Hello, how are you?" }
    ],
    temperature: 0.7,
    max_tokens: 2048,
    stream: false
  };

  try {
    const response = await axios.post(url, data, { headers });
    console.log(response.data);
  } catch (error) {
    console.error(error);
  }
}

sendChat();
        
Available Models

All these shiny models come straight from Cloudflare’s Playground. Because they’re feeling generous today, you can pick from any of these. But again, if they wake up one morning and decide to shut down the party, well... we’ll be gone. Until then, type away and enjoy.

@hf/thebloke/deepseek-coder-6.7b-base-awq
@hf/thebloke/deepseek-coder-6.7b-instruct-awq
@cf/deepseek-ai/deepseek-math-7b-instruct
@cf/thebloke/discolm-german-7b-v1-awq
@cf/tiiuae/falcon-7b-instruct
@hf/google/gemma-7b-it
@hf/thebloke/discolm-german-7b-v1-awq
@hf/thebloke/llama-2-13b-chat-awq
@cf/meta/llama-2-7b-chat-fp16
@cf/meta/llama-2-7b-chat-int8
@cf/meta/llama-3-8b-instruct
@cf/meta/llama-3-8b-instruct-awq
@cf/meta/llama-3.1-8b-instruct
@cf/meta/llama-3.1-8b-instruct-awq
@cf/meta/llama-3.1-8b-instruct-fp8
@cf/meta/llama-3.2-11b-vision-instruct
@cf/meta/llama-3.2-1b-instruct
@cf/meta/llama-3.2-3b-instruct
@cf/meta/llama-3.3-70b-instruct-fp8-fast
@hf/thebloke/llamaguard-7b-awq
@hf/meta-llama/meta-llama-3-8b-instruct
@cf/mistral/mistral-7b-instruct-v0.1
@hf/thebloke/mistral-7b-instruct-v0.1-awq
@hf/mistral/mistral-7b-instruct-v0.2
@hf/thebloke/neural-chat-7b-v3-1-awq
@cf/openchat/openchat-3.5-0106
@hf/thebloke/openhermes-2.5-mistral-7b-awq
@cf/microsoft/phi-2
@cf/qwen/qwen1.5-0.5b-chat
@cf/qwen/qwen1.5-1.8b-chat
@cf/qwen/qwen1.5-14b-chat-awq
@cf/qwen/qwen1.5-7b-chat-awq
@cf/defog/sqlcoder-7b-2
@hf/nexusflow/starling-lm-7b-beta
@cf/tinyllama/tinyllama-1.1b-chat-v1.0
@cf/fblgit/una-cybertron-7b-v2-bf16
@hf/thebloke/zephyr-7b-beta-awq

If you want a live list, just do a cheeky GET /models. No keys, no tokens, no disclaimers (except the one above!). Have fun!