Release GraphRAG 2.0.2 - #61
Open
chengbiao-jin wants to merge 12 commits into
Open
Conversation
- The agentic chat engine was silently disabled for Gemini 3.x models because the capability check only knew Gemini 1.5/2.x. Any Gemini is now treated as tool-calling except the legacy 1.0-era models, so future families work without a code change. Refs: GML-2171
- Ignore empty submits so clicking Stop just as an answer finishes no longer sends an empty message. - Size the Stop icon in both light and dark themes; it was styled only for dark, so it rendered oversized and broke the layout in light mode. Refs: GML-2172
- When an answer can't be generated, suggest retrying or rephrasing and point to the administrator, instead of a dead-end message. Refs: GML-2170
- Normalize vertex ids without truncating at "(", so names containing
parentheses keep their chunk suffix and no longer corrupt chunk ids
- Derive the chunk index from the chunk's position instead of parsing it
back out of the id
Refs: GML-2173
- Set release version to 2.0.2 - Complete the 2.0.2 changelog with the answer-fallback message improvement, Gemini 3.x agentic support, and chat Stop button fixes
) * Improve PDF extract cleanup and wire hybrid expand for agent search. Normalize picture-text and numeric cleanup, recover mojibake pages, keep chart labels in chunks, and enable keyword+vector hybrid expand for agent search without eval-shaped age-band post-processing. * Restore _CJK_CHAR_CLASS name; keep fullwidth-digit exclusion. Avoids an unnecessary rename that noisied the PR diff. * Document hybrid expand knobs in docs; drop Toppan server_config from PR. Restore the original OCR figure comment in the chunker to avoid noisy comment-only diff. * Remove unused hybrid_expand/hybrid_method wiring from agent tools and docs. No measured accuracy gain from these settings in Toppan runs; keep extract/chunk product fixes only. --------- Co-authored-by: Prins Kumar <prins.kumar@agivant.com>
) * Fix Est. Cost showing $0 for models missing from LangChain pricing. Fall back to LiteLLM catalog rates when LangChain total_cost is 0, for the configured model only. * Use configured llm_service for LiteLLM pricing lookup. Avoid scanning all provider prefixes when the server config already names the provider. * Replace LiteLLM cost fallback with user-configured rates from LLM Config. When input/output USD-per-1M rates are set, always use them for Est. Cost; otherwise keep LangChain pricing. --------- Co-authored-by: Prins Kumar <prins.kumar@agivant.com>
- Completion input/output token-cost rates are no longer inherited by a same-provider embedding service, which is priced separately - Add changelog entries for configurable token cost rates and for the PDF chart/table extraction fidelity improvements
* Add Recall@5 regression metric with Multihop30 dataset - New recall_evaluator.py: computes Recall@K by querying GraphRAG and matching retrieved chunks against ground-truth chunks using embedding cosine similarity (threshold=0.70) or LLM judge - New run_recall.sh: Docker wrapper to run recall evaluation - New Multihop30 dataset: 30 multi-hop questions (10 each from HotpotQA, 2WikiMultiHopQA, MuSiQue) with raw text corpus, answers, and ground_truth_chunks.csv for retrieval scoring - Updated evaluator.py, run_eval.sh: unified --mode parameter replacing --agent + --search-type - Updated run_setup.sh, setup_graph.py: support for Multihop30 graph setup Co-authored-by: Cursor <cursoragent@cursor.com> * Clean up Multihop30 README — remove stale build scripts and fix file references Co-authored-by: Cursor <cursoragent@cursor.com> * Increase evaluator.py httpx timeout from 120s to 600s for complex agentic queries Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Prins Kumar <prinskumar@Prinss-MacBook-Air.local> Co-authored-by: Cursor <cursoragent@cursor.com>
…llback (#60) * Add Migration Assistant data-integrity health checks - Report per-vertex-type embedding coverage (missing/total counts) in the migration status - Report the count of communities with placeholder or empty summaries in the migration status Refs: GML-2175, GML-2176 * Add targeted regenerate actions to the Migration Assistant - Regenerate embeddings: re-embed vertices missing an embedding, skipping empty/placeholder source text - Regenerate community summaries: re-summarize communities with placeholder or empty descriptions, then re-embed the new summary - Both run as targeted operations rather than a full rebuild, and refuse while a rebuild is in progress Refs: GML-2175, GML-2176 * Add Migration Assistant health panel and regenerate buttons - Show embedding coverage (missing by type) and community-summary completeness in the Migration Assistant - Add "Regenerate embeddings" and "Regenerate summaries" actions that fix only the affected items instead of a full rebuild - Document the new capabilities in the changelog Refs: GML-2175, GML-2176 * Health check counts without initializing the embedding service - The embedding-coverage and community-summary checks run count queries over the existing connection instead of building an embedding store, so the migration status no longer depends on embedding-service startup Refs: GML-2175, GML-2176 * Fall back to document search when a structured query is empty - The planned agent runs a hybrid document search when its structured query returns no rows, so an empty structured result no longer yields a non-answer. - The fallback follows the existing router-fallback setting, matching the classic engine. * Persist regenerated community summaries - Regenerating community summaries now writes the new summary text directly, so it is saved even when run outside a full rebuild. * Use placeholder names in regression script examples - Replace the dataset/graph names in run_eval.sh and run_setup.sh usage comments with neutral placeholders. * Document router-fallback coverage of the planned agent - Note that the router-fallback setting also governs the planned agent's fallback to vector search, not just the classic engine.
- Determine whether the chat model can drive Agentic mode with a one-time runtime probe cached in memory (re-checked after a restart), instead of a fixed model list — so current and future tool-calling models, including new providers, enable Agentic mode automatically. - Keep Agentic mode on by default; downgrade to classic only when the probe shows the model can't tool-call, until its configuration changes. - Fall back to the static heuristic on a transient probe failure. Refs: GML-2169
- Default to Agentic on; disable only on positive evidence — a known legacy model, an explicit "tools not supported" error, or a runtime tool-calling failure. Uncertain probe outcomes (transient, ambiguous, timeout, no provider yet) stay enabled and are not cached. - Time-bound the probe so a slow model can't hang the first request. Refs: GML-2169
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release GraphRAG 2.0.2 into
main. Merges all 2.0.2 work accumulated onrelease_2.0.2(clean fast-forwardable superset ofmain).Epic: GML-2179
Added
Changed
Fixed
See
CHANGELOG.md[2.0.2] for full details.