Mulai cepat

BeastFarmerAI adalah gerbang API yang bicara dua bahasa: format OpenAI dan format Anthropic. Kamu tidak perlu library khusus — pakai SDK yang sudah ada, cukup ganti baseURL dan apiKey.

Base URLhttps://beastfarmer.xyz/v1

Model7 model — lihat tabel di bawah

Format keybf-xxxxxxxxxxxxxxxxxxxxxxxx

Autentikasi

Kirim API key lewat salah satu header berikut — keduanya diterima, jadi SDK mana pun bisa langsung jalan:

Header
Authorization: Bearer bf-xxxxxxxxxxxx     # gaya OpenAI
x-api-key: bf-xxxxxxxxxxxx                # gaya Anthropic

Format OpenAI

POST /v1/chat/completions

Node.js
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "bf-xxxxxxxxxxxx",
  baseURL: "https://beastfarmer.xyz/v1",
});

const res = await client.chat.completions.create({
  model: "kimi-k3",
  messages: [
    { role: "system", content: "Kamu asisten yang membantu." },
    { role: "user", content: "Jelaskan quantum computing singkat." },
  ],
  temperature: 0.7,
  max_tokens: 1024,
});

console.log(res.choices[0].message.content);

GET /v1/models

Daftar model dalam format standar OpenAI — SDK apa pun bisa membacanya lewat client.models.list().

Terminal
curl https://beastfarmer.xyz/v1/models \
  -H "Authorization: Bearer bf-xxxxxxxxxxxx"
Hasil
{
  "object": "list",
  "data": [
    { "id": "kimi-k3",        "object": "model", "owned_by": "beastfarmerai",
      "description": "Model penalaran paling pintar di katalog..." },
    { "id": "glm-5.2",        ... },
    { "id": "qwen3.7-max",    ... },
    { "id": "kimi-k2.7-code", ... }
  ]
}

GET /v1/ — tanpa API key

Kalau kamu cuma ingin melihat katalog sebelum membeli, endpoint ini terbuka untuk siapa saja. Bisa langsung dibuka di browser: beastfarmer.xyz/v1/

Terminal
curl https://beastfarmer.xyz/v1/

# cuma nama modelnya saja:
curl -s https://beastfarmer.xyz/v1/ | python3 -c \
  "import sys,json;[print(m['id']) for m in json.load(sys.stdin)['models']]"

Format Anthropic

POST /v1/messages

Perhatikan: SDK Anthropic menambahkan /v1 sendiri, jadi baseURL-nya tanpa /v1.

Node.js
import Anthropic from "@anthropic-ai/sdk";

const client = new Anthropic({
  apiKey: "bf-xxxxxxxxxxxx",
  baseURL: "https://beastfarmer.xyz",
});

const msg = await client.messages.create({
  model: "kimi-k3",
  max_tokens: 1024,
  system: "Kamu asisten yang membantu.",
  messages: [{ role: "user", content: "Halo!" }],
});

console.log(msg.content[0].text);
Python
from anthropic import Anthropic

client = Anthropic(
    api_key="bf-xxxxxxxxxxxx",
    base_url="https://beastfarmer.xyz",
)

msg = client.messages.create(
    model="kimi-k3",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Halo!"}],
)
print(msg.content[0].text)

Semua model bisa dipakai lewat format Anthropic ini juga — cukup ganti nilai model.

Yang didukung: system, max_tokens, temperature, top_p, stop_sequences, stream, tools, tool_choice, serta blok tool_use dan tool_result.

Streaming

Tambahkan stream: true. Kedua format mengirim Server-Sent Events sesuai spesifikasi masing-masing — format OpenAI mengirim data: chunk, format Anthropic mengirim rangkaian message_startcontent_block_deltamessage_stop.

Python — OpenAI SDK
stream = client.chat.completions.create(
    model="kimi-k3",
    messages=[{"role": "user", "content": "Tulis puisi."}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

Model

Tujuh model, satu API key, satu kuota kredit. Cukup ganti nilai model di request.

ModelKarakterDirekomendasikan untuk
glm-5.2
bawaan
Latensi rendah, kualitas seimbang Beban kerja umum: percakapan, ringkasan, ekstraksi data, dan integrasi produksi sehari-hari.
qwen3.7-max Kapasitas terbesar Dokumen panjang, analisis bertingkat, dan tugas yang menuntut pemahaman konteks luas.
kimi-k2.7-code Dioptimalkan untuk kode Pembuatan, penyuntingan, dan peninjauan kode; integrasi dengan IDE dan agent pemrograman.
deepseek-v4-pro Penalaran mendalam Soal matematis, logika bertahap, dan analisis yang menuntut ketelitian argumen.
deepseek-v4-flash Cepat, biaya efisien Volume tinggi dengan kualitas yang tetap terjaga — klasifikasi, penulisan ulang, moderasi.
minimax-m3 Konteks panjang, hemat Percakapan panjang dan alur agent yang butuh konteks besar dengan biaya terjaga.
kimi-k3 Penalaran tertinggi Persoalan paling kompleks yang menuntut kualitas jawaban terbaik.

Panduan pemilihan. Mulailah dengan glm-5.2 sebagai baseline. Pindah ke model lain hanya ketika ada kebutuhan spesifik — kimi-k2.7-code untuk pekerjaan kode, deepseek-v4-pro untuk penalaran, deepseek-v4-flash atau minimax-m3 untuk menekan biaya. Gunakan kimi-k3 ketika kualitas jawaban benar-benar menentukan.

Nama lama tetap dilayani: moonshotai/kimi-k3-free dan beastfarmer-k3kimi-k3, kimi-k2.7kimi-k2.7-code, qwen-max dan qwen3.8-maxqwen3.7-max, deepseek-v4deepseek-v4-pro, deepseekdeepseek-v4-flash.

Mode berpikir (hemat token)

Khusus Kimi K3. Model ini reasoning: secara bawaan ia "berpikir" dulu sebelum menjawab. Model lain (GLM, Qwen, Kimi K2.7) mengabaikan parameter ini.

Isi pikirannya dikirim di field reasoning_content — terpisah dari content — dan ikut dihitung sebagai token keluaran.

Untuk sapaan singkat saja bedanya besar:

ModeToken terpakaiJawaban
Bawaan (berpikir)161Halo! Ada yang bisa saya bantu?
thinking: false47Halo! Ada yang bisa dibantu?

Matikan mode berpikir untuk tugas sederhana supaya kuotamu 3× lebih awet:

Format OpenAI
{
  "model": "kimi-k3",
  "messages": [{ "role": "user", "content": "Halo!" }],
  "thinking": false
}
Format Anthropic
{
  "model": "kimi-k3",
  "max_tokens": 1024,
  "messages": [{ "role": "user", "content": "Halo!" }],
  "thinking": { "type": "disabled" }
}

Butuh kendali lebih halus? reasoning_effort juga diteruskan apa adanya — nilainya low, high, atau max. Begitu juga chat_template_kwargs kalau kamu mau mengirim parameter mentah ke provider.

Catatan: reasoning_content bukan bagian dari spesifikasi OpenAI, jadi SDK resmi mengabaikannya — res.choices[0].message.content tetap berisi jawaban bersih. Field itu baru terlihat "berantakan" kalau kamu memakai curl mentah.

Kredit & kuota

Kuota dijual dalam kredit. Konversinya tetap dan sederhana:

1 token Kimi K32 kredit

Paket Starter (20 juta kredit)~10 juta token

Paket Pro (100 juta kredit)~50 juta token

Yang dihitung tiap request adalah prompt_tokens + completion_tokens apa adanya dari provider — termasuk seluruh riwayat percakapan, definisi tools, dan hasil tool yang kamu kirim ulang setiap giliran. Angka itu lalu dikali 2 menjadi kredit.

Setiap respons membawa rinciannya, jadi kamu bisa mencocokkan sendiri:

Response header
X-BeastFarmer-Tokens-Charged: 54        # token asli request ini
X-BeastFarmer-Credits-Used: 27450       # total kredit terpakai
X-BeastFarmer-Credits-Remaining: 9972550
X-BeastFarmer-Tokens-Remaining: 4986275 # sisa dalam token asli

Masa aktif: setiap API key berlaku 7 hari sejak pembelian. Lewat dari itu key dibalas 403 walau kredit masih tersisa. Sisa hari terlihat di dashboard.

Batas 30 request per menit berlaku per API key. Kalau kredit habis, request dibalas 429 dan kamu tinggal beli paket lagi — kredit key baru berdiri sendiri.

Catatan untuk pengguna agent: agent mengirim ulang seluruh percakapan di setiap giliran, jadi biayanya menumpuk. Percakapan 10 giliran bukan 10× biaya satu pesan — bisa 20–30× lipat. Pakai "thinking": false dan pangkas riwayat lama untuk menghemat.

Kode error

KodeArtiSolusi
401Key tidak dikirim atau tidak dikenalPeriksa header Authorization
403Key dinonaktifkan, masa aktif 7 hari habis, atau akun diblokirCek sisa hari di dashboard, beli paket baru kalau sudah lewat
429Kredit habis atau lewat batas 30 req/menitBeli paket baru / tunggu sebentar
502Provider upstream menolak requestCoba lagi; isi pesan error diteruskan apa adanya
503Seluruh pool key sedang sibukTunggu beberapa detik lalu ulangi

Butuh bantuan?

Kalau ada kendala teknis, pembayaran tidak terdeteksi, atau butuh model yang belum tersedia, hubungi admin langsung lewat Telegram — biasanya dibalas cepat.

💬 Telegram @ravue

Ketentuan layanan

Layanan disediakan apa adanya (as-is), tanpa garansi dalam bentuk apa pun.
  • Tidak ada jaminan ketersediaan. Tidak ada SLA. Layanan bisa lambat, terganggu, atau tidak tersedia sewaktu-waktu tanpa pemberitahuan.
  • Tidak ada jaminan kualitas jawaban. Keluaran model bisa keliru. Verifikasi sendiri sebelum dipakai untuk keputusan penting.
  • Bergantung pada pihak ketiga. Model dilayani penyedia eksternal yang bisa mengubah batasan, menaikkan harga, atau menghentikan layanan kapan saja — di luar kendali kami.
  • Tidak ada refund otomatis. Kredit terpakai tidak dapat dikembalikan. Untuk kredit yang belum terpakai, silakan hubungi admin — ditangani per kasus, bukan hak yang dijamin.
  • Masa aktif tetap berjalan. Key berlaku 7 hari sejak pembelian, termasuk selama masa gangguan.
  • Tidak untuk sistem kritis. Jangan pakai layanan ini untuk hal yang menyangkut keselamatan, keuangan, medis, atau hukum.

Kami berusaha memberi tahu gangguan secepatnya lewat pengumuman di dashboard, dan admin bisa dihubungi langsung di Telegram. Tapi itu upaya terbaik, bukan janji yang mengikat.