当前位置:首页 > 科技  > 软件

Pro-Chat:一款面向未来的开源智能聊天组件

来源: 责编: 时间:2024-01-17 17:21:22 276观看
导读hi, 大家好, 我是徐小夕, 最近在 Github 上看到一款非常有意思的开源项目, 定位是开箱即用的大模型对话前端解决方案, 我们使用它可以轻松构建聊天组件, 并且可以一键集成主流 AI 大模型, 比如 通义千问, ChatGpt 等

hi, 大家好, 我是徐小夕, 最近在 Github 上看到一款非常有意思的开源项目, 定位是开箱即用的大模型对话前端解决方案, 我们使用它可以轻松构建聊天组件, 并且可以一键集成主流 AI 大模型, 比如 通义千问, ChatGpt 等。(让前端再也不用从零写聊天组件了~)oux28资讯网——每日最新资讯28at.com

oux28资讯网——每日最新资讯28at.com

组件Demo演示

oux28资讯网——每日最新资讯28at.com

oux28资讯网——每日最新资讯28at.com

功能亮点

我根据自己的使用和实践, 总结一下这款开源聊天组件的亮点:oux28资讯网——每日最新资讯28at.com

  • 简单易用, 设计语言统一

oux28资讯网——每日最新资讯28at.com

它是基于 antd 组件库进行的二次封装, 所以我们可以轻松的在 antd 项目中使用, 保持 UI 视觉的统一。oux28资讯网——每日最新资讯28at.com

使用啊安装方式如下:oux28资讯网——每日最新资讯28at.com

# @ant-design/pro-editor 基于 antd 和 antd-style,需要在项目中安装$ npm install antd antd-style -S$ npm install @ant-design/pro-chat -S

使用:oux28资讯网——每日最新资讯28at.com

import { ProChat } from '@ant-design/pro-chat';import { useTheme } from 'antd-style';export default () => {  const theme = useTheme();  return (    <div style={{ background: theme.colorBgLayout }}>      <ProChat        helloMessage={          '欢迎使用 ProChat ,我是你的专属机器人,这是我们的 Github:[ProChat](https://github.com/ant-design/pro-chat)'        }        request={async (messages) => {          const mockedData: string = `这是一段模拟的对话数据。本次会话传入了${messages.length}条消息`;          return new Response(mockedData);        }}      />    </div>  );};

是不是使用非常简单~oux28资讯网——每日最新资讯28at.com

  • 大模型对话能力集成

oux28资讯网——每日最新资讯28at.com

它内置了对话模型常用的:数据编辑、重新发送、删除对话等这些默认的基本操作。oux28资讯网——每日最新资讯28at.com

  • 对AI模型友好的数据结构
const dataArray = [  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "苹"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "果"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "公司"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "是"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "一"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "家"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "科技"}, "index": 0, "finish_reason": null}]}`,  `data: {"id": "chatcmpl-6w****KZb6hx****RzIghUz****Qy", "object": "chat.completion.chunk", "created": 1703582861554, "model": "gpt-3.5-turbo-0301", "choices": [{"delta": {"content": "公司"}, "index": 0, "finish_reason": "complete"}]}`,];

参照 ChatGPT、GLM、通义千问等市面上主流的大模型入参出参,减少前端开发者对这些入参和出参的处理。oux28资讯网——每日最新资讯28at.com

  • 支持丰富的聊天场景, 并且可以根据业务灵活扩展

oux28资讯网——每日最新资讯28at.com

  • 组件化 & 完善的ts类型定义

oux28资讯网——每日最新资讯28at.com

图片图片oux28资讯网——每日最新资讯28at.com

我们可以通过组件暴露的属性轻松自定义, 并且代码质量和代码规范非常优质。oux28资讯网——每日最新资讯28at.com

集成ChatGPT的简单案例

  1. 安装依赖
npm install ai --savenpm install openai --save# or use yarn 、bun、pnpm any elsebun add aibun add openai
  1. 业务代码
import OpenAI from 'openai';import { OpenAIStream, StreamingTextResponse } from 'ai';export const POST = async (request: Request) => {  const { messages = [] }: Partial<{ messages: Array<any> }> = await request.json();  const openai = new OpenAI({    apiKey: 'OpenAI Key',    baseURL: 'base url',  });  const response = await openai.chat.completions.create({    model: 'gpt-3.5-turbo',    messages: [...messages],    stream: true,  });  const stream = OpenAIStream(response);  return new StreamingTextResponse(stream);};
  1. 设计界面
"use client";import { ProChat } from "@ant-design/pro-chat";import { useTheme } from "antd-style";export default function Home() {  const theme = useTheme();  return (    <div      style={{        backgroundColor: theme.colorBgLayout,      }}    >      <ProChat        style={{          height: "100vh",          width: "100vw",        }}        request={async (messages: Array<any>) => {          const response = await fetch("/api/openai", {            method: "POST",            body: JSON.stringify({ messages: messages }),          });          return response;        }}      />    </div>  );}

是不是很简单, 3步就能帮你搭建一个AI聊天应用, 大家感兴趣的可以尝试使用一下。oux28资讯网——每日最新资讯28at.com

Github 地址:https://github.com/ant-design/pro-chatoux28资讯网——每日最新资讯28at.com

文档地址:https://pro-chat.antdigital.dev/oux28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-63661-0.htmlPro-Chat:一款面向未来的开源智能聊天组件

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 如何优雅的实现前端国际化?

下一篇: 腾讯起诉迅雷公司不正当竞争,今年 3 月开庭

标签:
  • 热门焦点
  • K60至尊版刚预热 一加Ace2 Pro正面硬刚

    Redmi这边刚如火如荼的宣传了K60 Ultra的各种技术和硬件配置,作为竞品的一加也坐不住了。一加中国区总裁李杰发布了两条微博,表示在自家的一加Ace2上早就已经采用了和PixelWo
  • 对标苹果的灵动岛 华为带来实况窗功能

    继苹果的灵动岛之后,华为也在今天正式推出了“实况窗”功能。据今天鸿蒙OS 4.0的现场演示显示,华为的实况窗可以更高效的展现出实时通知,比如锁屏上就能看到外卖、打车、银行
  • 帅气纯真少年!日本最帅初中生选美冠军出炉

    日本第一帅哥初一生选美大赛冠军现已正式出炉,冠军是来自千叶县的宗田悠良。日本一直热衷于各种选美大赛,从&ldquo;最美JK&rdquo;起到&ldquo;最美女星&r
  • 线程通讯的三种方法!通俗易懂

    线程通信是指多个线程之间通过某种机制进行协调和交互,例如,线程等待和通知机制就是线程通讯的主要手段之一。 在 Java 中,线程等待和通知的实现手段有以下几种方式:Object 类下
  • K8S | Service服务发现

    一、背景在微服务架构中,这里以开发环境「Dev」为基础来描述,在K8S集群中通常会开放:路由网关、注册中心、配置中心等相关服务,可以被集群外部访问;图片对于测试「Tes」环境或者
  • 企业采用CRM系统的11个好处

    客户关系管理(CRM)软件可以为企业提供很多的好处,从客户保留到提高生产力。  CRM软件用于企业收集客户互动,以改善客户体验和满意度。  CRM软件市场规模如今超过580
  • 三星获批量产iPhone 15全系屏幕:苹果史上最惊艳直屏

    按照惯例,苹果将继续在今年9月举办一年一度的秋季新品发布会,有传言称发布会将于9月12日举行,届时全新的iPhone 15系列将正式与大家见面,不出意外的话
  • 英特尔Xe-HP项目终止,将专注Xe-HPC/HPG系列显卡

    据10 月 31 日消息报道,英特尔高级副总裁兼加速计算系统和图形事业部总经理 表示,Xe-HP“ Arctic Sound” 系列服务器 GPU 已经应用于 oneAPI devcloud 云服
  • Meta盲目扩张致超万人被裁,重金押注元宇宙而前景未明

    图片来源:图虫创意日前,Meta创始人兼CEO 马克&middot;扎克伯发布公开信,宣布Meta计划裁员超11000人,占其员工总数13%。他公开承认了自己的预判失误:&ldquo;不仅
Top