Docs: no code-analyzer coverage for FTS; base_tokenizer list omits "code"
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 55/100
- Issue 类型
- 文档
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- python, typescript
- 领域
- documentation, search
调研方向
Start with docs/indexing/fts-index.mdx and compare its tokenizer table and Tokenizer choices section with src/lancedb/docs/src/js/type-aliases/BaseTokenizer.md and src/lancedb/python/python/lancedb/index.py. Read the referenced PW-1/PW-2 context before editing. Done means the docs list code, explain code searching and query usage, and state the identifier-splitting and stemming/stop-word limitations accurately.
由索引模型根据 Issue 内容生成。
描述
Bug bash: Ready to fix
Bug bash priority: Low · critical-fix: no
From the FTS for Code bug bash (2026-10-01), findings: sdkdocs-7.md. Repros ran against released artifacts (pylance 12.0.0 / 13.0.0b18, lancedb 0.39.0 / 0.40.0b12, @lancedb/lancedb 0.40.0-beta.12) unless stated. $S is the bug bash scratch dir.
Docs gap, not dispatched.
- Category: docs gap
- Environment:
lancedb/docsrepo,mainat7fa2ff6(2026-09-24), cloned read-only.src/lancedb/docsat v0.40.0-beta.12. Checked against lancedb 0.40.0b12 / @lancedb/lancedb 0.40.0-beta.12 - Artifacts: as above
- Target tracker: GitHub
lancedb/docs
Repro
$ grep -rn -i 'split_identifiers\|analyzer=\|base_tokenizer="code"\|code analyzer\|splitIdentifiers' docs tests # in lancedb/docs
(no hits other than unrelated icon="code" attributes)
docs/indexing/fts-index.mdx:88:
| `base_tokenizer` | str | `"simple"` | Text splitting method (`simple`, `whitespace`, `raw`, `ngram`, `icu`, `jieba/*`, or `lindera/*`) |
The "Tokenizer choices" section (fts-index.mdx:107-119) has no code entry. src/lancedb/docs/src/js/type-aliases/BaseTokenizer.md:10-19 mirrors the TS union without "code". The Python FTS docstring (src/lancedb/python/python/lancedb/index.py:136-145) also lists no "code".
Even so, everything on the query side already works from both SDKs on a code index, whether pylance built it locally or LanceDB Enterprise SQL built it remotely with split_identifiers = true. My parity runs (parity_local.py, parity_remote.py, ts/parity.mjs, ts/parity_remote.mjs, scores.py, strq.py) returned identical row sets in pylance, lancedb Python local and remote, and lancedb TS local and remote. That covers match, phrase, AUTO fuzzy, AND, boolean, hybrid, string queries with code punctuation, and Table.tokenize. BM25 scores were identical too:
match 'user' pylance=[0, 3] lancedb=[0, 3] (remote py [0, 3], TS local/remote [0,3])
phrase 'userName' pylance= [0, 3] lancedb= [0, 3]
user local [(0, 1.0618), (3, 1.425)] remote [(0, 1.0618), (3, 1.425)]
Table.tokenize: [('getusername', 0), ('get', 0), ('user', 1), ('name', 2), ('user_id', 3), ('user', 3), ('id', 4), ...]
Expected behavior
fts-index.mdx lists code with a short "searching source code" subsection. The subsection covers what the code tokenizer does, that stemming and stop words should be off for it (see PW-2), and how to query with MatchQuery/PhraseQuery. Until PW-1 lands, it should also say that identifier splitting is only available via pylance or LanceDB Enterprise SQL.
Evidence: parity results above; LanceDB Enterprise skill doc above.
Suspected root cause
No lancedb or lancedb/docs PR followed lance#7681 (plan "What changed").
Fix direction
Add code to the tokenizer table and a code-search subsection on the docs site, after or together with the PW-1/PW-2 SDK fixes so the documented defaults are right.
- 主要语言
- Python
- 星标
- 11
- 派生
- 14
- 平均合并
- 1 天 12 小时
- 30 天内合并 PR
- 9
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
lancedb/docs 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
documentation
难度 3/5 1-2 天 新手友好度 78/100
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 70/100
维护者通常 1 天内回复
-
Improve training documentation user journey and sidebar naming可能重新可做 @prrao87 于 84 天前认领,目前没有进行中的 PR。 未关闭
维护者通常 1 天内回复
相似的 Issue
-
`burr` fails to start when the Python path has a space in it可能已有人在做 @enekoreto 今天认领。 未关闭status/needs-triage
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 5 天内回复
-
难度 1/5 1 小时以内 新手友好度 72/100
-
难度 2/5 半天 新手友好度 72/100
debpalash/VoiceStudio#2903 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
dagster-io/community-integrations#367 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 74/100
aws-samples/sample-per-model-bedrock#243 ·
维护者通常 1 天内回复