nlweb-ai/NLWeb
Main reference implementation for NLWeb, implemented in Python.
解决的问题
NLWeb 简化了网站对话式接口的创建,使人类用户和 AI 代理都能通过自然语言与网页内容进行交互。它解决了 AI 助手需要一种标准化方式,通过自然语言 API 与网页内容交互的需求,利用现有的语义层(如 Schema.org)。
工作原理
NLWeb 提供协议和一组工具,将网站内容转换为对话式端点。它使用 Schema.org 结构化数据以 JSON 格式返回响应。每个 NLWeb 实例都充当一个 MCP(Model Context Protocol)服务器,支持用于自然语言查询的 ask 方法。该项目包含多个模块:
- AskAgent:核心查询代理,处理针对网站的自然语言查询。
- AgentFinder:用于在全网范围内路由到 NLWeb 代理的发现服务。
- DataFinder:使用 Schema.org 映射将自然语言转换为面向企业数据源的 SQL 的转换器。
- ModelRouter:用于路由和评分 LLM,基于质量阈值选择成本效益高的模型的工具。
- NLWebScorer:用于对搜索结果进行排序和评估的神经评分模型。
适用人群
希望为其网站实现自然语言接口的网站所有者和开发者,以及需要一种结构化、标准化方式与网络交互的 AI 代理开发者。
主要亮点
- MCP 支持:原生支持 Model Context Protocol,使 AI 代理更容易与网站交互。
- 广泛兼容性:支持 Windows、macOS 和 Linux,可与各种向量存储(如 Qdrant、Milvus、Elasticsearch)和 LLM(OpenAI、DeepSeek、Gemini、Anthropic)集成。
- 语义网集成:利用 Schema.org 和 RSS 将网络视为 AI 的语义层。
- 平台无关:设计为轻量级且可扩展,适用于从笔记本电脑到数据中心集群的各类环境。
相关
- 项目
- 项目
- 项目
- 项目
- 项目