AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
One prompt. Multiple LLMs. The best answer, automatically selected.
MultiLLM runs a multi-bot answer ensemble: several independent models answer
your question in parallel, each candidate is scored for source support,
bias, and clarity, and the best parts are merged into one balanced,
cited answer. The platform also trains its own tiny models from scratch for
fully offline inference and answer-quality scoring.檢視完整 README ↗One prompt. Multiple LLMs. The best answer, automatically selected.
MultiLLM runs a multi-bot answer ensemble: several independent models answer your question in parallel, each candidate is scored for source support, bias, and clarity, and the best parts are merged into one balanced, cited answer. The platform also trains its own tiny models from scratch for fully offline inference and answer-quality scoring.
ai_client.py Core ensemble engine (parallel bots, scoring, synthesis)
local_models.py Trained-model integration (offline candidate + scorer)
ensemble_demo.py Offline demo: run the ensemble with no API keys
train/
dataset.py Synthetic corpus generator (ensemble answering style)
model.py TinyGPT (generator) + TinyScorer (regressor), from scratch
train.py CLI to train both models (MPS/CPU, no downloads)
models/ Trained artifacts (reproducible via train.train)
knowledge_sources/ Local docs used for retrieval-grounded answers
vercel-deployment/ Next.js 16 SaaS (dashboard, auth, API keys, billing, analytics, training)
pip install multillm-ensemble # or: pip install -e . (editable install from this repo)
multillm "How does a multi-LLM ensemble improve answer quality?"
multillm --sources "Your question here"
multillm --top-k 5 "Compare two approaches to X"
The PyPI package is multillm-ensemble (the plain multillm name was already
taken by an unrelated project); it installs a multillm console-script
command (ensemble_demo:main, wired up in pyproject.toml). Equivalent
without installing:
python3 ensemble_demo.py "How does a multi-LLM ensemble improve answer quality?"
python3 ensemble_demo.py --sources "Your question here"
python3 -m train.dataset # rebuild synthetic corpus + scorer labels
python3 -m train.train # train generator + scorer -> models/ (uses MPS)
Both models use a word-level tokenizer (~1,100 vocab) trained on a synthetic
corpus of ~2,300 chat-style documents (~2.7M characters) built from 40 domain
concepts, each with multiple question phrasings, so the generator learns answer
style rather than memorizing exact questions. Set --cpu to force CPU, or pass
--epochs N / --batch-size N / --n-layer N / --n-embd N to tune.
Evaluate generalization on held-out questions with:
python3 -m train.eval_generator
Set at least one key set in .env (never commit it):
OPENAI_API_KEYS=sk-... # or OPENAI_API_KEY (OpenRouter: sk-or-v1-...)
GEMINI_API_KEY=...
MISTRAL_API_KEY=...
Then run the full ensemble with the trained local model plus remote providers:
python3 ai_client.py
cd vercel-deployment
npm install
npm run dev
Copy vercel-deployment/.env.example to .env.local and set
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY, and
SUPABASE_SERVICE_ROLE_KEY to enable real authentication and persistence.
Without them, the app runs in demo mode (localStorage-backed auth) so
everything is still testable.
TinyScorer blends 50/50 with the heuristics when present.models/scorer-tokenizer.json).Both train with python -m train.train — no downloads, no API keys.
training-job Python function itself is currently excluded from
production deploys -- see vercel-deployment/training-job-disabled/DISABLED.md)MIT