cat-cog
Cognitive assessment and visual scoring powered by LLMs.
cat-cog provides LLM-powered evaluation of hand-drawn images for neuropsychological testing. It builds on cat-stack, the shared classification engine for the CatLLM ecosystem.
Installation
pip install cat-cog
This automatically installs cat-stack (the LLM classification engine).
CERAD Constructional Praxis Scoring
Score hand-drawn shapes (circle, diamond, overlapping rectangles, cube) using LLM vision models. The function sends images to the LLM, classifies drawing features, then applies CERAD scoring rules.
from catcog import cerad_drawn_score
# Score circle drawings (max score: 2)
results = cerad_drawn_score(
shape="circle",
image_input="./circle_drawings/",
api_key=OPENAI_KEY,
user_model="gpt-4o",
)
print(results[["image_file", "score"]])
Supported shapes
| Shape | Max Score | Features Assessed |
|---|---|---|
| circle | 2 | Closure, circularity |
| diamond | 3 | 4 sides, equal sides, resemblance |
| rectangles | 2 | Overlap, crossing pattern |
| cube | 4 | Front face, internal lines, parallel faces, 3D quality |
Using with multiple models
All catstack.classify() parameters are available via **kwargs:
results = cerad_drawn_score(
shape="cube",
image_input="./cube_drawings/",
api_key=OPENAI_KEY,
models=[
("gpt-4o", "openai", OPENAI_KEY),
("claude-sonnet-4-20250514", "anthropic", ANTHROPIC_KEY),
],
)
Future
- Fine-tuned vision models for shape quality assessment (circle classifier, etc.)
- Additional cognitive screening instruments (clock drawing tests, etc.)
Ecosystem
| Package | Domain |
|---|---|
| cat-stack | General-purpose classification engine (base) |
| cat-cog | Cognitive assessment & visual scoring (this package) |
| cat-survey | Survey response classification |
| cat-vader | Social media text |
| cat-ademic | Academic papers & PDFs |
| cat-pol | Political text |
License
GPL-3.0-or-later
Metadata
Release files for cat-cog 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cat_cog-0.2.1.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cat_cog-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 35.4 kB
Release files / cat_cog-0.2.1.tar.gz
| Download URL | cat_cog-0.2.1.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3499539454b397fe7f99e6f846ca2dffc7ea2a6d47d97624a9244d43b89c63ee
|
|
BLAKE2b-256 checksum How to use checksums |
fc6f1d826773490e329193add0a0f3e9dfcc8a4747c41d59dc05a3823dcbf546
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.14
|
Release files / cat_cog-0.2.1-py3-none-any.whl
| Download URL | cat_cog-0.2.1-py3-none-any.whl |
|---|---|
| Size | 18.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ce0ad63e24c84f77bac5aa24b3eec526a83afeaaf01955ab0511b14f098eb776
|
|
BLAKE2b-256 checksum How to use checksums |
49114e2d272d9dcb5bf8e5bba2c35df114a8e0cadd742f5718d0f68e82cc6b9e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.14
|