Tiga nilai itu
- URL dasar
https://nokeep.ai/v1- Kunci API
sk-nokeep-test (free) or your sk-nokeep-… key- Model
deepseek-v4.1-flash-uncensored
SDK OpenAI resmi membaca URL dasar dan kunci dari variabel lingkungan, jadi untuk banyak proyek perpindahannya tidak perlu mengubah kode sama sekali:
export OPENAI_BASE_URL="https://nokeep.ai/v1"
export OPENAI_API_KEY="sk-nokeep-…"Lalu ganti nama model di tempat kamu memanggilnya. Baris lainnya tetap.
Di Python, JavaScript dan curl
import os
from openai import OpenAI
client = OpenAI(
base_url="https://nokeep.ai/v1",
api_key=os.environ["NOKEEP_API_KEY"],
)
reply = client.chat.completions.create(
model="deepseek-v4.1-flash-uncensored",
messages=[{"role": "user", "content": "Write a haiku about moving house."}],
)
print(reply.choices[0].message.content)Streaming, alat, keluaran JSON dan gambar bekerja seperti pada format OpenAI. Pustaka dan kerangka kerja yang dibangun di atas SDK OpenAI memakai URL dasar dan kunci yang sama. Coba panggilannya di sini dulu:
Yang didukung
| Fitur | Didukung |
|---|---|
POST /v1/chat/completions, utuh atau di-stream | Ya, kedua model |
GET /v1/models dan GET /v1/models/{id} | Ya, dengan panjang konteks, balasan terpanjang dan harga per token |
| Peran: system, developer, user, assistant, tool | Ya |
Panggilan alat: tools, tool_choice | Ya. Di GLM, tool_choice hanya menerima auto atau none. |
reasoning_effort | DeepSeek: none, low, high, max. GLM: low, high. |
Gambar sebagai bagian image_url, tautan atau data URL | deepseek-v4.1-flash-uncensored, hingga 10 per permintaan |
response_format, temperature, top_p, stop, seed, penalti | deepseek-v4.1-flash-uncensored |
stream_options.include_usage, max_tokens, max_completion_tokens | Ya |
Input yang di-cache di usage.prompt_tokens_details.cached_tokens | Ya, ditagih dengan harga cache |
Setiap kolom, model demi model: Chat completions.
Yang tidak
| Tidak didukung | Yang kamu dapat |
|---|---|
| Endpoint lain: embeddings, images, audio, files, batch, moderations, API Responses dan Assistants, legacy completions | 404 not_found, menyebutkan empat rute yang tersedia |
n selain 1 | 400 unsupported_n |
reasoning_effort yang tidak diterima model | 400 invalid_reasoning_effort, menyebutkan yang diterima |
Fungsi bernama atau required sebagai tool_choice pada glm-5.3-flash-uncensored | 400 unsupported_tool_choice |
Gambar ke glm-5.3-flash-uncensored; bagian audio atau video ke model mana pun | 400 unsupported_input, menyebutkan model yang membaca gambar |
| Lebih dari 10 gambar, atau lebih dari 2,000 pesan | 400 too_many_images, 400 invalid_messages |
Kolom yang tidak diterima kedua model, seperti logprobs, logit_bias, user atau store | Dibuang, dan disebutkan di header x-nokeep-ignored |
Tidak ada yang tidak didukung ditebak atau diubah diam-diam: permintaan ditolak dengan kode, atau kolom yang tidak terpakai disebutkan di header. Setiap kode dan perbaikannya: Error.
Perbedaan kecil yang perlu diketahui
usage.nokeep_creditsmenyatakan biaya panggilan, dan headerx-nokeep-creditssertax-nokeep-balancemenyatakannya pada balasan utuh.- Penagihan memakai kredit prabayar: 1,000 kredit sama dengan $1, mulai dari $5, dan tidak pernah hangus. Panggilan yang ditolak tidak dikenai biaya.
- Batas laju: 120 permintaan per menit per kunci. Balasan
429membawaRetry-After. - Host GLM bisa sibuk pada jam ramai; panggilan yang sibuk dijawab
503 busydenganRetry-After: 5dan tidak dikenai biaya.
Pertanyaan
Apakah saya perlu mengubah kode untuk pindah?
Hanya URL dasar, kunci dan nama model. Dengan SDK resmi, dua yang pertama bisa diambil dari OPENAI_BASE_URL dan OPENAI_API_KEY di lingkungan.
Apakah ini bekerja dengan aplikasi yang menerima endpoint OpenAI kustom?
Bisa. Aplikasi apa pun dengan pengaturan endpoint kompatibel OpenAI atau kustom bisa dipakai. Panduan: SillyTavern, Open WebUI, dan agen coding di halaman agen coding.
Model OpenAI mana yang bisa saya panggil?
Tidak ada: formatnya milik OpenAI, tetapi modelnya deepseek-v4.1-flash-uncensored dan glm-5.3-flash-uncensored. GET /v1/models mencantumkan setiap id.
Apakah ada endpoint embeddings?
Belum. API melayani chat completions, daftar model dan rute status. Rute baru akan muncul di changelog.
Apa yang terjadi pada kolom yang tidak didukung?
Kolom itu dibuang dan disebutkan di header x-nokeep-ignored, sehingga kamu bisa melihat persis apa yang tidak dipakai. Nilai yang akan mengubah makna permintaan, seperti n di atas 1, ditolak dengan 400.