CopilotKit:开源 Copilot 框架,部署应用内 AI 代理,使用 Langchain 自动执行任何任务!

cover_image
原文链接:(更好排版、视频播放、社群交流、最新AI开源项目、AI工具分享都在这个公众号!)

CopilotKit:开源 Copilot 框架,部署应用内 AI 代理,使用 Langchain 自动执行任何任务!

🌟如何仅用一行代码将强大的 AI 代理无缝集成到您的应用程序中。

Hello,大家好啊,今天想分享一个 Copilot 新项目: 用于构建自定义 AI Copilots
的框架🤖,应用内AI聊天机器人、应用内AI代理和AI驱动的文本区域。

Copilot构建的“Hello World” 模板

Demo: 这里展示了利用Copilot构建各种小型应用程序的演示,每一个演示都单独分配的一个仓库。

您可以在我们的GitHub示例中找到各种用例的示例。以下是其中一些示例:

  • Hello World: 一个简单的待办事项应用,展示了如何在React中使用CopilotKit。

  • Presentation Voice: 展示了如何将CopilotKit与PowerPoint和语音识别结合使用。

  • Presentation Demo: 一个更复杂的示例,展示了如何在PowerPoint演示中使用CopilotKit。

  • Spreadsheet Demo: 展示了如何在电子表格应用中使用CopilotKit。

**比如, ** PowerPoint + Copilot + 语音 ** : **

视频介绍与教程

组件

🌟 ** : **
构建 应用感知的AI聊天机器人 ,可以“看到”当前的应用状态并在应用内执行操作。
AI聊天机器人可以与您的应用前端和后端以及第三方服务(如Salesforce、Dropbox等)进行对话,支持生成式UI。几秒钟内开始使用:

🌟 ** : **
任何 <textarea /> 的替代品,具有AI辅助文本生成功能。
自动完成 + AI编辑 + 从头生成。基于用户数据和Copilot应用上下文。
只需将 textarea 更改为 CopilotTextarea

🌟 应用内代理(由LangChain驱动):
为代理提供实时应用上下文,让代理在应用内执行操作。

🌟 联合代理(由LangChain驱动,敬请期待):
允许最终用户观察和干预应用内代理的操作,具有原生应用UX。
最终用户可以 纠正 中间步骤中的错误(如果有),并 从该点重新开始代理操作

工作原理

定义以下简单的入口点 进入您的应用程序,CopilotKit🪁执行引擎将处理其余部分!

  • 应用状态 (前端 + 后端 + 第三方)

  • 应用交互 (通过普通的TypeScript代码,前端 + 后端)

  • 特定用途的LLM链

  • • 还有更多。

安装

要安装CopilotKit,请执行以下命令:

pnpm i @copilotkit/react-core  
# or  
npm i @copilotkit/react-core  
# or  
yarn add @copilotkit/react-core

** 📚 阅读文档以了解更多 📚 **

组成模块

有关更全面和最新的概述,请参阅文档。大致如下:

Copilot入口点
  • • ✅ useCopilotReadable :将前端状态提供给copilot。

  • • ✅ useMakeCopilotDocumentReadable :将文档状态提供给copilot,特别适用于第三方状态(例如Gong通话记录)。

  • • ✅ useCopilotAction :前端应用程序交互。

  • • ✅ CopilotRuntime :服务器端运行时。

  • • 🚧 useCopilotChain :提供特定用例的LLM链。

内置UI组件
  • • ✅ :内置的、可定制的Copilot UI(可选 - 你可以使用自己的UI)。

  • • ✅ :内置的弹出UI。

  • • ✅ :独立的聊天UI。

  • • ✅ :具有Copilot自动完成功能的替代 <textarea /> 组件。

  • • ✅ useCopilotChat():用于完全自定义的UI组件。

  • • 🚧 使用自定义UX元素在聊天中 (即将推出)。

示例
<CopilotSidebar />  
import "@copilotkit/react-ui/styles.css"; // 添加到应用全局CSS  
import { CopilotKit } from "@copilotkit/react-core";  
import { CopilotSidebar } from "@copilotkit/react-ui";  function MyAmazingContent() {  const importantInfo = useImportantInfo();  useCopilotReadable({  description: "非常重要的信息",  value: importantInfo,  });  useCopilotAction(  {  name: `selectDestinations_${toCamelCase(heading)}`,  description: `在${heading}表格中将给定的目的地设置为“已选择”`,  parameters: [  {  name: "destinationNames",  type: "string[]",  description: "要选择的目的地名称",  required: true,  },  ],  handler: async ({ destinationNames }) => {  setCheckedRows((prevState) => {  const newState = { ...prevState };  destinationNames.forEach((destinationName) => {  newState[destinationName] = true;  });  return newState;  });  },  },  []  );  return <YourContent />;  
}  export default function App() {  return (  <CopilotKit url="/api/copilotkit/chat">  {/* 全局状态和copilot逻辑。将其放在整个应用程序周围 */}  <CopilotSidebar>  {/* 内置的Copilot UI(或使用你自己的UI)。放在单个页面或整个应用程序周围 */}  <MyAmazingContent />  </CopilotSidebar>  </CopilotKit>  );  
}<CopilotTextarea />  
一个具有自动完成、AI插入/编辑和从头生成的替代`<textarea />`组件。<br/>  
基于提供给Copilot的数据进行索引。import "@copilotkit/react-textarea/styles.css"; // 添加到应用全局CSS  
import { CopilotTextarea } from "@copilotkit/react-textarea";  
import { CopilotKit } from "@copilotkit/react-core";  // 在应用程序中的任何地方调用以提供外部上下文(确保用<CopilotKit>包装应用):  
// 见下文以了解更多功能(父/子层次结构、类别等)  
useCopilotReadable({  description: "您的数据描述",  value: relevantInformation,  
});  
useMakeCopilotDocumentReadable(document);  return (  <CopilotKit url="/api/copilotkit/chat">  {/* 全局状态和copilot逻辑。将其放在整个应用程序周围 */}  <CopilotTextarea  className="p-4 w-1/2 aspect-square font-bold text-3xl bg-slate-800 text-white rounded-lg resize-none"  placeholder="一个CopilotTextarea!"  autosuggestionsConfig={{  purposePrompt:  "一个关于CopilotTextarea的酷炫公告帖。简短、清晰、酷炫。",  forwardedParams: {  // 自定义自动完成的额外参数  max_tokens: 25,  stop: ["\n", ".", ","],  },  }}  />  </CopilotKit>  
);

用例

CopilotKit帮助开发者为用户构建 全新的体验 。以下是一些常见用例:

  • SaaS应用程序中的AI助理 :构建您的应用感知型AI聊天机器人。

  • AI编辑器助手 :通过CopilotTextarea使用强大的助手。

  • AI增强的CRM :使用AI增强您的客户关系管理工具。

  • 自定义AI工作流 :在您的应用程序中定义自定义的AI工作流。

  • • 还有更多!

知音难求,自我修炼亦艰

抓住前沿技术的机遇,与我们一起成为创新的超级个体

(把握AIGC时代的个人力量)

**
**

** 点这里 👇 关注我,记得标星哦~ **

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

预览时标签不可点

微信扫一扫
关注该公众号

轻触阅读原文

AI进修生



收藏

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/23591.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPS表格插件方方格子【凑数】功能:选出和等于固定数字的数

文章目录 后来发现可以下载方方格子插件&#xff0c;使用【凑数】功能https://ffcell.lanzouj.com/iwhfc1kjhayh【凑数】快速【凑数】 导师让沾发票&#xff0c;需要选出若干个数额的发票&#xff0c;使它们的和等于一个指定数。不知道怎么办了&#xff0c;查了一下&#xff0c…

SOA的发展历史

1.SOA的发展历程 回顾SOA发展历程&#xff0c;我们把其大致分为了三个阶段&#xff0c;下面将分别介绍每个阶段的重要标准和规范。 1.1.萌芽阶段 这一阶段以XML技术为标志&#xff0c;时间大致从20世纪90年代末到21世纪初。XML系W3C所建&#xff0c;源自流行的标准通用标记语…

Xcode 打包报错Command PhaseScriptExecution failed with a nonzero exit code

解决办法: 1、在Xcode项目中 Pods -> Targets Support Files -> Pods-项目名 -> Pods-项目名-frameworks 中(大约在第44行) 加上 -f 2、CocoaPods版本太旧了,可以尝试升级CocoaPods版本 使用sudo gem update cocoapods更新cocoapods&#xff0c;问题将在1.12.1版本已…

shell的编程方式

文章目录 变量俩种方式第一种方式第二种方式 取消变量数组创建数组获取数组元素的方式 read输出的方式限制输入的方式 流程控制方式for循环输出的方式第一种方式第二种方式while循环输出的方式select选择输出的方式 判断方式判断的四种方式第一种方式第二种方式第三种方式 算术…

Docker笔记-解决非交互式运行python时print不输出的问题

换句话来说就是在docker中如何不会python的print 只需要在启动时&#xff0c;不让python缓冲其输出。 关键命令如下&#xff1a;PYTHONUNBUFFERED1 如下&#xff1a; docker run -e PYTHONUNBUFFERED1 <your_image> 下面解释下-e "-e"选项的全称是"…

【软件项目管理篇】怎样平衡软件质量与时间成本范围的关系?

你会发现&#xff0c;在实际的软件项目中不乏这样的例子&#xff1a; 一个项目&#xff0c;正常估算&#xff0c;要三个月才能完成&#xff0c;但是老板或客户要压缩到一个月完成&#xff0c;而你不知道如何说服他们&#xff1b;项目开发一半&#xff0c;产品经理告诉你&#…

Python-GEE遥感云大数据分析、管理与可视化及多领域案例教程

原文链接&#xff1a;Python-GEE遥感云大数据分析、管理与可视化及多领域案例教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247606139&idx3&sn2b98c8d5c99878ce78c8fade559bdae5&chksmfa821e9ccdf5978a7e63a1d514f2a643158a595fa75ac751c5ca47769…

socket网络编程——多进程、多线程处理并发

如下图所示, 当一个客户端与服务器建立连接以后,服务器端 accept()返回,进而准备循环接收客户端发过来的数据。 如果客户端暂时没发数据,服务端会在 recv()阻塞。此时,其他客户端向服务器发起连接后,由于服务器阻塞了,无法执行 accept()接受连接,也就是其他客户端发送…

MySQL存储引擎的区别和比较

MyISAM存储引擎 MyISAM基于ISAM存储引擎&#xff0c;并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度&#xff0c;但不支持事务。 MyISAM主要特性有&#xff1a; 1、大文件&#xff08;达到63位文件长度&#x…

信号:干扰类别及特征提取

目录 第一部分&#xff1a;干扰类别 1.压制干扰 1.1噪声调幅瞄准式干扰(单音干扰) 1.2噪声调频阻塞式干扰&#xff08;宽带噪声干扰&#xff09; 1.3噪声调频扫频式干扰&#xff08;线性调频&#xff09; 2.欺骗干扰 2.1距离欺骗干扰&#xff08;幅度调制干扰&#xff0…

前端_调试工具_Chrome Devtools

目录 一、上左侧菜单功能 1.选择功能 2.手机/电脑 显示切换功能 3.内存 4.元素 5.控制台 6.源代码/来源 7.网络 8.应用 9.性能 10.安全 11.Lighthouse 12.记录器 13.性能数据分析 二、上右侧菜单功能 1.警告 2.设置 3....更多功能 谷歌浏览器自带了调试工具C…

Google Guice超轻量级依赖注入容器

Google Guice是Goolge开源的一款超轻量级依赖注入容器&#xff0c;超轻量的特点主要体现在&#xff1a;可与其它依赖注入容器混合使用&#xff0c;例如和Spring/Spring Boot的IOC容器混合使用&#xff1b;不需要任何配置信息&#xff0c;只需要引入几个有限的依赖包即可以使用&…

无线和移动网络

背景 两个重要的挑战 无线&#xff1a;通过无线链路通信移动&#xff1a;需要网络处理移动&#xff08;不同变换所接入的网络&#xff09;用户 无线网络中的组件 无线主机&#xff08;无线并不总是意味着移动的&#xff09;基站&#xff08;base station 或者叫AP&#xff0…

知乎知+广告推广开户充值的返点政策是怎样?

如何让您的品牌精准触达目标受众&#xff0c;实现高效传播与转化&#xff0c;成为了每一位市场人面临的挑战。为此&#xff0c;云衔科技作为业界领先的数字营销解决方案提供商&#xff0c;正式宣布全面支持知乎知广告开户及一站式代运营服务&#xff0c;旨在帮助各行业客户在知…

网鼎杯 2020 玄武组 SSRFMe

复习一下常见的redis主从复制 主要是redis伪服务器的选择和一些小坑点 <?php function check_inner_ip($url) { $match_resultpreg_match(/^(http|https|gopher|dict)?:\/\/.*(\/)?.*$/,$url); if (!$match_result) { die(url fomat error); } try { …

【iOS】——Runtime学习

文章目录 一、Runtime介绍二、Runtime消息传递三、实例对象、类对象、元类对象四、isa_t结构体的具体实现五、cache_t的具体实现六、class_data_bits_t的具体实现七、Runtime消息转发动态方法解析备用接收者完整消息转发 一、Runtime介绍 iOS的Runtime&#xff0c;通常称为Obj…

带你了解消防安全与应急救援,2024北京消防展6月盛大开启

带你了解消防安全与应急救援&#xff0c;2024北京国际消防展6.26盛大开启 在日益关注安全问题的今天&#xff0c;消防安全与应急救援已经成为社会发展的重要一环。为了提高全民消防安全意识&#xff0c;推动应急救援技术的发展&#xff0c;2024年北京国际消防展将于6月26日盛大…

纷享销客安全体系:物理与环境安全

纷享销客的物理设备托管在经过严格准入制度授权的TIER3级别以上的专业数据中心&#xff0c;这些数据中心均通过了等保三级与IS027001安全认证&#xff0c;确保电力、制冷等基础设施提供相应级别的冗余&#xff0c;以增强IDC环境的安全性。 业务操作系统平台采用当前广泛使用的…

点云获取pcl点云以某个点云的已经分块得区域的交集

首先将点云分块得到区域后&#xff0c;获取每个块的box的最大最小点云&#xff0c;然后提取box内的点云。 pcl::IndicesPtr indexes(new pcl::Indices());pcl::getPointsInBox(*cloud_1, min_pt, max_pt, *indexes);// --------------------------取框内和框外点--------------…

手持终端RFID电子标签读写器超高频手持机

RFID手持机具备RFID读写功能&#xff0c;可以对RFID标签进行识读&#xff0c;是有特定功能的PDA(便携式移动终端)。 作为现代化信息管理工具的重要组成部分&#xff0c;其强大的功能和便捷的操作性正在越来越多的领域得到应用。从物流仓储到零售管理&#xff0c;从生产制造到医…