assistant-ui/assistant-ui

GitHub: assistant-ui/assistant-ui

一个用于在 React 应用中快速构建类似 ChatGPT 的生产级 AI 聊天体验的 TypeScript 组件库。

Stars: 10631 | Forks: 1065

assistant-ui Header

产品 · 文档 · 示例 · Discord · 联系销售

[![npm version](https://img.shields.io/npm/v/@assistant-ui/react)](https://www.npmjs.com/package/@assistant-ui/react) [![npm downloads](https://img.shields.io/npm/dm/@assistant-ui/react)](https://www.npmjs.com/package/@assistant-ui/react) [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/assistant-ui/assistant-ui) [![Weave Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fapp.workweave.ai%2Fapi%2Frepository%2Fbadge%2Forg_GhSIrtWo37b5B3Mv0At3wQ1Q%2F722184017&cacheSeconds=3600)](https://app.workweave.ai/reports/repository/org_GhSIrtWo37b5B3Mv0At3wQ1Q/722184017) ![GitHub License](https://img.shields.io/github/license/assistant-ui/assistant-ui) [![GitHub stars](https://img.shields.io/github/stars/assistant-ui/assistant-ui)](https://github.com/assistant-ui/assistant-ui) ![Backed by Y Combinator](https://img.shields.io/badge/Backed_by-Y_Combinator-orange) ## 在你的 React 应用中实现 ChatGPT 的 UX 💬🚀 **assistant-ui** 是一个开源的 TypeScript/React 库,用于快速构建生产级的 AI 聊天体验。 ## 安装 最快的方式是使用 CLI,它可以为 Next.js 应用搭建基础架构,或者将带有样式的组件添加到现有项目中: ``` npx assistant-ui@latest create # new project npx assistant-ui@latest init # add to existing project ``` 或者直接安装这些包: ``` npm install @assistant-ui/react @assistant-ui/react-ai-sdk ``` ## 用法 ``` "use client"; import { AssistantRuntimeProvider } from "@assistant-ui/react"; import { useChatRuntime } from "@assistant-ui/react-ai-sdk"; import { Thread } from "@/components/assistant-ui/thread"; export function Chat() { const runtime = useChatRuntime(); return ( ); } ``` `useChatRuntime` 开箱即用地连接到 Vercel AI SDK。你可以将其替换为 `useLangGraphRuntime`、`useDataStreamRuntime` 或任何自定义的 runtime,以便与你自己的后端集成。 [![assistant-ui 启动模板](https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/assistant-ui-starter.gif)](https://youtu.be/k6Dc8URmLjk) ## 你将获得什么 - **可组合的基础组件**:通过 `Thread`、`Message`、`Composer`、`ThreadList`、`ActionBar` 等组件构建任何聊天 UX。你可以为每个像素自定义样式,或者直接使用 CLI 复制到项目中的精美 shadcn/ui 主题。 - **开箱即用的生产级 UX**:支持流式传输、自动滚动、重试、附件、markdown、代码高亮、语音听写、键盘快捷键以及无障碍访问。 - **Generative UI**:将 tool calls 和 JSON 渲染为 React 组件,收集内嵌的人工批准,并向模型暴露安全的前端操作。 - **强大的 TypeScript 支持**:提供端到端的类型化 runtime API、tool schema、message parts 和适配器。 ## 后端 | 集成 | 包 | | -------------------------------------- | ---------------------------------------------------------------- | | Vercel AI SDK | `@assistant-ui/react-ai-sdk` | | LangGraph / LangChain | `@assistant-ui/react-langgraph`, `@assistant-ui/react-langchain` | | AG-UI / A2A 协议 | `@assistant-ui/react-ag-ui`, `@assistant-ui/react-a2a` | | Google ADK / OpenCode | `@assistant-ui/react-google-adk`, `@assistant-ui/react-opencode` | | 自定义数据流后端 | `@assistant-ui/react-data-stream` | | 托管的线程历史记录、遥测和文件存储 | `assistant-cloud` | 开箱即支持广泛的模型(OpenAI、Anthropic、Google Gemini、Mistral、Perplexity、AWS Bedrock、Azure、Fireworks、Ollama),通过 AI SDK 还支持社区提供的模型,并且可以轻松扩展到任何自定义的 HTTP 后端。 ## 自定义 Radix 风格:你无需使用单一的整体聊天组件,而是组合基础组件并应用你自己的样式。CLI 提供了一个很棒的起步模板;其余的一切都由你掌控。 ![组件概览](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/ebba2b995f184002.png) 制作 Perplexity 外观克隆的示例自定义: ![使用 assistant-ui 创建的 Perplexity 克隆](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/f9618cba70184008.gif) ## 在生产环境中使用 Mastra, LangChain, Athena Intelligence, Browser Use, Stack, Inconvo, Iterable, Helicone, Gram, Coreviz, 以及更多。 ![assistant-ui 发展趋势图表](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/fd0c8ecb13184014.png) ## 演示
Short Demo Long Demo
## 对于其他平台 - React Native:[`@assistant-ui/react-native`](https://www.npmjs.com/package/@assistant-ui/react-native) - 终端 (Ink):[`@assistant-ui/react-ink`](https://www.npmjs.com/package/@assistant-ui/react-ink) ## 许可证 MIT,可选使用 Assistant Cloud 来实现托管的线程持久化和分析。 由 Y Combinator 支持。
标签:AI聊天, React, Syscalls, TypeScript, UI组件库, 人工智能, 安全插件, 用户模式Hook绕过, 自动化攻击