Skip to content

Commit e4bf2e2

Browse files
committed
docs: add wiki content for Home.md
1 parent dac9929 commit e4bf2e2

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

docs/wiki/Home.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# PathwAI
2+
3+
[![CI](https://github.com/ranafaraz/PathwAI/actions/workflows/ci.yml/badge.svg)](https://github.com/ranafaraz/PathwAI/actions/workflows/ci.yml)
4+
[![Live demo](https://img.shields.io/badge/live%20demo-pathwai.dexdevs.com-brightgreen?logo=rocket)](https://pathwai.dexdevs.com)
5+
[![Python](https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12-blue)](https://github.com/ranafaraz/PathwAI/blob/main/pyproject.toml)
6+
[![License: MIT](https://img.shields.io/badge/license-MIT-green)](https://github.com/ranafaraz/PathwAI/blob/main/LICENSE)
7+
8+
**Wrap a fallible LLM in search and a verifier, and prove it plans like the optimum.**
9+
10+
PathwAI turns an LLM into a deliberate planner. A language-model proposer estimates how far each state is from the goal; a best-first search uses that estimate as a heuristic; and a verifier rejects illegal or looping moves so the agent recovers from bad suggestions instead of executing them blindly. Every plan is scored against a built-in **A\* optimum**, so the claims are measured, not asserted.
11+
12+
The whole benchmark — three planning domains, five planners, a null ablation — runs green in CI with **no API keys and no model downloads** using a deterministic stub proposer. Real LLM backends (Ollama, OpenAI) are opt-in via pip extras.
13+
14+
## Architecture
15+
16+
```mermaid
17+
flowchart LR
18+
subgraph Domains["Domain (env-selectable)"]
19+
GW[GridWorld]
20+
BW[Blocksworld]
21+
DL[Delivery]
22+
end
23+
subgraph Proposer["LLM proposer (env-selectable)"]
24+
STUB[stub\nnoisy heuristic · offline]
25+
RND[random\nablation]
26+
REAL[ollama / openai\noptional extras]
27+
end
28+
Domains --> STATE[State + applicable actions]
29+
STATE --> Proposer
30+
Proposer --> EST[cost-to-go estimate]
31+
EST --> SEARCH[Best-first search\npriority = g + estimate]
32+
STATE --> SEARCH
33+
SEARCH <--> VERIFY[Verifier\nlegal? not revisited?]
34+
SEARCH --> PLAN[Plan]
35+
Domains -.optimal A*.-> SCORE[Score vs. ground-truth optimum]
36+
PLAN --> SCORE
37+
SCORE --> M[solve rate · optimality ratio · expansions]
38+
```
39+
40+
## Quick start
41+
42+
```bash
43+
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
44+
pip install -e ".[dev]"
45+
pytest -q # 77 tests
46+
pathwai compare --domain gridworld --seed 3
47+
```
48+
49+
## Wiki pages
50+
51+
| Page | What it covers |
52+
|---|---|
53+
| [Architecture](Architecture) | Domain representation, proposer, verifier, search engine, ablation design |
54+
| [Evaluation](Evaluation) | Benchmark setup, results table, ablation, reproduce commands |
55+
| [Configuration](Configuration) | Env vars, backend matrix, `.env.example` |
56+
| [Development](Development) | Setup, test commands, adding domains and proposers, code layout |

0 commit comments

Comments
 (0)