Commit Graph

8144 Commits

Author SHA1 Message Date
Lynn
7ac59d1a36 Fix: set column type priority (#18054) 2026-08-10 20:08:06 +08:00
Wang Qi
b978f94fa6 Fix: restrict max_retries as non-negative integer (#18051) 2026-08-10 20:02:24 +08:00
Wang Qi
df32ffbe57 Fix: restrict keywords_similarity_weight [0,1] (#18044) 2026-08-10 20:01:45 +08:00
Jin Hai
dbd062f65e Go: fix context (#18060)
Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 19:11:43 +08:00
Jin Hai
cb649e8d56 Go: fix warning (#18058)
Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 18:50:37 +08:00
Ziyang Guo
eb184c839c chore(wiki): remove stray debug print (#18020)
### Summary

Remove a stray `print()` from the Wiki source-context fallback.
2026-08-10 18:22:44 +08:00
Jin Hai
c697fcff41 Go: fix go context (#18052)
Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 18:04:17 +08:00
maoyifeng
6f9d158e30 CI: Optimize per-install tools (#18039)
1.  ss already installed in runner, quit the install step
2. tiktoken is already installed in runner,  skip the install step
2026-08-10 17:55:57 +08:00
buua436
6f50e478e0 fix: exclude disabled documents from dataset structures (#18041) 2026-08-10 17:50:34 +08:00
chanx
23369586c0 fix(chat): preserve in-flight SSE stream when switching conversations (#18037) 2026-08-10 17:29:24 +08:00
chanx
6b73341827 fix(search-page): add overflow-x-auto and min-width to prevent layout issues (#18050) 2026-08-10 17:28:05 +08:00
chanx
d69d75fffb fix(token-chunker-form): set minimum value for chunk token size slider (#18047) 2026-08-10 17:27:51 +08:00
chanx
e9123ea764 fix: prevent empty-model warning modal from staying open after OK (#18046) 2026-08-10 17:27:31 +08:00
chanx
5a2cd36b45 fix(share): The language of the shared page will cause the language of the original website to change. (#18043) 2026-08-10 17:26:18 +08:00
dependabot[bot]
d6292da508 chore(deps): bump pypdf from 6.14.2 to 6.15.0 (#18048)
Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.14.2 to 6.15.0.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-10 17:22:57 +08:00
jay77721
ca9e62ee59 fix(ingestion): split Extractor call() into callRaw/callText/callStructured (#18038) 2026-08-10 17:18:24 +08:00
Jack
3a2a5f87dc chore: remove PARSER_ALIGNMENT_HANDOFF.md (#18045)
This handoff doc was accidentally introduced by PR #18005 and should not
be part of the repository. Remove it to keep the tree clean.

Co-authored-by: xugangqiang <xugangqiang@users.noreply.github.com>
2026-08-10 16:36:28 +08:00
黑墨水鱼
4eaad55efe fix: align LocalAI vision constructor arguments (#16920)
## What problem does this PR solve?

`TenantLLMService.model_instance` constructs vision providers with
`lang` as the third positional argument and `base_url` as a keyword
argument.

`LocalAICV` declared `base_url` as its third parameter, causing:

```text
TypeError: LocalAICV.__init__() got multiple values for argument 'base_url'
```

This prevents LocalAI vision models from being used during document
parsing.

Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 15:59:06 +08:00
zjm11902
a690078a24 test: extend /dify/retrieval unit test coverage (#17957)
## Summary
- Extends unit test coverage for
pi/apps/restful_apis/dify_retrieval_api.py (the Dify external knowledge
base endpoint).

Co-authored-by: zjm11902 <zjm11902@users.noreply.github.com>
Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 15:30:52 +08:00
魏家家
6f590a7fcd Update logic-hooks.ts (#15194)
Empty reply configured in knowledge base chat, no content returned when
matched empty content

### Type of change

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

Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 15:08:30 +08:00
wangyunlai
73d006fa0e Add OceanBase and SeekDB Go document engine (#17780)
## What changed

- add an OceanBase/SeekDB Go document engine using `database/sql` and
the existing MySQL driver
- preserve the Python connector's configuration, physical table names,
schema, index names, and ARRAY/JSON/VECTOR encodings
- implement chunk, memory, document metadata, skill, SQL, full-text,
vector, and fusion search paths
- support `DBMS_HYBRID_SEARCH.SEARCH` behind the existing feature flag,
with SQL fallback only when the package is unavailable
- wire the engine into retrieval, memory, metadata, vector hydration,
and SQL chat flows
- add Python/Go compatibility contracts, SQL mock tests, and an
integration-tagged round-trip test

---------

Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 15:06:32 +08:00
Jin Hai
c0bc146fcb Go: fix env variables (#18032)
Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2026-08-10 14:37:05 +08:00
buua436
c0582b8e18 fix: handle disabled documents in dataset structures (#18033) 2026-08-10 13:52:49 +08:00
chanx
2584ea5f0f fix(dataset): shrink table height when bulk operate bar is visible (#18031) 2026-08-10 13:26:56 +08:00
Wang Qi
373050c7ca Fix agentic chat not working in chatbot (#18035) 2026-08-10 13:07:15 +08:00
Yingfeng
b5bffa0fa3 Refine sufficient check using LLM draft (#18028) 2026-08-10 11:44:47 +08:00
Charles
42373a8229 fix(api): map internal RetCode values to valid HTTP statuses in build_error_result (#18009)
### Summary

Fixes #17980.
2026-08-10 11:30:11 +08:00
Wang Qi
3d41ebdded Fix naive ask report error (#18030) 2026-08-10 11:21:23 +08:00
Lynn
4a2bae715c Fix: add zhipu new model (#18029) 2026-08-10 10:58:52 +08:00
Lynn
7433fbb77b Fix: exclude unauthorized memory/dataset from list results (#18006) 2026-08-10 10:16:56 +08:00
S
99110c2df0 chore(rag/app): remove stray debug print() calls (#17943)
chore(rag/app): remove stray debug print() calls

Two hot-path debug print() calls were leaking content/error text to
stdout in production code paths.

* rag/app/naive.py: TxtParser branch in chunk() was printing the entire
  parsed sections list (formatted via repr()) wrapped in 150-char banner
  lines. For large text documents (e.g. a 1000+-page book ingest) this
  dumped tens of thousands of lines per ingest into the docker logs.
  Replaced with a structured
  `logging.info("TxtParser produced %d sections for %s", len(sections),
  filename)` so the parse count is still observable without the content
  leak.

* rag/app/presentation.py: Pdf.position parsing had a debug
  `print(f"Error parsing position: {e}")` inside an except clause in the
  ingest hot path. Replaced with
  `logging.warning(f"Error parsing position in {filename}: {e}")` to
  match the file's existing logging pattern and add filename context.

Both call sites already had logging imported; no new imports added.
logging was used throughout the surrounding code in the same
logging.{info,warning,error}(...) style.
dev-20260810
2026-08-08 15:53:16 +08:00
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