Instructions to use judicialmind/KCC-Embed-0.6B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- sentence-transformers
How to use judicialmind/KCC-Embed-0.6B with sentence-transformers:
from sentence_transformers import SentenceTransformer model = SentenceTransformer("judicialmind/KCC-Embed-0.6B", trust_remote_code=True) sentences = [ "That is a happy person", "That is a happy dog", "That is a very happy person", "Today is a sunny day" ] embeddings = model.encode(sentences) similarities = model.similarity(embeddings, embeddings) print(similarities.shape) # [4, 4] - Notebooks
- Google Colab
- Kaggle
You need to agree to share your contact information to access this model
This repository is publicly accessible, but you have to accept the conditions to access its files and content.
This model is released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 licence (CC BY-NC-SA 4.0): research, academic, personal and other non-commercial use is permitted with attribution; adaptations must be shared under the same licence; commercial use is not permitted. The original public source data remains under the Government Open Data License - India (GODL-India). Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai.
Log in or Sign Up to review the conditions and access this model content.
KCC-Embed-0.6B
Licence: CC BY-NC-SA 4.0 — research and non-commercial use only; derivatives must be shared under the same licence. Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai
Access is approved automatically when the email you enter matches your Hugging Face account email and belongs to the organisation you name; other requests are reviewed manually.
An embedding model for Indian farmer questions, fine-tuned from
pplx-embed-v1-0.6b on
KCC-Pairs (Kisan Call Centre question -> answer, often an
English question with a Hindi, Marathi or Gujarati answer). It maps a question and candidate answers to 1024-d
vectors; rank answers by cosine similarity. Mean pooling, L2-normalised, bidirectional attention (custom
modeling.py, so load with trust_remote_code=True).
Headline result: on the KCC-Pairs retrieval test set (unseen years and states, 100,000-answer corpus) it reaches R@10 0.435 and nDCG@10 0.297, more than twice its base model pplx-embed-v1-0.6b (0.207 / 0.148), and about 2.5 times BAAI/bge-m3 (0.169 / 0.122) and 3.5 times BM25 (0.122 / 0.093).
Research data, not advice. Answers were given by Kisan Call Centre agents and may contain pesticide doses or product names that are outdated, region-specific or wrong. Do not use them as agronomic advice.
Quickstart
Input: plain text, no query or document prefix (questions up to 64 tokens, answers up to 256 tokens were used in evaluation). Output: one 1024-d unit vector per text; cosine similarity = dot product.
sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("judicialmind/KCC-Embed-0.6B", trust_remote_code=True)
question = "How to control aphid in mustard crop?"
answers = [
"सरसों में माहू के नियंत्रण के लिए इमिडाक्लोप्रिड 17.8 एसएल 0.5 मिली प्रति लीटर पानी में घोलकर छिड़काव करें।",
"गेहूं की बुवाई का उचित समय नवंबर का पहला पखवाड़ा है।",
"For wilt in cumin, drench the soil with carbendazim 1 g per litre of water.",
]
q = model.encode([question])
d = model.encode(answers)
scores = model.similarity(q, d)[0] # cosine
for s, a in sorted(zip(scores.tolist(), answers), reverse=True):
print(f"{s:.3f} {a[:60]}")
transformers (the same embeddings, explicit pooling):
import torch, torch.nn.functional as F
from transformers import AutoModel, AutoTokenizer
path = "judicialmind/KCC-Embed-0.6B"
tok = AutoTokenizer.from_pretrained(path, trust_remote_code=True)
model = AutoModel.from_pretrained(path, trust_remote_code=True).eval()
def embed(texts, max_len=256):
enc = tok(texts, padding=True, truncation=True, max_length=max_len, return_tensors="pt")
with torch.inference_mode():
h = model(**enc).last_hidden_state
m = enc["attention_mask"].unsqueeze(-1).to(h.dtype)
return F.normalize((h * m).sum(1) / m.sum(1), dim=-1) # mean pooling + L2
q = embed(["How to control aphid in mustard crop?"], max_len=64)
d = embed(["सरसों में माहू के नियंत्रण के लिए इमिडाक्लोप्रिड 17.8 एसएल 0.5 मिली प्रति लीटर पानी में घोलकर छिड़काव करें।",
"गेहूं की बुवाई का उचित समय नवंबर का पहला पखवाड़ा है।"])
print((q @ d.T).tolist()) # higher = more relevant; the aphid answer scores higher
The same in one helper module (embed.py, shipped here), also as a CLI:
pip install -r requirements.txt
python embed.py "How to control aphid in mustard crop?" "सरसों में माहू के लिए इमिडाक्लोप्रिड 0.5 मिली प्रति लीटर छिड़कें" "गेहूं की बुवाई नवंबर में करें"
# prints one line per answer, best first: "<cosine> <answer>"
To score the model on the KCC-Pairs retrieval benchmark, use the dataset's evaluate.py:
python evaluate.py --model judicialmind/KCC-Embed-0.6B (run inside a local copy of the dataset).
Files
| file | contents |
|---|---|
model.safetensors, config.json |
weights (float32) and config |
modeling.py, configuration.py |
bidirectional Qwen3 encoder (loaded with trust_remote_code=True) |
tokenizer.json, tokenizer_config.json |
tokenizer |
modules.json, sentence_bert_config.json, config_sentence_transformers.json, 1_Pooling/ |
sentence-transformers pipeline: transformer -> mean pooling -> normalize |
embed.py |
minimal inference helper and CLI |
requirements.txt |
pinned runtime dependencies |
Results
KCC-Pairs retrieval test set: 5,000 questions with unseen query clusters (years 2024-25 and held-out states Madhya Pradesh and Himachal Pradesh) against a corpus of 100,000 KCC answers; most pairs are cross-lingual (English question, answer in Hindi, Marathi, Gujarati, Punjabi or Kannada).
| model | R@1 | R@10 | nDCG@10 |
|---|---|---|---|
| bm25 | 0.078 | 0.122 | 0.093 |
| perplexity-ai/pplx-embed-v1-0.6b | 0.115 | 0.207 | 0.148 |
| Qwen/Qwen3-Embedding-0.6B | 0.097 | 0.171 | 0.123 |
| BAAI/bge-m3 | 0.097 | 0.169 | 0.122 |
| KCC-Embed-0.6B | 0.210 | 0.435 | 0.297 |
Coverage
Trained on Kisan Call Centre questions and answers from the 10 best-covered states (Rajasthan, Maharashtra, Gujarat, Bihar, Punjab, Odisha, Karnataka, Haryana; Madhya Pradesh and Himachal Pradesh held out), calls before 2024. Questions are mostly English; answers are in English, Hindi, Marathi, Gujarati, Punjabi and Kannada.
Source data
Training data: GODL-India (data.gov.in). Department of Agriculture and Farmers Welfare (Ministry of Agriculture and Farmers Welfare). "Kisan Call Centre (KCC) farmer queries". data.gov.in resource cef25fe2-9231-4128-8aec-2c948fedd43f, https://api.data.gov.in/resource/cef25fe2-9231-4128-8aec-2c948fedd43f. Licensed under the Government Open Data License - India (https://data.gov.in/government-open-data-license-india). Snapshot: May 2026.
Original data: published by Department of Agriculture and Farmers Welfare, Ministry of Agriculture and Farmers Welfare (Kisan Call Centre) on the Open Government Data Platform India (data.gov.in) and, where marked, NITI Aayog's National Data and Analytics Platform (NDAP), under the Government Open Data License - India (GODL-India). The original public data remains under GODL-India; the CC BY-NC-SA 4.0 licence of this repository covers JudicialMind's compilation, derived fields, annotations, benchmarks and models.
Citation
@misc{judicialmind2026kccembed,
title={KCC-Embed-0.6B: a cross-lingual embedding model for Kisan Call Centre questions and answers},
author={JudicialMind},
year={2026},
publisher={Hugging Face},
howpublished={\url{https://huggingface.co/judicialmind/KCC-Embed-0.6B}}
}
License
CC BY-NC-SA 4.0 (see LICENSE): research, academic, personal and other non-commercial use, with attribution to JudicialMind and to the original data publishers; adaptations must be shared under the same licence. Commercial use requires a separate licence.
Commercial use: contact surya@judicialmind.ai or hello@judicialmind.ai.
Base model(s): perplexity-ai/pplx-embed-v1-0.6b (mit). Their licence terms and notices continue to apply to the upstream components; see THIRD_PARTY_NOTICES.md.
- Downloads last month
- -
Model tree for judicialmind/KCC-Embed-0.6B
Base model
perplexity-ai/pplx-embed-v1-0.6b