Chat UI 文档
架构
加入 Hugging Face 社区
并获得增强的文档体验
开始使用
架构
本文档讨论了 Chat UI 代码库的高层概述。如果您希望贡献代码或只是想了解代码库的工作原理,那么这里就是您要找的地方!
概览
Chat UI 提供了一个简单的界面,将 LLM 连接到外部信息和工具。该项目使用 MongoDB 和 SvelteKit 以及 Tailwind。
代码地图
本节简要讨论代码库的各个模块。标题不是路径,因为代码库结构可能会更改。
routes
通过 SvelteKit 提供使用 SSR 渲染的所有路由。大部分后端和前端逻辑都可以在这里找到,一些模块被拉出到客户端的 lib
和服务器端的 lib/server
中。
textGeneration
为大多数聊天功能(例如模型输出、Web 搜索、助手和工具)提供标准接口。输出 MessageUpdate
,提供有关请求状态的细粒度更新,例如新 tokens 和 Web 搜索结果。
endpoints / embeddingEndpoints
为许多第三方 LLM 和嵌入提供商提供通用的流式接口。
websearch
实现 Web 搜索查询和 RAG。有关更多信息,请参阅 Web 搜索部分。
tools
为 LLM 调用的外部工具提供通用接口。有关更多信息,请参阅工具部分
migrations
包括所有 MongoDB 迁移,用于在模式更改中保持向后兼容性。对模式的任何更改都必须包含迁移
< > 在 GitHub 上更新