Pengaturan
Instal library LlamaIndex dan adapter OpenAI-compatible:Konfigurasi Global Settings
Gunakan modulSettings LlamaIndex untuk menetapkan model chat dan embedding Neosantara secara serentak.
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Get a Virtual Private Server for just Rp 20,000 - the perfect fit for your server needs. Get here
Bangun pipeline RAG dan indeks dokumen dengan Neosantara dan LlamaIndex.
pip install -U llama-index llama-index-llms-openai-like llama-index-embeddings-openai-like
export NEOSANTARA_API_KEY="nsk_your_api_key_here"
NEOSANTARA_API_KEY=nsk_your_api_key_here
$env:NEOSANTARA_API_KEY="nsk_your_api_key_here"
Settings LlamaIndex untuk menetapkan model chat dan embedding Neosantara secara serentak.
import os
from llama_index.core import Settings
from llama_index.llms.openai_like import OpenAILike
from llama_index.embeddings.openai_like import OpenAILikeEmbedding
Settings.llm = OpenAILike(
model="deepseek-v4.1-flash",
api_key=os.environ["NEOSANTARA_API_KEY"],
api_base="https://api.neosantara.xyz/v1",
temperature=0.2,
max_tokens=1024,
is_chat_model=True
)
Settings.embed_model = OpenAILikeEmbedding(
model="text-embedding-3-small",
api_key=os.environ["NEOSANTARA_API_KEY"],
api_base="https://api.neosantara.xyz/v1"
)
import os
from llama_index.core import Document, VectorStoreIndex, Settings
from llama_index.llms.openai_like import OpenAILike
from llama_index.embeddings.openai_like import OpenAILikeEmbedding
# 1. Konfigurasi provider LLM dan Embedding
Settings.llm = OpenAILike(
model="deepseek-v4.1-flash",
api_key=os.environ["NEOSANTARA_API_KEY"],
api_base="https://api.neosantara.xyz/v1",
is_chat_model=True
)
Settings.embed_model = OpenAILikeEmbedding(
model="text-embedding-3-small",
api_key=os.environ["NEOSANTARA_API_KEY"],
api_base="https://api.neosantara.xyz/v1"
)
# 2. Siapkan dokumen contoh
documents = [
Document(text="Neosantara adalah AI Gateway Indonesia dengan dukungan pembayaran Rupiah dan saldo berbasis PAYG."),
Document(text="Limit rate tier Free adalah 10 RPM, 30.000 ITPM, dan 8.000 OTPM dengan deposit awal minimum Rp 50.000 via Mayar QRIS."),
Document(text="Fitur Guardrail UU PDP No. 27/2022 Neosantara dapat diaktifkan per-request melalui header X-Guard: on.")
]
# 3. Buat indeks vektor
index = VectorStoreIndex.from_documents(documents)
# 4. Inisialisasi query engine dan jalankan pertanyaan
query_engine = index.as_query_engine(similarity_top_k=2)
response = query_engine.query("Bagaimana cara mengaktifkan guardrail perlindungan data pribadi di Neosantara?")
print("Jawaban:", response)
query_engine = index.as_query_engine(streaming=True)
streaming_response = query_engine.query("Berapa limit rate untuk pengguna tier Free?")
for text in streaming_response.response_gen:
print(text, end="", flush=True)
print()
| Kebutuhan RAG | Model Embedding | Model Generasi (LLM) |
|---|---|---|
| Produksi Standar & Efisien | text-embedding-3-small | gemini-3.8-flash |
| Sintesis Dokumen Panjang | text-embedding-3-small | deepseek-v4.1-flash |
| Analisis Regulasi & Kontrak | text-embedding-3-large | claude-4.5-sonnet |