NLUX: 为任何LLM打造的对话式AI界面库
NLUX (Natural Language User Experience) 是一个强大的开源JavaScript库,旨在简化对话式AI界面的构建过程。它为开发者提供了一套全面的工具,使其能够轻松地将大型语言模型(LLMs)集成到Web应用程序中。无论您是使用React、Next.js还是普通的JavaScript,NLUX都能满足您的需求。
主要特性
NLUX提供了一系列强大的功能,使其成为构建对话式AI界面的理想选择:
- 快速构建AI聊天界面 - 只需几行代码即可创建高质量的对话式AI界面。
- React组件和Hooks - 提供
<AiChat />
组件用于UI构建,以及useChatAdapter
hook用于轻松集成。 - Next.js和Vercel AI支持 - 为Next.js和Vercel AI提供开箱即用的支持、演示和示例。
- React服务器组件(RSC)和生成式UI - 与Next.js或任何兼容RSC的框架配合使用。
- LLM适配器 - 支持ChatGPT、LangChain的LangServe API、Hugging Face推理等。
- 自定义适配器接口 - 灵活的接口允许为任何LLM创建自定义适配器,支持流式或批处理模式。
- 助手和用户角色定制 - 可自定义参与者角色,包括名称、图像和描述。
- 高度可定制 - 通过主题、布局选项等几乎可以调整每个UI方面。
- 零依赖 - 轻量级代码库,核心零依赖,无外部UI库。
快速上手
NLUX提供了一个命令行工具nlux-cli
,可以快速创建集成了NLUX的新项目:
# Next.js 🔼 with NLUX
npx nlux-cli create next my-next-app
# React ⚛️ , Vite, with NLUX
npx nlux-cli create react my-react-app
# Or, vanilla TypeScript 🟨 , Vite, with NLUX
npx nlux-cli create vanilla my-vanilla-app
这些命令将为您创建一个基本的项目结构,并已经集成了NLUX,让您可以立即开始开发您的AI聊天应用。
使用示例
以下是一个使用NLUX React和LangChain创建AI聊天界面的简单示例:
import {AiChat} from '@nlux/react';
import {useChatAdapter} from '@nlux/langchain-react';
const App = () => {
const gptAdapter = useChatAdapter({
url: 'https://<Your LangServe Runnable URL>'
});
return (
<AiChat
adapter={gptAdapter}
composerOptions={{
placeholder: 'How can I help you today?'
}}
conversationOptions={{
historyPayloadSize: 'max'
}}
/>
);
}
这个例子展示了如何使用NLUX的AiChat
组件和useChatAdapter
hook来创建一个连接到LangChain LangServe API的聊天界面。
设计原则
NLUX的开发遵循以下设计原则:
- 直观性 - NLUX启用的交互应该是直观的,使用应该自然而然,没有障碍或摩擦。
- 性能 - NLUX应该尽可能快,加载快、渲染和更新快、响应用户输入快。
- 可访问性 - 使用NLUX构建的UI应该对所有人都是可访问的,包括残障人士。
- 开发者体验(DX) - NLUX将开发者视为一等公民,库应该提供最佳的开发者体验。
社区与支持
NLUX是一个开源项目,欢迎社区参与和贡献:
- GitHub仓库 - 如果您喜欢NLUX,请在GitHub上给项目加星以示支持。
- GitHub讨论 - 在GitHub讨论区提问、报告问题、分享想法。
- Discord社区 - 加入Discord服务器与社区交流并获得支持。
- 开发者网站 - 访问docs.nlkit.com/nlux获取示例、学习资源和API参考。
许可证
NLUX采用Mozilla公共许可证2.0版本,但有一些限制:不能将其用作训练数据集来开发或改进AI模型,也不能用作代码翻译工具的输入。这意味着您可以在个人和商业项目中使用NLUX,可以修改NLUX并在相同许可下发布您的更改,但不能将NLUX的源代码用作AI模型训练数据集或与代码翻译工具一起使用。
结语
NLUX为开发者提供了一个强大而灵活的工具,用于构建高质量的对话式AI界面。无论您是构建客户服务聊天机器人、AI助手还是其他类型的对话式应用,NLUX都能帮助您快速实现目标。通过其直观的API、广泛的适配器支持和高度可定制的特性,NLUX正在改变开发者构建AI驱动的用户界面的方式。
随着AI技术的不断发展,NLUX将继续演进,为开发者提供最前沿的工具和功能。我们鼓励您探索NLUX,加入其不断增长的社区,并利用这个强大的库来创建下一代的对话式AI应用程序。