GetAiApiKey/Daftar Periksa API Kecerdasan Buatan untuk Produksi
Cara Menginstal LLM di Python: Lokal atau API
Anda dapat menjalankan model di mesin Anda sendiri, atau Anda dapat menginstal satu paket Python kecil dan memanggil model yang di-host melalui HTTP. Halaman ini membahas keduanya, kemudian menelusuri rute API langkah demi langkah.
Diperbarui

Poin utama
- Instalasi lokal memerlukan bobot model dan memori yang cukup; rute API hanya memerlukan paket openai dan kunci.
- Atur URL dasar ke https://api.getaiapikey.com/v1 dan model ke uncensored.
- Streaming, pemanggilan fungsi, dan mode JSON semuanya berfungsi melalui klien OpenAI standar.
- Tangani HTTP 429 dengan percobaan ulang singkat, dan pertahankan panggilan konkuren di angka 8 atau di bawahnya.
Dua arti menginstal LLM
Ketika orang bertanya cara menginstal llm di python, mereka biasanya berarti salah satu dari dua hal. Yang pertama adalah menjalankan model secara lokal: mengunduh bobot dan memuatnya dengan pustaka di CPU atau GPU Anda sendiri. Yang kedua adalah menginstal pustaka klien sehingga kode Python Anda dapat berbicara dengan model yang berjalan di tempat lain. Keduanya valid, dan yang benar tergantung pada perangkat keras Anda dan apa yang ingin Anda bangun.
Rute API jauh lebih singkat. Anda menjalankan pip install openai, mengarahkan klien ke base URL, dan memanggil model. Tidak ada bobot, tidak ada driver GPU, tidak ada perencanaan memori. Sisa halaman ini memberikan langkah-langkah dan kode untuk rute tersebut, dengan bagian singkat tentang yang lokal agar Anda dapat membandingkannya.
Instalasi lokal atau API yang di-host: cara memilih
| Pertanyaan | Instalasi lokal | API Terhosting |
|---|---|---|
| Apa yang Anda instal | Pustaka inferensi ditambah bobot model | Paket openai |
| Perangkat Keras | Memori dan biasanya GPU yang sesuai dengan model | Mesin apa pun yang dapat melakukan panggilan HTTPS |
| Biaya | Perangkat keras dan listrik Anda | Per token, dari saldo prabayar |
| Bekerja secara offline | Ya | Tidak |
| Waktu hingga balasan pertama | Unduh, pengaturan, penyetelan | Beberapa menit |
Lokal masuk akal jika Anda harus menyimpan semuanya di satu mesin, perlu bekerja secara offline, atau ingin bereksperimen dengan bobot itu sendiri. Perpustakaan seperti binding llama.cpp atau Hugging Face transformers adalah titik awal yang biasa; periksa dokumentasi mereka sendiri untuk persyaratan perangkat keras, karena itu bergantung pada ukuran model yang Anda pilih.
API masuk akal jika Anda ingin hasil kerja cepat, laptop Anda tidak dapat memuat model besar, atau aplikasi Anda perlu melayani banyak pengguna. Anda membayar per token alih-alih membeli perangkat keras. Untuk layanan ini biayanya $0,15 per 1 juta token input dan $0,50 per 1 juta token output, tanpa langganan. Detailnya ada di halaman harga.
Langkah 1: buat lingkungan virtual dan instal paket
Gunakan lingkungan virtual agar instalasi tetap bersih. Rilis Python 3 terbaru apa pun berfungsi dengan paket openai.
python3 -m venv .venv
source .venv/bin/activate
pip install openai
Selanjutnya Anda memerlukan kunci. Daftar di halaman kunci API dengan Google atau dengan email dan kata sandi. Pengguna baru dapat mengklaim kredit uji coba senilai $0,50 di sana dengan satu klik, berlaku selama 7 hari dan tanpa kartu. Simpan kunci dalam variabel lingkungan, bukan di file sumber Anda:
export API_KEY="paste-your-key-here"Langkah 2: buat panggilan pertama Anda
Layanannya kompatibel dengan OpenAI, sehingga satu-satunya perubahan dari skrip OpenAI standar adalah base URL dan ID model. ID modelnya adalah uncensored.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.getaiapikey.com/v1",
api_key=os.environ["API_KEY"],
)
resp = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": "You are a concise assistant."},
{"role": "user", "content": "Explain what a context window is in two sentences."},
],
temperature=0.7,
max_tokens=200,
)
print(resp.choices[0].message.content)
print(resp.usage.prompt_tokens, resp.usage.completion_tokens)
Jika ini mencetak jawaban dan dua hitungan token, instalasi selesai. Untuk memeriksa apakah kunci Anda berfungsi dan melihat ID model, Anda juga dapat memanggil GET /v1/models:
for m in client.models.list():
print(m.id)
Permintaan yang sama dari shell, tanpa Python sama sekali, adalah panggilan curl tunggal ke https://api.getaiapikey.com/v1/chat/completions dengan header Authorization: Bearer diikuti dengan kunci Anda. Lihat panduan memulai di dokumentasi untuk versi lengkapnya.
Langkah 3: alirkan token saat tiba
Menunggu jawaban panjang selesai sebelum mencetak apa pun terasa lambat. Atur stream=True dan server mengirim token melalui server-sent events. Anda dapat meminta ringkasan penggunaan dalam potongan terakhir dengan stream_options.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Write a short scene set in a lighthouse."}],
stream=True,
stream_options={"include_usage": True},
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
if chunk.usage:
print("\n", chunk.usage.total_tokens, "tokens")
Satu hal penting untuk produksi: permintaan streaming memegang slot konkurensinya hingga stream berakhir. Kunci penuh memungkinkan 8 permintaan konkuren, jadi jika aplikasi Anda membuka banyak stream panjang, tutuplah ketika pengguna memutuskan koneksi.
Langkah 4: mode JSON dan pemanggilan fungsi
Untuk output terstruktur, atur response_format menjadi objek JSON. Juga beri tahu model dalam prompt untuk menjawab dalam JSON, karena pengaturan menjamin sintaks JSON yang valid tetapi tidak nama bidang yang Anda inginkan.
import json
resp = client.chat.completions.create(
model="uncensored",
messages=[
{"role": "system", "content": "Reply only with JSON: {\"title\": string, \"tags\": [string]}"},
{"role": "user", "content": "Give me a title and tags for a post about slow travel."},
],
response_format={"type": "json_object"},
)
data = json.loads(resp.choices[0].message.content)
print(data["title"], data["tags"])
Pemanggilan fungsi mengikuti pola standar. Anda mendeskripsikan fungsi, model mungkin meminta untuk memanggilnya, Anda menjalankannya sendiri dan mengirim hasilnya kembali dengan role: "tool".
tools = [{
"type": "function",
"function": {
"name": "get_time",
"description": "Return the current time for a city",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
},
},
}]
messages = [{"role": "user", "content": "What time is it in Lisbon?"}]
first = client.chat.completions.create(
model="uncensored", messages=messages, tools=tools, tool_choice="auto"
)
msg = first.choices[0].message
if msg.tool_calls:
call = msg.tool_calls[0]
messages.append(msg)
messages.append({
"role": "tool",
"tool_call_id": call.id,
"content": json.dumps({"time": "14:05"}),
})
final = client.chat.completions.create(
model="uncensored", messages=messages, tools=tools
)
print(final.choices[0].message.content)
Uji panggilan fungsi pada beberapa prompt sebelum Anda bergantung pada mereka. Model apa pun dapat memilih fungsi yang salah atau mengisi argumen dengan buruk, jadi validasi argumen dalam kode Anda sendiri sebelum menjalankan apa pun dengan efek samping.
Langkah 5: tangani batas dan kesalahan
Kunci penuh memungkinkan 8 permintaan konkuren dan 300 permintaan per menit. Kunci uji coba memungkinkan 2 dan 60. Lewat batas itu Anda mendapatkan HTTP 429. Kode kesalahan rate_limited berarti terlalu banyak permintaan per menit, dan concurrency berarti terlalu banyak sekaligus. Saat kelebihan beban sementara, API juga mengembalikan 429 dengan header Retry-After: 5.
Klien Python OpenAI mencoba beberapa kegagalan secara mandiri, tetapi pembungkus eksplisit menjaga perilaku tetap jelas:
import time
from openai import RateLimitError
def ask(messages, tries=4):
for attempt in range(tries):
try:
return client.chat.completions.create(model="uncensored", messages=messages)
except RateLimitError:
time.sleep(5 * (attempt + 1))
raise RuntimeError("still rate limited after retries")
Setiap respons membawa X-Request-Id, X-Balance-USD dan header batas laju, yang dapat Anda log. Sertakan ID permintaan jika Anda menghubungi dukungan. Permintaan yang gagal atau ditolak tidak dibebankan biaya, sehingga mencoba lagi tidak menambah biaya.
Juga rencanakan batas ukuran. Jendela konteks adalah 100.000 token, prompt ditambah penyelesaian, dan badan permintaan maksimum adalah 8 MB. Riwayat obrolan panjang harus dipangkas atau dirangkum sebelum mencapai angka tersebut.
Ketika panggilan tidak berhasil
Kebanyakan masalah saat pertama kali dijalankan berasal dari sejumlah kesalahan kecil. Periksa hal-hal berikut secara berurutan sebelum Anda mencurigai hal lain.
- URL dasar tanpa jalur versi. Nilai harus berakhir dengan
/v1. Klien menambahkan/chat/completionske dalamnya, jadi hilangnya/v1mengirim permintaan ke rute yang salah. - Kunci salah atau hilang. Kunci dimasukkan ke dalam header
Authorization: Bearer, yang dibuat oleh klien dariapi_key. Jika variabel lingkungan kosong, klien akan menampilkan kesalahan saat dimulai atau mengirimkan kunci kosong. Cetakbool(os.environ.get("API_KEY"))untuk memeriksanya. - Nama model dari layanan lain. Satu-satunya ID model di sini adalah
uncensored. Nama seperti yang ada di tutorial lain tidak akan cocok. - Tidak ada saldo. Lihat header
X-Balance-USD. Uji coba yang telah melewati 7 hari, atau saldo yang habis, memerlukan isi saldo dari $20. - Paket lama. Jika contoh menggunakan
OpenAI(dan Python mengatakan tidak dapat mengimpor nama itu, Anda memiliki paket pra-1.0. Jalankanpip install --upgrade openai.
Untuk melihat respons mentah termasuk header, gunakan pembungkus respons mentah klien:
raw = client.chat.completions.with_raw_response.create(
model="uncensored",
messages=[{"role": "user", "content": "ping"}],
max_tokens=5,
)
print(raw.headers.get("x-request-id"), raw.headers.get("x-balance-usd"))
completion = raw.parse()
print(completion.choices[0].message.content)
Ini mencetak ID permintaan dan sisa saldo Anda di samping jawaban, yang merupakan pemeriksaan kesehatan cepat yang dapat Anda jalankan dari tugas cron atau skrip startup.
Menggunakannya dari alat lain
Karena endpoint mengikuti format OpenAI, pustaka Python lain dapat menggunakannya dengan dua pengaturan yang sama. Kerangka kerja yang menerima base URL OpenAI kustom hanya memerlukan base_url dan api_key. Untuk Node, paket resmi openai mengambil bidang yang sama:
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.getaiapikey.com/v1",
apiKey: process.env.API_KEY,
});
const r = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Say hello in five words." }],
});
console.log(r.choices[0].message.content);
Ini adalah layanan teks saja: tidak ada pembuatan gambar atau audio, tidak ada embedding dan tidak ada fine-tuning. Jika proyek Anda membutuhkan itu, gabungkan API ini dengan alat lain untuk bagian itu. Modelnya adalah model bobot terbuka yang dijalankan oleh penyedia independen dan disesuaikan untuk menjawab tanpa penolakan konten untuk penggunaan dewasa yang sah. Konten seksual yang melibatkan anak di bawah umur tidak pernah diizinkan.
Panduan lainnya
Tanya jawab
Apakah saya perlu GPU untuk menggunakan LLM dalam Python dengan cara ini?
Tidak. Model berjalan di sisi penyedia. Mesin Anda hanya memerlukan Python dan koneksi internet untuk memanggil endpoint.
Paket mana yang saya instal?
Instal paket openai resmi dengan pip. Kemudian atur Base URL ke https://api.getaiapikey.com/v1 dan model ke uncensored.
Apakah ada cara gratis untuk mencobanya?
Pengguna baru dapat mengklaim $0,50 kredit uji coba gratis dengan satu klik setelah mendaftar. Kredit ini berlaku selama 7 hari, tidak memerlukan kartu, dan dibatasi satu per orang.
Berapa biaya satu permintaan?
Sebuah permintaan dengan 2.000 token input dan 500 token output berharga $0,00055, dari $0,15 dan $0,50 per 1M token. Anda hanya membayar untuk permintaan yang berhasil.
Apakah ini mendukung streaming dan pemanggilan fungsi?
Ya. Streaming melalui SSE, pemanggilan fungsi, dan mode JSON semuanya berfungsi melalui klien OpenAI standar.
Kunci Anda hanya selangkah lagi dari satu formulir
Buat akun, salin kunci, ubah URL dasar. Itu saja seluruh proses pengaturannya.