Kod
LlamaIndex
LlamaIndex’in OpenAILike sınıfını temel URL’n, anahtarın ve bir model kimliğiyle kullan. Kendi kendine bilemeyeceği dört bayrağı ayarla; gerisi LlamaIndex’in üstünde çalışır.
29 Ekim 2026 tarihinde kontrol edildi
Kurulum ve bağlantı
pip install llama-index-core llama-index-llms-openai-like
export NOKEEP_API_KEY="sk-nokeep-test" # your own key once it connectsimport os
from llama_index.llms.openai_like import OpenAILike
llm = OpenAILike(
model="deepseek-v4.1-flash-uncensored",
api_base="https://nokeep.ai/v1",
api_key=os.environ["NOKEEP_API_KEY"],
is_chat_model=True,
is_function_calling_model=True,
context_window=1000000,
temperature=0.8,
)
print(llm.complete("Name three good names for a tavern.").text)is_chat_model=Truesohbet tamamlamalarını kullanır. Bu olmadan LlamaIndex, nokeep’te bulunmayan/v1/completionsadresini çağırır.is_function_calling_model=True, ajanların vechat_with_toolsçağrısının araç göndermesini sağlar.context_windowvarsayılanı 3.900 token’dır; bu yüzden LlamaIndex uzun sohbetleri ve alınan metinleri sığacak şekilde kırpar. Modelin gerçek bağlamını yaz: DeepSeek için 1.000.000, GLM için 128.000.temperaturevarsayılanı 0,1’dir; bu da kurguyu düz ve tekrarlı yapar. Kendi değerini yaz.
Sohbet ve akış
from llama_index.core.llms import ChatMessage
messages = [
ChatMessage(role="system", content="You are a blunt editor."),
ChatMessage(role="user", content="Cut this opening line to ten words: ..."),
]
print(llm.chat(messages).message.content)
for part in llm.stream_chat(messages):
print(part.delta, end="", flush=True)Araçlar ve ajanlar
import asyncio
from llama_index.core.agent.workflow import FunctionAgent
def get_weather(city: str) -> str:
"""Get the weather in a city."""
return f"18°C and clear in {city}"
agent = FunctionAgent(
tools=[get_weather],
llm=llm,
system_prompt="You answer questions about the weather.",
)
async def main():
print(await agent.run("What's the weather in Lisbon?"))
asyncio.run(main())Döngüsüz, araçlı tek bir çağrı için llm.chat_with_tools([tool], user_msg=...) kullan ve çağrıları llm.get_tool_calls_from_response(...) ile oku. Bkz. Araç çağrıları.
Düşünme ve diğer alanlar
import os
from llama_index.llms.openai_like import OpenAILike
thinker = OpenAILike(
model="deepseek-v4.1-flash-uncensored",
api_base="https://nokeep.ai/v1",
api_key=os.environ["NOKEEP_API_KEY"],
is_chat_model=True,
context_window=1000000,
max_tokens=4000,
additional_kwargs={"reasoning_effort": "high", "min_p": 0.05},
)additional_kwargs her isteğe olduğu gibi girer. Düşünme max_tokens içinde sayılır; bu yüzden ona yer bırak. Bkz. Düşünme.
Dikkat edilecekler
- `reasoning_effort` yalnızca modelin kendi değerlerini kabul eder.
deepseek-v4.1-flash-uncensorednone,low,high,maxalır;glm-5.3-flash-uncensoredlow,highalır. Diğer uygulamalarınminimal,mediumvexhighdeğerleri modelin en yakın düzeyinde çalışır (mediumhigholarak,xhighmodelde varsamaxolarak); başka her değer400 invalid_reasoning_efforthatası verir. Bkz. Düşünme. - GLM araçlarını kendi seçer.
glm-5.3-flash-uncensoredyalnızcaautoya danonetool_choicedeğeri kabul eder. Bir aracı zorlamak (requiredya da bir işlev adı vermek)400 unsupported_tool_choicehatası verir. Bir araç zorlamanız gerektiğinde DeepSeek kullanın. - Bir modelin alamayacağı alanlar reddedilmez, atılır. Çağrı yine yanıt verir ve
x-nokeep-ignoredyanıt başlığı, dışarıda bırakılanları söyler. GLM yalnızcatools,tool_choicevereasoning_effortalanlarını tutar; bu yüzdentemperatureveresponse_formatatılır. Bkz. her modelin hangi alanları aldığı. - `n` değeri 1 olmalıdır. Birden çok yanıt istiyorsan birden çok çağrı yap.
- Yalnızca sohbet tamamlamaları.
/v1/responsesve/v1/embeddingsyoktur; bunlardan birini varsayılan alan bir çerçeveyi sohbet tamamlamalarına yönlendirmen gerekir, gömmeler için başka bir sağlayıcı gerekir.
Bir RAG uygulaması için Settings.llm = llm yaz ve gömme modelini olduğu yerde bırak: nokeep sohbet modelini çalıştırır, gömmeleri değil. glm-5.3-flash-uncensored ile LlamaIndex’in her çağrıda gönderdiği temperature atılır ve x-nokeep-ignored içinde adı yazılır.
Sorular
Neden OpenAI değil de OpenAILike?
LlamaIndex’in OpenAI sınıfı model adını kendi listesiyle karşılaştırır ve tanımadığı adları reddeder. OpenAILike her adı ve her temel URL’yi kabul eder.
LlamaIndex belgelerimi nokeep üzerinde dizinler mi?
Hayır. Dizinleme ve gömmeler, nerede kurduysan orada çalışır. nokeep’e yalnızca sohbet çağrıları ulaşır ve nokeep her biri için yalnızca token sayılarını tutar.