← all repositories
eyurtsev/kor

Honest glue code for pre-tool-call LLM extraction

Kor wrangles structured data from text using prompt engineering for LLMs that lack native tool-calling support.

1.7k stars Python Language ModelsData Tooling
kor
Not currently ranked — collecting fresh signals.
star history

What it does

Kor is a LangChain-integrated helper that takes a schema—either its own Object and Text types or a Pydantic model—and a few hand-written examples, builds a large prompt, feeds it to an LLM, and tries to parse the response into structured data. The author calls it a “half-baked prototype” and “just another wrapper,” which is fair: it is essentially glue code between your schema and an LLM’s text completion.

The interesting bit

The refreshing part is the author’s brutal honesty. The README warns that modern chat models with tool-calling APIs make Kor largely obsolete, then lists what it “excels” at: making mistakes, being slow, and crashing on long inputs. That candor is more useful than most benchmark charts.

Key highlights

  • Targets “old style” LLMs without chat interfaces or tool-calling support.
  • Accepts both a native Kor schema (Object, Text) and standard Pydantic v1/v2 models for validation.
  • Relies heavily on few-shot examples and detailed schema descriptions to improve extraction quality.
  • Integrated with LangChain’s extraction pipeline, using the prompt-based parsing approach rather than JSON mode or function calling.
  • Tested on Python 3.8 through 3.11.

Caveats

  • The author explicitly warns that if your LLM supports tool calling, you should use that instead of Kor.
  • Serialization is not yet implemented for Pydantic v2.
  • The API is considered unstable, and the project is described as a prototype.

Verdict

Worth a look if you are stuck maintaining pipelines against older text-completion LLMs or need a reference implementation of prompt-based extraction. If you are using modern chat models with native tool support, the README itself tells you to look elsewhere.

Frequently asked

What is eyurtsev/kor?
Kor wrangles structured data from text using prompt engineering for LLMs that lack native tool-calling support.
Is kor open source?
Yes — eyurtsev/kor is open source, released under the MIT license.
What language is kor written in?
eyurtsev/kor is primarily written in Python.
How popular is kor?
eyurtsev/kor has 1.7k stars on GitHub.
Where can I find kor?
eyurtsev/kor is on GitHub at https://github.com/eyurtsev/kor.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.