|
Download docs/structure.md from benroshan/Prism: direct link, hf CLI and curl.
- Browser
- Download file 3.71 kB
-
https://huggingface.co/spaces/benroshan/Prism/resolve/main/docs/structure.md
- Command line
-
hf download hf://spaces/benroshan/Prism/docs/structure.md
-
curl -L -o structure.md https://huggingface.co/spaces/benroshan/Prism/resolve/main/docs/structure.md
3.71 kB
| # Project Structure β Prism | |
| ``` | |
| prism/ | |
| βββ CLAUDE.md | |
| βββ README.md | |
| βββ requirements.txt | |
| βββ .env.example | |
| βββ config.yaml # All tunable params (chunk sizes, weights, eval flags) | |
| βββ Dockerfile | |
| βββ render.yaml | |
| βββ .gitignore | |
| β | |
| βββ .claude/ | |
| β βββ settings.json | |
| β βββ hooks/ | |
| β β βββ session-reflect.sh | |
| β βββ rules/ | |
| β βββ memory-profile.md # Facts about Ben | |
| β βββ memory-preferences.md # How Ben likes things done | |
| β βββ memory-decisions.md # Technical decisions log | |
| β βββ memory-sessions.md # Session log | |
| β βββ coding-standards.md # Code style rules | |
| β | |
| βββ docs/ | |
| β βββ architecture.md | |
| β βββ decisions.md | |
| β βββ api-spec.md | |
| β βββ structure.md # This file | |
| β | |
| βββ server/ | |
| β βββ __init__.py | |
| β βββ main.py # FastAPI app, lifespan startup | |
| β βββ ingest.py # Load β ParentDocumentRetriever β embed β store | |
| β βββ retriever.py # Hybrid: dense + BM25 + RRF + reranker | |
| β βββ bm25_index.py # BM25 index singleton | |
| β βββ reranker.py # Cross-encoder reranker singleton | |
| β βββ memory.py # ConversationBufferWindowMemory | |
| β βββ chain.py # ConversationalRetrievalChain | |
| β βββ utils.py # Config loader, logger, token counter | |
| β βββ routes/ | |
| β β βββ __init__.py | |
| β β βββ chat.py # POST /api/chat, DELETE /api/chat/memory | |
| β β βββ upload.py # POST /api/upload | |
| β β βββ eval.py # GET /api/eval/session, POST /api/eval/precision|ragas | |
| β βββ eval/ | |
| β βββ __init__.py | |
| β βββ precision.py # Precision@K | |
| β βββ faithfulness.py # LLM-as-Judge (1β5 score) | |
| β βββ ragas_eval.py # RAGAS (4 metrics) | |
| β | |
| βββ frontend/ | |
| β βββ package.json | |
| β βββ vite.config.js | |
| β βββ tailwind.config.js | |
| β βββ index.html | |
| β βββ src/ | |
| β βββ main.jsx | |
| β βββ App.jsx # Tab nav: Chat | Eval | Upload | |
| β βββ api.js # Axios client | |
| β βββ components/ | |
| β βββ ChatTab.jsx | |
| β βββ EvalDashboard.jsx # RAGAS scorecard + Precision@K + LangSmith link | |
| β βββ UploadTab.jsx # Drag-and-drop upload | |
| β βββ MessageBubble.jsx | |
| β βββ SourceExpander.jsx | |
| β | |
| βββ scripts/ | |
| β βββ run_ingest.py # CLI ingestion | |
| β βββ run_eval.py # CLI Precision@K eval | |
| β βββ run_ragas_eval.py # CLI RAGAS eval | |
| β βββ benchmark_chunks.py # Sweep chunk sizes, plot Precision@K | |
| β | |
| βββ tests/ | |
| β βββ test_ingest.py | |
| β βββ test_retriever.py | |
| β βββ test_reranker.py | |
| β βββ test_chain.py | |
| β βββ test_eval.py | |
| β βββ test_ragas.py | |
| β | |
| βββ data/ | |
| β βββ raw/ # Drop PDFs here (gitignored) | |
| β βββ ground_truth/ | |
| β βββ eval_pairs.json # 20 query/chunk pairs + ground_truth field | |
| β | |
| βββ sample_data/ # Seeded sample PDFs for demo | |
| βββ chroma_db/ # Auto-created, gitignored | |
| ``` | |