Zing 论坛

正文

Wanda:为MediaWiki注入AI智能的问答机器人扩展

Wanda是一个MediaWiki扩展,为维基站点提供基于大语言模型的智能问答功能。它支持多种LLM提供商,结合Elasticsearch向量搜索,能够理解用户问题并从维基内容中检索相关信息生成回答。

WandaMediaWikiAI问答RAGElasticsearch向量搜索知识库Ollama
发布时间 2026/05/21 02:46最近活动 2026/05/21 02:49预计阅读 4 分钟
Wanda:为MediaWiki注入AI智能的问答机器人扩展
1

章节 01

导读 / 主楼:Wanda:为MediaWiki注入AI智能的问答机器人扩展

Wanda是一个MediaWiki扩展,为维基站点提供基于大语言模型的智能问答功能。它支持多种LLM提供商,结合Elasticsearch向量搜索,能够理解用户问题并从维基内容中检索相关信息生成回答。

2

章节 02

背景:知识库检索的痛点

MediaWiki作为维基百科的开源引擎,被广泛用于构建企业知识库、技术文档站点和社区百科。然而,传统的关键词搜索在面对复杂问题时往往力不从心——用户需要知道确切的术语才能找到相关内容,而语义层面的关联则难以捕捉。

随着大语言模型的普及,一种更自然的交互方式成为可能:用户用自然语言提问,AI理解意图并从知识库中提取答案。这正是Wanda扩展所实现的核心能力。

3

章节 03

Wanda项目概述

Wanda是由开发者fank维护的MediaWiki扩展,基于维基媒体基金会的官方版本进行了增强。该扩展为MediaWiki站点提供了完整的AI问答机器人功能,包括一个专用页面和一个浮动聊天组件。

与原版相比,这个分支增加了对OpenAI兼容端点的支持、针对Qwen3推理模型的适配优化,以及对真实维基内容场景的改进。它兼容MediaWiki 1.36及以上版本,支持PHP 7.4+。

4

章节 04

系统架构:检索增强生成的工作流

Wanda的实现遵循典型的RAG架构,将大语言模型的生成能力与Elasticsearch的检索能力相结合:

内容索引阶段:维基页面被处理并存储到Elasticsearch中,同时生成向量嵌入。这一步骤通过维护脚本ReindexAllPages.php完成,将整站内容转换为可语义搜索的向量表示。

查询处理阶段:当用户提问时,系统首先将问题转换为嵌入向量。如果嵌入服务不可用,则回退到传统的文本搜索。

相似度检索:Elasticsearch执行向量相似度搜索,找出与用户问题语义最相关的页面内容。

答案生成:检索到的相关内容被送入大语言模型,生成针对用户问题的自然语言回答。

这种架构的优势在于,回答完全基于维基的实际内容,有效避免了模型幻觉,同时保持了交互的自然性。

5

章节 05

多提供商支持与配置灵活性

Wanda设计上不绑定特定的AI服务,支持多种LLM提供商:

Ollama(自托管):适合对数据隐私有严格要求的场景。完全本地运行,无需外部API调用。

OpenAI:支持GPT系列模型,包括GPT-3.5-turbo和GPT-4。

Anthropic Claude:支持Claude系列模型,包括Claude 3 Haiku等。

Azure OpenAI:适合已使用Azure云服务的企业环境。

配置方式简洁明了,在LocalSettings.php中设置提供商类型、API密钥、模型名称和端点地址即可。例如,使用Ollama的配置如下:

$wgLLMProvider = 'ollama';
$wgLLMApiEndpoint = 'http://localhost:11434/api/';
$wgLLMModel = 'gemma:2b';
$wgLLMEmbeddingModel = 'nomic-embed-text';
6

章节 06

用户界面:两种交互模式

Wanda提供了两种用户界面,适应不同的使用习惯:

浮动聊天组件:以蓝色聊天气泡的形式固定在页面右下角,用户可随时点击展开对话。这种设计适合快速查询,不影响正常的阅读体验。

专用页面:通过Special:Wanda访问的完整功能界面,提供更宽敞的交互空间,适合复杂的多轮对话。

两种界面都采用了响应式设计,在桌面和移动设备上都能良好工作。

7

章节 07

技术依赖与部署要求

部署Wanda需要以下基础设施:

  • MediaWiki 1.36.0或更高版本
  • PHP 7.4或更高版本
  • Elasticsearch实例(用于内容索引和搜索)
  • 至少一个支持的LLM提供商(Ollama、OpenAI、Anthropic或Azure)

安装流程遵循标准的MediaWiki扩展模式:将扩展文件放入extensions/目录,在LocalSettings.php中加载,运行更新脚本,然后执行内容索引。

8

章节 08

安全与隐私考量

在企业环境中部署AI问答系统时,数据安全是首要考虑。Wanda在这方面提供了多种选择:

API密钥管理:所有密钥都存储在MediaWiki配置文件中,不会暴露在客户端。

自托管选项:通过Ollama支持,敏感内容可以完全在内部网络处理,无需发送到外部API。

超时与限流:可配置适当的超时时间和速率限制,防止资源滥用。

内容边界:回答严格基于索引的维基内容,不会引入外部知识,降低了信息泄露风险。