首页 文章 精选 留言 我的

精选列表

搜索[wiki],共2544篇文章
优秀的个人博客,低调大师

RAG 找答案,Wiki 长知识

我们之前给客户做过一个背调系统方案。用 RAG 查企业材料,自动生成背调报告。听起来很成熟,检索加生成,标准管线。报告出来了,版式漂亮,引用齐全,语气笃定。不过,财务数字是错的。营业收入、净利润,整段数字对不上材料。有的是编的,有的是把别处的数挪了过来。看起来比真的还真。关键数字不对,报告就没法用。材料里明明写着数,模型为什么不抄材料。后来我想明白了,这不是 RAG 做错了什么。恰恰相反,它很好地完成了自己的任务:找到相关材料。问题在于,我们让一个检索系统承担了知识管理系统的职责。RAG 是知识消费层,不是知识生产层。财务数字这种东西,不能靠模型「理解大意」,必须钉死在结构里,带单位,带期间,带口径,带出处。搜得再好,也只是把原料端上桌。怎么变成可以下锅的知识,是另一件事。我后来把这个过程叫做「知识编译」。编译不是总结。写代码的人对这个类比不陌生:

优秀的个人博客,低调大师

开源 Wiki 系统 InfoSphere 2024.01.1 发布

推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台,建议下载使用:https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件:https://github.com/devlive-community/openai-java-sdk InfoSphere 发布! 发布版本 发布时间 2024.01.1 2024-07-12 该版本为整体重构版本,移除了之前所有的功能。 基本功能 支持用户登录 支持用户注册 支持修改基本信息 支持修改密码 书籍功能 支持创建 & 修改书籍 支持首页最新发布书籍 支持公开书籍 支持阅读书籍 支持书籍编写文档 支持书籍公开 & 私有分类 支持书籍上传封面 支持书籍概览信息 推荐一套全平台数据库管理工具,建议下载使用:https://github.com/devlive-community/dbm 推荐一套功能强大的开源数据中台系统:https://github.com/devlive-community/datacap 下载地址 https://infosphere.devlive.org/download.html

优秀的个人博客,低调大师

各种语言的注释总结--from wiki

Commentscan be classified by: style (inline/block) parse rules (ignored/interpolated/stored in memory) recursivity (nestable/non-nestable) uses (docstrings/throwaway comments/other) Inline comments[edit] Inline comments are generally those that use anewlinecharacter to indicate the end of a comment, and an arbitrarydelimiteror sequence oftokensto indicate the beginning of a comment. Examples: Symbol Languages C Fortran 77and earlier; the 'C' must be in column 1 of a line to indicate a comment. REM,::,: BASIC,COMMAND.COM,cmd.exe, batch files NB. J; from the (historically) common abbreviationNota bene, the Latin for "note well". ⍝ APL; the mnemonic is the glyph (jot overstruck with shoe-down) resembles a desk lamp, and hence "illuminates" the foregoing. # Bourne shelland otherUNIX shells,Cobra,Perl,Python,Ruby,Seed7,Windows PowerShell,PHP,R,Maple % TeX,Prolog,MATLAB,[9]Erlang,S-Lang,Visual Prolog // ActionScript,C (C99),C++,C#,D,Go,Java,JavaScript,Object Pascal(Delphi),Objective-C,PHP,Scala,SASS ' Visual Basic,VBScript,RealBasic ! Fortran, Basic Plus, Inform ; AutoHotkey,AutoIt,Lisp,Common Lisp,Clojure,Rebol,Scheme, many assemblers -- Euphoria,Haskell,SQL,Ada,AppleScript,Eiffel,Lua,VHDL,SGML * COBOL(if fixed-form and * in column 7),PAW, many assemblers, Fortran (if fixed-form and * in column 1) || Curl " Vimscript \ Forth Block comments[edit] Block comments are generally those that use a delimiter to indicate the beginning of a comment, and another delimiter to indicate the end of a comment. In this context,whitespaceandnewlinecharacters are not counted as delimiters. Examples: Symbol Languages ¢~¢,#~#,co~co,comment~comment ALGOL 68 /**/ ActionScript, AutoHotkey, C, C++, C#, D, Go, Java, JavaScript, Objective-C, PHP, PL/I, Scala (can be nested), SASS, SQL,Visual Prolog,CSS #cs#ce AutoIt /++/ D (can be nested) /##/ Cobra(can be nested) <##> Powershell =begin=cut Perl =begin=end Ruby #<tag></code> <code>#</tag> S-Lang {--} Haskell(can be nested) (**) Object Pascal (Delphi), ML, Mathematica,Pascal,Seed7,Applescript,OCaml(can be nested), Standard ML (can be nested), Maple,Newspeak {} Object Pascal (Delphi), Pascal |##| Curl %{%} MATLAB[9](the symbols must be in a separate line) #||# Lisp,Scheme,Racket(can be nested in all three). --[[ ]] Lua "" Smalltalk (comment ...) Clojure 本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/3606079.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

WIKI 知识库 v1.1.3 正式发布

该功能的作用 以前检索主要靠「向量语义 + 重排」:同义词、口语化提问能找着,但专有名词、型号、原文原句这类字面命中容易漏。当前版把关键词通道补上,做成一条完整链路: BM25 字面召回与向量 ANN并行取候选。 用 RRF(倒数排名融合)合成一份候选列表,再交给原来的 Rerank。 任一通道失败或关掉时自动降级到另一路,问答不至于整段挂掉。 开关与rrf_k挂在「知识库管理 → 检索与分片」,保存即热更新,方便对比实验。 社区版默认开启混合检索;关掉hybrid_enabled即可回到「仅向量 + 重排」。另外本版顺带修了两处容易误解的体验: 知识来源分数:主标签改为「名次 + 本批相对分 + 档位」,并拆开展示向量 / 重排绝对值;模型答「无法确定」时,侧栏降级为「检索候选」并默认收起。 聊天页高度:整页不再被消息撑高;消息区内部滚动,输入框始终留在可视区域底部。 混合检索整体架构 名称 文件路径 说明 稀疏索引 src/kb/bm25_index.py 纯标准库 Okapi BM25;中英简单切词 融合 src/kb/hybrid.py 多路 RRF 检索主路径 src/knowledge_base.py 双通道 + 降级 + 重排;回传向量/重排分项 可配置项 src/kb/retrieval_settings.py hybrid_enabled / rrf_k 校验与热更新 来源组装 src/api/http_server.py 相对排序分、档位、分项分数 页面 KbManagement.vue / RetrievalQa.vue 混合开关;来源展示与聊天布局 那如何使用呢? 1. 默认即可使用 升级到 v1.1.3 后,配置默认: 参数 默认值 说明 hybrid_enabled true 开启 BM25∪向量 rrf_k 60 RRF 常数;越大排名差越平滑 导入或重建分片时会同步重建内存 BM25 索引,无需单独操作。 2. 面板参数调整 控制台「知识库管理 → 检索与分片」: 打开 / 关闭混合检索 hybrid_enabled 调整RRF 常数 rrf_k(关闭混合时该项禁用) # 读当前生效值(含 hybrid)curl -s http://127.0.0.1:8000/api/kb/settings | python -m json.tool# 临时关掉混合只走向量+重排curl -s -X PUT http://127.0.0.1:8000/api/kb/settings -H "Content-Type: application/json" -d "{\"hybrid_enabled\":false}" | python -m json.tool 3. 看懂「知识来源」分数 检索问答右侧 知识来源 主标签形如: #1 · 1.00 · 一般、向量 0.52 · 重排、0.78 · 合成 0.66 字段 说明 名次 本批结果中的排序 相对分 第 1 名最高分值为 1.00 其余按合成分相对峰值比例 较强 / 一般 / 较弱 按合成分档位不是正确率 向量 / 重排 / 合成 分项绝对值便于核对虚高 若回答是「根据当前知识库无法确定」: 气泡改为「检索候选 N 条(不足以回答)」 侧栏提示:仅是候选,不是已证实依据,并默认收起 4. 和评测一起用 同一套参数下用评测集跑分、指标看板看结果,才能验证混合是否真的抬召回: python -m src.eval.clipython -m src.eval.cli --top-k 10 建议进行对比hybrid_enabled=true对比false,看 Recall@5 / NDCG@10 与检索 p95。 是如何实现的 1. 检索数据流 检索数据流日志关键词如Hybrid recall: channel=hybrid_rrf|vector_only|bm25_only ...方便排查走了哪条路。 2. 分数怎么来的 合成分 ≈ 0.35 × 向量分 + 0.65 × 重排分(默认权重)相对分 = 合成分 / 本批最高合成分 所以当问对了文档却只有 0.66很常见,因为那是合成分不是错误率。界面主标签改用相对分后,排第一的文档最高会显示1.00,同时仍可在下方看到真实向量/重排序值。 3. 聊天页高度 视口 100dvh └─ 顶栏 + 主内容区(问答页禁止整页滚动) └─ qa-layout(三栏填满剩余高度) └─ 中间栏:工具栏(固定) 消息列表(内部滚动) 输入框(固定在栏底) 4. 示例 配置片段conf/config.json思路 { "search": { "hybrid_enabled": true, "default_k": 5, "min_source_similarity": 0.6 }, "retrieval": { "rrf_k": 60, "embed_weight": 0.35, "rerank_weight": 0.65 }} 接口返回的来源项(节选) { "filename": "升级迁移指南.md", "rank": 1, "relative_similarity": 1.0, "similarity": 0.66, "embed_similarity": 0.52, "rerank_similarity": 0.78, "score_label": "一般", "preview_text": "……"} 那有如何测试呢? 1. 自动化验收 python -m unittest tests.test_hybrid_retrieval tests.test_source_score_display -v 2. 手动验收 2.1 首先需要确认 hybrid_enabled=true导入含专有名词的文档2.2 用「原文原句 / 型号」提问应能命中(相对纯向量更稳一些)2.3 关掉 hybrid 再问同一次对比召回的差异2.4 问知识库中没有的内容,答案「无法确定」,右侧栏则收起来并提示「检索候选」2.5 多轮对话只有消息区上下滚动,底部输入框始终固定低部2.6 跑评测门控(混合召回路径)如下 python -m src.eval.cli --dataset conf/eval/golden-default.jsonl --hybrid on --no-rerank --warmup 3 --top-k 10 --min-recall5 0.85 --min-recall3 0.75 --min-ndcg10 0.70 --max-latency-p95 300 版本升级说明 从 v1.1.2 升级拉代码 / 装包后重启服务即可。 旧配置中没有hybrid_enabled时默认按 true 处理。 pyproject.toml/ 前端package.json版本均为 1.1.3。 社区发版可参考scripts/release/plan-v1.1.3.json(如果有)。 关于维基框架 维基本地知识库是一个本地优先的开源知识库系统,融合向量检索、重排与对话式问答,支持多种主流大模型 API,具备高性能本地存储与灵活扩展能力,适合智能问答、知识管理、企业知识中台等场景。MulanPSL2 许可证,欢迎共建! 官网:framewiki.com Gitee:https://gitee.com/cdkjframework/knowledge-base 📄 许可证:MulanPSL-2.0(木兰宽松许可证,第2版)

优秀的个人博客,低调大师

WIKI 知识库 v1.1.2 正式发布

这个功能有什么作用呢? 以前调 top_k、相似度阈值、切块长度都要改 conf/config.json 然后再重启服务,要做对比实验就很慢,也容易「改了配置但进程还在用旧值」。KB-20 检索配置(含固定长度分片调整)将该功能做成控制台里的功能: 1.知识库管理 「检索与分片」:直接改 default_k、max_search_results、min_source_similarity、chunk_size、chunk_overlap。 2.保存即热更新:检索参数修改后即可生效 /api/query(未显式传 k 时走新的 default_k),不用在重启服务了。 3.分片参数对新导入生效:新上传 / 文本写入按新块长切分;不过已有文档则需要点「重建分片」才会按新规则重切。 4.当前生效值可读:GET /api/kb/settings 返回进程里真正在用的数据,避免「文件写了、内存没改就」的错觉。 不过社区版仍只提供固定长度切分;语义 / 递归分片是商业专属本页不会出现语义策略下拉。 整体架构如下图 ┌──────────── 用户 ────────────┐│ 知识库管理 · 检索与分片 ││ 检索问答 /api/query ││ 新导入 / 重建分片 │└──────────────┬───────────────┘ │ GET/PUT ▼┌──────────── 后端 ────────────┐│ /api/kb/settings ││ → retrieval_settings.py ││ ├→ conf/config.json ││ └→ 运行时 kb.default_k ││ / chunk_* / _search │└──────────────────────────────┘ 层次 路径 说明 校验 / 落盘辅助 src/kb/retrieval_settings.py 范围校验、写 config 字典、热更新运行时属性 API handlers/kb.py + KnowledgeBaseApi GET/PUT /api/kb/settings 查询默认 k handlers/query.py 请求未带 k 时用 api.default_search_k() 页面 frontend/src/views/kb/KbManagement.vue 「检索与分片」表单 前端 API frontend/src/api/kb.ts getKbSettings / updateKbSettings 怎么用使用? 1、 打开面板 启动服务后进入控制台「知识库管理」→「检索与分片」即可看到当前生效值。建议参数(也是当前本版默认配置): 参数 默认 说明 default_k 5 问答未指定 k 时的召回数;检索问答页挂载时会同步该值 max_search_results 10 召回上限,须 ≥ default_k min_source_similarity 0.0 0 = 关闭硬阈值,减少长尾被误杀 chunk_size 800 固定长度块大小(字符) chunk_overlap 120 相邻块重叠 修改完配置后耍要刷新「检索问答」页即可,工具栏召回数会跟新的 default_k 对齐(仍可临时手动调)。 2、 改检索参数 将 default_k 参数调整到 8 后点击「保存并生效」按钮,再去检索问答提问(先不带 k 调 /api/query)召回参数会立刻改变。 # 读当前生效值curl -s http://127.0.0.1:8000/api/kb/settings | python -m json.tool# 热更新(示例)curl -s -X PUT http://127.0.0.1:8000/api/kb/settings \ -H "Content-Type: application/json" \ -d "{\"default_k\":8,\"max_search_results\":12,\"min_source_similarity\":0,\"chunk_size\":800,\"chunk_overlap\":120}" \ | python -m json.tool 接口 说明 GET /api/kb/settings 当前生效参数 + 使用说明 notes PUT /api/kb/settings 校验后写配置文件并热更新进程 3. 改分片参数(新导入 / 重建) 改 chunk_size / chunk_overlap 后: -新导入的文档按新规则切; -旧文档的不会自动重新分片需在左侧选中文档后点「重建分片」。 4. 和评测 / 看板一起用 同一套参数下用 KB-10 跑分用 KB-11 看板看结果,对比实验才可复现。python -m src.eval.cli省略 --top-k时会跟当前知识库 default_k(并至少覆盖指标所需的 k),报告 config 会带上 default_k、chunk_size、chunk_overlap、top_k_source 等方便对账。 python -m src.eval.cli # top_k 跟 KB-20python -m src.eval.cli --top-k 10 # 显式覆盖 是怎么实现的,数据流如下图 KbManagement │ PUT /api/kb/settings ▼retrieval_settings.normalize_settings │ ├─→ 写 conf/config.json(search / chunking) └─→ 热更新 KnowledgeBase 运行时 (default_k / chunk_* / _search_cfg) │ ▼ /api/query search(k=default_k) 后端的重点有如下四点 校验集中在 normalize_settings 越界、max < default_k、overlap ≥ size 都会直接返回400。 写文件用现有 _config_write_path(),只会修改 search.* 与 knowledge_base.chunking.*,不会动密钥等其它部分。 _search_cfg 与 kb.* 会同步更新避免「若只改了其中一个」。 社区切分仍会走固定长度,语义分片只会在商业版本支持 business/chunking。 前端重点有如下两点 在中间栏新增 Tab「检索与分片」el-input-number 编辑五项等参数。 在分片策略展示为只读「固定长度(社区)」。 重点代码示例 读 / 写设置(Python) from src.kb.retrieval_settings import normalize_settings, snapshot_from_runtime# 假定 api 已启动snap = api.get_retrieval_settings()updated = api.update_retrieval_settings({"default_k": 8, "max_search_results": 12})assert updated["default_k"] == 8 响应的配置片段 { "ok": true, "settings": { "default_k": 8, "max_search_results": 12, "min_source_similarity": 0.0, "chunk_size": 800, "chunk_overlap": 120, "chunking_strategy": "fixed", "notes": { "search": "检索参数保存后立即生效,无需重启服务。", "chunk": "分片参数仅对新导入或「重建分片」生效;旧文档不会自动重切。" } }} 如何测试呢?如下方式 # 单元:校验、热更新、路径识别python -m unittest tests.test_kb_settings -v# 静态路由仍把 /api/kb/settings 当 API(不 SPA fallback)python -m unittest tests.test_p6_static_ui -v 如何手动验收方式如下三点: 打开「检索与分片」改 default_k 保存 不用重启服务,直接问答召回条数变化。 修改小 chunk_size 后新导入一段长文 → 分片数变多,旧文档需要重建分片。 min_source_similarity 设为 0 与设为 0.55 各跑一轮评测,在对比 Recall 是否按预期变化。 关于维基框架 维基本地知识库是一个本地优先的开源知识库系统,融合向量检索、重排与对话式问答,支持多种主流大模型 API,具备高性能本地存储与灵活扩展能力,适合智能问答、知识管理、企业知识中台等场景。MulanPSL2 许可证,欢迎共建! 官网:framewiki.com Gitee:https://gitee.com/cdkjframework/knowledge-base 📄 许可证:MulanPSL-2.0(木兰宽松许可证,第2版)

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册