PRISM-INSIGHT
13개의 특화 AI 에이전트가 한국·미국 주식을 실시간 분석합니다. 오픈소스, 무료
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Portfolio Answer Desk: which data foundation gets an LP analyst a correct, sourced answer fastest? Documents + search, AI-written SQL, semantic layer, identity table and graph, tested on 60 questions offline and live. Prototype.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A portfolio question desk for the private equity team of a large LP. An analyst types a senior leader's question ("How exposed are we to Calder Packaging, and through which managers?") and gets an answer she can send: the number, every route behind it, the definition used, and the date and source of every figure. Inside sits a test bench that runs 60 questions through five data setups and measures which one gets her to a correct, sourced answer fastest.
Synthetic data. Not investment advice. All names are invented.
The same 60 questions, 20 for each of three requests, go through five ways of organising the data. Every right answer is known, because the data is generated.
| Setup | How the data is organised | What the AI does | What code does |
|---|---|---|---|
| A | Documents plus search | Reads the passages and writes the answer | Searches the text |
| B | Warehouse tables | Writes the SQL query | Runs it, read-only |
| C | Tables plus a semantic layer (a list of agreed calculations) | Picks a calculation, filters and a date | Turns the pick into SQL and computes |
| C+ids | C plus an identity table (which names are the same company) and letter search | Same as C | Same as C, treats every spelling as one company, and searches letters |
| D | C+ids plus a graph | Same as C | Also follows ownership and people links |
Offline: fixed rules stand in for the AI (evals/results/offline-seed42.json). Live: claude-sonnet-5-5 reads every question for every setup, reads the passages in A and writes the SQL in B (evals/results/live-claude-sonnet-5-5.json; 2 passes, 960 calls, 0 failed calls, $6.25 billed, 47 minutes; C+ids rerun alone after a change, 120 calls, $0.83).
| Setup | Correct of 60, offline / live | CIO event (of 20) | Committee pack (of 20) | Manager decision (of 20) | Wrong numbers shown with a source | Same answer on a rerun, live | Expected time per question* |
|---|---|---|---|---|---|---|---|
| A documents + search | 18 / 7 | 4 / 2 | 4 / 2 | 10 / 3 | 27 / 7 | 90% | 84 / 106 min |
| B tables + AI-written SQL | 22 / 11 | 3 / 2 | 6 / 3 | 13 / 6 | 0 / 0 | 80% | 77 / 98 min |
| C tables + semantic layer | 41 / 41 | 5 / 5 | 20 / 20 | 16 / 16 | 15 / 15 | 100% | 38 / 38 min |
| C+ids: C + identity table + letter search | 58 / 58 | 20 / 20 | 20 / 20 | 18 / 18 | 0 / 0 | 100% | 4.7 / 4.6 min |
| D: C+ids + graph | 60 / 60 | 20 / 20 | 20 / 20 | 20 / 20 | 0 / 0 | 100% | 0.7 / 0.6 min |
*Answer time plus Sara's checking time under a stated, assumed model, with a wrong answer costing 2 hours of manual work (assumed).
What this test showed
Decision. C+ids for numbers and routes, the graph for people links, letter search for manager history, and a different front end per request: chat for the CIO's event, a dashboard for the committee pack, a briefing note for a manager decision. By the rule set before the run, the graph had to beat C+ids by 2 questions or 2 minutes on the CIO's request; it tied. The guardrail (zero wrong numbers shown with a source) holds for C+ids and D.
At 10x and 100x the data (evals/results/scale.json): one company's routes stay under a second every way (recursive SQL 538 ms, graph build plus walk 735 ms, DuckPGQ query 25 ms at 100x). What slowed down was our own code: a governed metric computed one fund at a time (9.3 s) and company-name matching (68 s of a 99 s rebuild).
What is assumed. The checking-time model is an assumption until a timed test with analysts. If Sara rechecks half the sourced numbers by hand, the time advantage disappears; the correctness counts don't change. The data, the companies and the letters are synthetic.
Learn how it works. The demo's "How the foundations work" tab (also static/foundations.html) animates the Calder question through each setup: where each finds the routes, where it goes wrong, and what each building block changes.
pip install -e ".[app,dev]"
pytest # no key needed
streamlit run app.py
PYTHONPATH=src python -m answerdesk.cli all # rebuild everything: data, evaluations, scale runs
ANTHROPIC_API_KEY=... PYTHONPATH=src python -m answerdesk.cli live # live evaluation (about $6, 47 min)
PYTHONPATH=src python -m answerdesk.cli explainer # rebuild static/foundations.html
The hosted demo on Streamlit Community Cloud runs offline with no key and no server (app.py, requirements.txt, Python 3.11).
context-library/strategy/brief.md: the brief.outputs/: opportunity analysis (Go), PRD with the seven-reviewer synthesis, journey map, decision docs, case study draft.docs/: DEFINITIONS.md (written before the code), ARCHITECTURE.md (with a licence table), GLOSSARY.md.src/answerdesk/: generator, six sources, pipeline, semantic layer, graph, the five setups, evaluation, scale.evals/results/: committed results (offline, held-out world, scale, live).static/foundations.html: the animated explainer, built from those results.Built with PM OS. Patterns reused from Secondaries Radar.