Ant DesIgn X AI 体验新秩序

Ant Design X of React

@ant-design/x 是遵循 Ant Design 设计体系的一个 React UI 库,用于构建由 AI 驱动的界面,一键接入智能对话组件与 API 服务。

9a0a1539f184d419109d8c2d209b1c8b.jpeg

✨ 特性

  • 🌈 源自企业级 AI 产品的最佳实践:基于 RICH 交互范式,提供卓越的 AI 交互体验

  • 🧩 灵活多样的原子组件:覆盖绝大部分 AI 对话场景,助力快速构建个性化 AI 交互页面

  • ⚡ 开箱即用的模型对接能力:轻松对接符合 OpenAI 标准的模型推理服务

  • 🔄 高效管理对话数据流:提供好用的数据流管理功能,让开发更高效

  • 📦 丰富的样板间支持:提供多种模板,快速启动 LUI 应用开发

  • 🛡 TypeScript 全覆盖:采用 TypeScript 开发,提供完整类型支持,提升开发体验与可靠性

  • 🎨 深度主题定制能力:支持细粒度的样式调整,满足各种场景的个性化需求

安装

使用 npm 或 yarn 或 pnpm 或 bun 安装

我们推荐使用 npm 或 yarn 或 pnpm 或 bun 的方式进行开发,不仅可在开发环境轻松调试,也可放心地在生产环境打包部署使用,享受整个生态圈和工具链带来的诸多好处。

$ npm install @ant-design/x --save

如果你的网络环境不佳,推荐使用 cnpm。

浏览器引入

在浏览器中使用 script 和 link 标签直接引入文件,并使用全局变量 antdx。

我们在 npm 发布包内的 dist 目录下提供了 antdx.js、antdx.min.js 和 antdx.min.js.map。

强烈不推荐使用已构建文件,这样无法按需加载,而且难以获得底层依赖模块的 bug 快速修复支持。

注意:antdx.js 和 antdx.min.js 依赖 react、react-dom、dayjs,请确保提前引入这些文件。

🧩 原子组件

我们基于 RICH 交互范式,在不同的交互阶段提供了大量的原子组件,帮助你灵活搭建你的 AI 对话应用:

  • 通用: Bubble - 消息气泡、Conversations - 会话管理

  • 唤醒: Welcome - 欢迎、Prompts - 提示集

  • 表达: Sender - 发送框、Attachment - 附件、Suggestion - 快捷指令

  • 确认: ThoughtChain - 思维链

下面是使用原子组件搭建一个最简单的对话框的代码示例:

import React from 'react';

import {

  // 消息气泡

  Bubble,

  // 发送框

  Sender,

} from '@ant-design/x';



const messages = [

  {

    content: 'Hello, Ant Design X!',

    role: 'user',

  },

];



const App = () => (

  <div>

    <Bubble.List items={messages} />

    <Sender />

  </div>

);



export default App;

⚡️ 对接模型推理服务

我们通过提供 useXAgent 运行时工具,帮助你开箱即用的对接符合 OpenAI 标准的模型推理服务。

下面是如何使用 useXAgent 的代码示例:

import React from 'react';

import { useXAgent, Sender } from '@ant-design/x';



const App = () => {

  const [agent] = useXAgent({

    // 模型推理服务地址

    baseURL: 'https://your.api.host',

    // 模型名称

    model: 'gpt-3.5',

  });



  function chatRequest(text: string) {

    agent.request({

      // 消息

      messages: [

        {

          content: text,

          role: 'user',

        },

      ],

      // 开启流式

      stream: true,

    });

  }



  return <Sender onSubmit={chatRequest} />;

};



export default App;

🔄 高效管理数据流

我们通过提供 useXChat 运行时工具,帮助你开箱即用的管理 AI 对话应用的数据流:

import React from 'react';

import { useXChat, useXAgent } from '@ant-design/x';



const App = () => {

  const [agent] = useXAgent({

    // 模型推理服务地址

    baseURL: 'https://your.api.host',

    // 模型名称

    model: 'gpt-3.5',

  });



  const {

    // 发起聊天请求

    onRequest,

    // 消息列表

    messages,

  } = useXChat({ agent });



  return (

    <div>

      <Bubble.List items={messages} />

      <Sender onSubmit={onRequest} />

    </div>

  );

};



export default App;

按需加载

@ant-design/x 默认支持基于 ES modules 的 tree shaking。

TypeScript

@ant-design/x 使用 TypeScript 进行书写并提供了完整的定义文件。

谁在使用

Ant Design X 广泛用于蚂蚁集团内由 AI 驱动的用户交互界面。如果你的公司和产品使用了 Ant Design X,欢迎到 这里 留言。

如何贡献

在任何形式的参与前,请先阅读 贡献者文档。如果你希望参与贡献,欢迎提交 Pull Request,或给我们 报告 Bug。

强烈推荐阅读 《提问的智慧》、《如何向开源社区提问题》 和 《如何有效地报告 Bug》、《如何向开源项目提交无法解答的问题》,更好的问题更容易获得帮助。

社区互助

如果您在使用的过程中碰到问题,可以通过下面几个途径寻求帮助,同时我们也鼓励资深用户通过下面的途径给新人提供帮助。

通过 GitHub Discussions 提问时,建议使用 Q&A 标签。

推荐阅读
(点击标题可跳转阅读)
[极客前沿]-你不知道的 React 18 新特性
[极客前沿]-写给前端的 K8s 上手指南
[极客前沿]-写给前端的Docker上手指南
[面试必问]-你不知道的 React Hooks 那些糟心事
[面试必问]-一文彻底搞懂 React 调度机制原理
[面试必问]-一文彻底搞懂 React 合成事件原理
[面试必问]-全网最简单的React Hooks源码解析
[面试必问]-一文掌握 Webpack 编译流程
[面试必问]-全网最全 React16.0-16.8 特性总结
[架构分享]- 微前端qiankun+docker+nginx自动化部署[自我提升]-送给React开发者十九条性能优化建议
[大前端之路]-连前端都看得懂的《Nginx 入门指南》
[软实力提升]-金三银四,如何写一份面试官心中的简历


觉得本文对你有帮助?请分享给更多人
关注「React中文社区」加星标,每天进步

“在看和转发”就是最大的支持
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值