Commit Graph

8113 Commits

Author SHA1 Message Date
deadtrickster
2d63ad654d fix(ingestion): make document/KB counter application idempotent per run (#17995) 2026-08-07 23:33:18 +08:00
Yingfeng
4cc2dbc067 More stable sufficient check for agentic search (#17962) 2026-08-07 22:10:22 +08:00
Jack
4f15e261cd fix(parser/email): align metadata/text_html emission with Python flow contract (#18005)
Aligns the Go EML parser (`internal/parser/parser/email_parser.go`) with the Python flow parser (`rag/flow/parser/parser.py:_email`) on two structural points so the Go path is a faithful drop-in for the Python path on `.eml` inputs.
2026-08-07 21:57:51 +08:00
Jack
4b4a6e72f0 fix(chunker): unify TokenChunker merge and strip coord tags in Python JSON path (#18002)
Unifies the Go TokenChunker merge path on a single `mergeUnits` core and
fixes coordinate-tag drift in the Python JSON merge at `overlap > 0`.
Rebased on top of #17979 (delimiter_mode convergence).
2026-08-07 21:55:07 +08:00
Wang Qi
ba7d65a4ec Fix medium thinking chat failed in thinking (#18008) 2026-08-07 21:39:24 +08:00
chanx
8e37f5543a fix(chunk): render <img> tags as escaped text to prevent tracking (#18007) 2026-08-07 20:17:17 +08:00
euvre
3d7e3db544 fix: allow OpenAI-API-Compatible models as tenant default models (#17968) 2026-08-07 19:28:51 +08:00
rayhan
e31a5f0ff6 fix: remediate CVE-2026-21226 by constraining azure-core to >=1.38.0 (#18003)
## Summary
  
Remediates CVE-2026-21226 (HIGH) in `azure-core` by adding
`azure-core>=1.38.0` to `constraint-dependencies` in `pyproject.toml`.
  
  | CVE | Severity | Package | Installed | Fixed in |
  |---|---|---|---|---|
  | CVE-2026-21226 | HIGH | azure-core | 1.37.0 | 1.38.0 |
2026-08-07 18:43:03 +08:00
buua436
fc25076a11 fix: improve streaming agent tts (#18004) dev-20260807-2 2026-08-07 17:52:05 +08:00
Zhichang Yu
f12c0ec08a feat(knowledge_compile): materialize wiki page graph (wiki_entity/wiki_relation) (#17976)
Re-materialize wiki page graph from merged wiki_page rows after each
batch merge. Adds ProjectWikiGraph/DropWikiGraph, full page_type/slug
identity, delete-then-insert, tests.
2026-08-07 17:47:59 +08:00
Jack
869da9c7ad test(token_chunker): drop unsupported chunk_token_size=0 case from delimiter-mode test (#17997) 2026-08-07 17:43:04 +08:00
Wang Qi
2fef38f955 Fix answer in think (#17998) 2026-08-07 17:30:14 +08:00
buua436
a805105352 fix: stream agent tts audio by sentence (#18000) 2026-08-07 17:13:25 +08:00
balibabu
ec09d4e3bd Feat: Search for timeline nodes. (#17996) 2026-08-07 17:06:19 +08:00
chanx
2eb1ef6c67 fix: preserve selected row IDs without filtering by current list (#17994) 2026-08-07 17:06:05 +08:00
alex-makang
8562623bef fix(rerank): set NvidiaRerank base_url for all models (#17988)
### What problem does this PR solve?

`NvidiaRerank.__init__` only assigned `self.base_url` inside two
model-specific
`if` branches:

```python
if self.model_name == "nvidia/nv-rerankqa-mistral-4b-v3":
    self.base_url = urljoin(base_url, "nv-rerankqa-mistral-4b-v3/reranking")
if self.model_name == "nvidia/rerank-qa-mistral-4b":
    self.base_url = urljoin(base_url, "reranking")
```

Any other NVIDIA rerank model therefore left the attribute unset, and
the first
`_compute_rank()` call died with `AttributeError: 'NvidiaRerank' object
has no
attribute 'base_url'`.

This is reachable in normal use: `conf/llm_factories.json` ships no
NVIDIA
rerank entries at all, so every NVIDIA rerank model has to be added by
hand,
and any name other than those two hardcoded strings crashes.

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)

Co-authored-by: Alex Ma <alex_makang@hotmail.com>
2026-08-07 16:49:24 +08:00
Jack
1aa4e3c1f3 refactor(chunker): converge delimiter_mode to {delimiter, one}, drop token_size (#17979)
Converge `TokenChunker.delimiter_mode` from three values (`token_size`,
`delimiter`, `one`) to two (`delimiter`, `one`). The unified `delimiter`
mode now carries the old `token_size` semantics: when no active
(backtick) delimiter is present, text/JSON chunks are merged up to
`chunk_token_size`; when a backtick delimiter is present, the text is
split by it and not merged. `one` continues to be handled by the
separate `OneChunker`.
2026-08-07 16:11:42 +08:00
Lynn
4044d3bc5d Fix: handle unpaired <> in messages (#17983) 2026-08-07 16:10:30 +08:00
chanx
c7d78db9b4 fix(document-preview): handle namespace-prefixed xlsx in ExcelCsvPreviewer (#17955) 2026-08-07 16:10:04 +08:00
Wang Qi
993b41b7b1 Append attachments content to last message (#17993) 2026-08-07 16:04:19 +08:00
balibabu
3f78c156d4 Fix: Links to wiki content accessed via the version view are not clickable. (#17987) 2026-08-07 15:50:26 +08:00
balibabu
edcd806761 Fix: Hide the "Add Link" button in the Markdown editor. (#17992) 2026-08-07 15:50:17 +08:00
chanx
ad5d0e9db3 fix(model): simplify local LLM config and align model type values (#17986) 2026-08-07 15:49:37 +08:00
Jack
440fc937d0 fix(go): drop content-less chunks and set chunk_order_int unconditionally in Tokenizer (#17970) 2026-08-07 15:38:56 +08:00
buua436
42329f140d feat: add agent filter counts (#17984) 2026-08-07 15:29:07 +08:00
buua436
d63ad40c65 fix: reject duplicate chat parameter keys (#17977) 2026-08-07 15:28:30 +08:00
balibabu
4d1da18e84 Fix: The height of the source code mode in the wiki template's Markdown editor is too small. (#17982) 2026-08-07 14:55:30 +08:00
balibabu
e2e70cea92 Fix: Clicking the confirm button on the WikiCommitModal does not validate the form. (#17981) 2026-08-07 14:55:18 +08:00
chanx
048affd2ab fix(i18n): clarify selectAll label selects current page only (#17974) 2026-08-07 14:54:37 +08:00
Kevin Hu
a25ff22aca Refactor: check the evidences while formalize answer. (#17951)
### Summary

Check the evidences while formalize answer.
2026-08-07 14:51:54 +08:00
Lynn
045ba3970a Fix: verification message (#17978) 2026-08-07 14:44:23 +08:00
Wang Qi
550283c356 Fix generate graph error (#17966) 2026-08-07 14:29:01 +08:00
chanx
ed96379c47 fix(markdown): open non-PDF document references in internal viewer (#17971) 2026-08-07 14:23:40 +08:00
buua436
48b2d3b914 fix: preserve page index chapter chunk provenance (#17963) 2026-08-07 13:47:04 +08:00
Haruko386
615c7d8bcb feat[Go]: implement data source gmail and test prune (#17969)
### Summary

As title
2026-08-07 13:35:57 +08:00
balibabu
84b94d4b30 Fix: Remove leading and trailing whitespace from the pageIndex data returned by the backend. (#17967) 2026-08-07 13:32:09 +08:00
buua436
f77f2bb9ce fix: optimize timeline compilation template (#17972) 2026-08-07 13:31:33 +08:00
Yee
27c8b1a061 fix(nginx): use 127.0.0.1 in python conf to avoid ~1s IPv6 fallback latency (#17909)
## Problem

In the default deployment (`API_PROXY_SCHEME=python`), the nginx config
generated from `docker/nginx/ragflow.conf.python` uses:

```nginx
proxy_pass http://localhost:9381;  # admin
proxy_pass http://localhost:9380;  # api
```

Inside the RAGFlow container, `/etc/hosts` maps `localhost` to both
`127.0.0.1` and `::1`:

```
127.0.0.1   localhost
::1         localhost ip6-localhost ip6-loopback
```

But the backend services (`ragflow_server.py` on 9380, admin server on
9381) only listen on IPv4 (`127.0.0.1`). When nginx resolves `localhost`
to `::1`, the upstream connection fails and nginx falls back to the IPv4
address - each fallback adds ~1 second of latency.

Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-07 11:32:43 +08:00
balibabu
b099c88c3f Fix: Deduplication of wiki entity types (#17965) 2026-08-07 11:29:05 +08:00
balibabu
5c8c4346a9 Fix: Start a new conversation; an additional conversation entry will appear once the chat ends. (#17964) 2026-08-07 11:28:50 +08:00
Jack
57cacaddf9 refactor[Go]: remove chunker dead code & fix stale/false descriptors (L1/L2/L3) (#17960) 2026-08-07 11:07:45 +08:00
Jack
e587c56460 refactor(go): clean up TokenChunker delimiter routing and children appliers (#17954) 2026-08-07 11:07:21 +08:00
Jack
16ac94cff5 fix(parser/chunk): dedupe CompileDelimiterPatternList active entries (#17939)
Restore the deduplication that was dropped when #17926 was merged.
`CompileDelimiterPatternList` now keeps a `seen` set and collapses
equivalent active entries (both backtick-inner and bare) into a single
alternation. This PR also removes the dead code that the re-review
surfaced.
2026-08-07 10:06:04 +08:00
Jack
cdef804555 fix(chunker): decide token merge on running sum, not re-tokenized join (#17948) 2026-08-07 09:57:01 +08:00
Jack
891d05baf9 refactor: extract TruncateRunes to internal/utility and fix integration build (#17938) (#17944) 2026-08-07 09:55:26 +08:00
chanx
1ef7910103 fix(memory): display embd_name with fallback to embd_id in form field (#17956) dev-20260807 2026-08-07 09:34:30 +08:00
Haruko386
f532f27f1f feat[Go]: complete the base for data Syncer (#17890)
### Summary

As title

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-08-06 20:09:46 +08:00
Yingfeng
1b8151a1f6 Refine agentic search (#17900) 2026-08-06 19:42:05 +08:00
chanx
973d9b6b26 fix(setting-model): saved instance api_key edits not triggering save (#17942) 2026-08-06 19:38:29 +08:00
Lynn
2e0b82be30 Fix: recognize data type in parse method table (#17946) 2026-08-06 19:37:57 +08:00