Chat UI 文档

架构

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

架构

本文档讨论了 Chat UI 代码库的高层概述。如果您希望贡献代码或只是想了解代码库的工作原理,那么这里就是您要找的地方!

概览

Chat UI 提供了一个简单的界面,将 LLM 连接到外部信息和工具。该项目使用 MongoDBSvelteKit 以及 Tailwind

代码地图

本节简要讨论代码库的各个模块。标题不是路径,因为代码库结构可能会更改。

routes

通过 SvelteKit 提供使用 SSR 渲染的所有路由。大部分后端和前端逻辑都可以在这里找到,一些模块被拉出到客户端的 lib 和服务器端的 lib/server 中。

textGeneration

为大多数聊天功能(例如模型输出、Web 搜索、助手和工具)提供标准接口。输出 MessageUpdate,提供有关请求状态的细粒度更新,例如新 tokens 和 Web 搜索结果。

endpoints / embeddingEndpoints

为许多第三方 LLM 和嵌入提供商提供通用的流式接口。

websearch

实现 Web 搜索查询和 RAG。有关更多信息,请参阅 Web 搜索部分。

tools

为 LLM 调用的外部工具提供通用接口。有关更多信息,请参阅工具部分

migrations

包括所有 MongoDB 迁移,用于在模式更改中保持向后兼容性。对模式的任何更改都必须包含迁移

< > 在 GitHub 上更新