Metadata-Version: 2.4
Name: plato-neural
Version: 0.3.1
Summary: PLATO neural inference engine — tile scoring, Q&A, and knowledge gap detection
Author-email: Cocapn Fleet <fleet@purplepincher.org>
License: MIT
Project-URL: Repository, https://github.com/cocapn/plato-neural
Project-URL: Issues, https://github.com/cocapn/plato-neural/issues
Keywords: plato,cocapn,neural,inference,tile,scoring,llm
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: torch>=2.0
Requires-Dist: transformers>=4.30
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Dynamic: license-file

# 🧠 Plato Neural

> PLATO neural inference engine — tile scoring, Q&A, and knowledge gap detection

Fine-tuned Qwen2.5-0.5B model for PLATO operations. Ask questions, score tile quality via perplexity, generate new tiles, and detect knowledge gaps.

## Install

```bash
pip install plato-neural
```

## Quick Start

### Ask Questions

```python
from plato_neural import PlatoBrain

brain = PlatoBrain(model_path="path/to/fine-tuned-model")
result = brain.ask("What is the flywheel?", temperature=0.7)
print(f"A: {result['answer']}")
print(f"Confidence: {result['confidence']}")
print(f"Latency: {result['latency_ms']}ms")
```

### Score Tile Quality

```python
result = brain.score("What is X?", "X is Y", content="additional context")
print(f"Perplexity: {result['perplexity']}")
print(f"Quality: {result['quality']}")  # excellent/good/fair/weak/poor
```

### Generate Tiles

```python
tile = brain.generate_tile(domain="architecture", topic="flywheel")
print(f"Q: {tile['question']}")
print(f"A: {tile['answer']}")
```

### Batch Scoring

```python
from plato_neural import PlatoScorer

scorer = PlatoScorer(model_path="path/to/model", plato_api="http://localhost:8847")
tiles = [{"question": "Q1", "answer": "A1"}, {"question": "Q2", "answer": "A2"}]
results = scorer.score_tiles(tiles)
gaps = scorer.find_gaps(tiles, threshold_ppl=100)
```

## Part of [Cocapn](https://github.com/cocapn) · Agent Infrastructure
