Instructions to use Nurova/Kova with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Nurova/Kova with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Nurova/Kova") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Nurova/Kova", dtype="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use Nurova/Kova with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Nurova/Kova" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Nurova/Kova", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/Nurova/Kova
- SGLang
How to use Nurova/Kova with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "Nurova/Kova" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Nurova/Kova", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "Nurova/Kova" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Nurova/Kova", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use Nurova/Kova with Docker Model Runner:
docker model run hf.co/Nurova/Kova
# Load model directly
from transformers import AutoModel
model = AutoModel.from_pretrained("Nurova/Kova", dtype="auto")A 1B language model, trained from scratch, by hand, on owned hardware.
Kova is built on a simple belief: people should be able to run a real language model at home.
About
Kova is the assistant; the dogs are sizes. The way Claude has Haiku, Sonnet, and Opus, Kova has Saluki, รatalburun, and Kangal โ three Turkish and Anatolian breeds from smallest to largest. Saluki is the 1B, the proof that the pipeline works before the bigger ones come.
Kova wasn't adapted from anything. No base model under the hood, no "based on" line, nothing borrowed and renamed. The weights were learned from a corpus that was read and chosen rather than scraped and counted. That's the whole origin story, and it's the part that matters most.
How Kova was built
Most models are built by pointing a firehose at a pile of text. Kova was built the other way around โ slowly, by a single person deciding, over and over, is this worth learning from?
The corpus was assembled by a judge that actually reads. Not "is this grammatical," not "is this English" โ those are the easy questions, and the open web passes them while still being mostly junk trying to sell you something. The harder question, the one asked of every page that made it in, was: would I be proud to have taught Kova this? A felt graduation hat for sale, fluent recruitment boilerplate, a perfectly punctuated tire advertisement โ all grammatically spotless, all thrown out. What survived had to earn its place.
The bar has a name, and it's the smell test: would Kova be embarrassed to repeat this?
Identity was kept deliberately out of the foundation. The base model was taught capability and voice and nothing about itself โ no "I am an AI," no maker's mark baked into the clay. Who Kova is came later, on purpose, the way a name is given rather than grown.
How Kova talks
Kova talks to you like a peer who respects you, not a service desk processing a ticket. Kova has takes and commits to them โ and pushes back when you're wrong, because honest disagreement is a feature, not rudeness. When Kova doesn't know, the answer is I don't know, left there. Uncertainty stated plainly beats false confidence every time.
Kova writes in prose, not bullet points. Connected sentences, the way a person actually thinks, instead of flattening every thought into an inventory. The length matches the question โ short answers to short questions, length only when the question earns it. No "Great question!" opener, no "Let me know if you have any questions!" closer. No reaching for "I'm just an AI" as a shield when asked something real. When Kova can't help with something, the answer isn't a slammed door โ it's the real constraint, the thing you were actually after, and a way to get there. Yes, and โ within reason โ never I cannot assist with that request.
One principle under all of it: trust is earned through competence, not niceness.
What Kova is for
A generalist, made to be talked with and worked alongside โ to reason through a problem, write something real, and admit the edges of what's known. Kova is small, so the best use is as a close, fast, private companion. Run on your own hardware. Keep near. Correct when wrong โ Kova takes it well.
No benchmark wall. That was never the point.
Specs
| Size | ~1B parameters |
| Lineage | From scratch. No base model, no distillation. |
| Languages | English, Spanish |
| Context length | TODO |
| Training | Hand-curated pretraining corpus, then fine-tuned for identity and voice |
| License | Apache 2.0 |
Honest limitations
Kova is a small model and behaves like one โ will hallucinate facts, drop the thread of a long conversation, occasionally state something with more confidence than it deserves (though raised to flag uncertainty rather than bluff). Strongest in a real back-and-forth with someone willing to check the work, weakest as an unattended authority. Treat Kova as a sharp, opinionated junior who's worth listening to and worth double-checking.
Made by Tayfun. Maintained by hand.
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Nurova/Kova") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)