BotSharp:又一个.Net重磅AI开源项目,.Net在AI领域开始崛起!
大家好,我是编程乐趣。
自从大模型爆火以来,.Net不管是官方、还是社区开源项目,都陆续推出很多重磅的项目。
在AI领域,对话即平台(CaaP)是未来的发展方向。
下面介绍一个开源项目,面向AI Bot平台构建者的开源机器学习框架:BotSharp,它已经为.NET开发人员提供了使用BotSharp AI BOT platform Builder构建CaaP的整套工具包,非常完美的,可以让我们开箱即用快速集成到应用系统中。
01 项目简介
BotSharp涉及自然语言理解、计算机视觉和音频处理技术,帮助开发者在信息系统中的开发和应用智能机器人助手。
兼容多种 AI 平台,如 ChatGPT 3.5/4.0、Gemini 2、LLaMA 3、Claude Sonnet 3.5、HuggingFace 等。
采用C#开发语言、支持跨平台,采用插件和流水线流执行设计,使插件完全解耦。因此,您可以选择不同的UI/UX,或选择不同的LLM提供商。
它们都是基于统一接口进行模块化的。BotSharp提供了一个高级代理抽象层,可以有效地管理企业中的复杂应用场景,使企业开发人员能够有效地将人工智能集成到业务系统中。
02 核心功能
多代理与对话管理: 内置支持多代理系统,能够处理复杂的对话场景,包括状态管理功能。
任务规划: 支持多种大型语言模型(LLM)规划方法,能够处理从简单到复杂的不同任务。
知识检索: 内置与 RAG(Retrieval-Augmented Generation)相关的接口,支持基于记忆的向量搜索。
多平台支持: 兼容多种 AI 平台,如 ChatGPT 3.5/4.0、Gemini 2、LLaMA 3、Claude Sonnet 3.5、HuggingFace 等。
协同工作: 允许多个具有不同职责的代理协同工作,以完成复杂的任务。
一站式开发: 在同一个平台上构建、测试、评估和审计你的 LLM 代理。
用户界面: 内置的 BotSharp UI 使用 SvelteKit 编写,提供友好的用户界面。
内容集成: 抽象化的标准富内容数据结构,可以与 Facebook Messenger、Slack 和 Telegram 等流行的消息渠道集成。
03 使用方法与界面截图
1、下载源码并启动项目
PS D:\> git clone https://github.com/SciSharp/BotSharp-UI
PS D:\> cd BotSharp-UI
PS D:\> npm install
PS D:\> npm run dev
默认就会在浏览器打开:http://localhost:5015/
2、部分界面截图
2.1 登录界面

2.2 后台首页

2.3 路由

2.4 代理列表

2.5 会话列表

04 技术优势
跨平台: 使用 C# 编写,运行在 .NET Core 上,支持跨平台部署。
模块化设计: 采用插件和管道流执行设计,完全解耦插件,便于开发者根据需求选择不同的 UI/UX 或 LLM 提供商。
使用 C# 机器学习算法: 直接在 C# 中采用机器学习算法,利用 C# 的类型语言特性,系统级重构代码时更加方便。
05 插件系统
采用组件化设计,使得核心功能保持精简,业务功能通过外部组件实现。
以下是部分内置插件:
数据存储: 支持多种数据存储方式,如 MongoDB、LiteDB、腾讯云对象存储等。
LLM 插件: 与不同 AI 平台的接口插件,如 Azure OpenAI、OpenAI、Anthropic AI、Google AI、Meta AI、HuggingFace 等。
消息/渠道: 支持多种消息渠道,如 ChatHub、Meta Messenger、Twilio、Telegram、微信等。
知识检索: 提供知识库和向量数据库插件。
视觉处理: 如 PaddleSharp 插件。
其他工具: 包括仪表板、路由加速器、音频处理、邮件处理、文件处理、HTTP 处理、SQL 驱动、WebDriver、Python 解释器等。
用户界面: 如 Chatbot UI 插件。
06 项目地址
https://github.com/SciSharp/BotSharp
- End -
更多开源项目: https://github.com/bianchenglequ/NetCodeTop
BotSharp:又一个.Net重磅AI开源项目,.Net在AI领域开始崛起!的更多相关文章
- 准备开一个地图SDK的开源项目
最近有点空闲时间了, 准备开一个地图SDK的开源项目, 现在的地图SDK已经有很多了, 再做一个跟重新发明个轮子差不多, 但还想做的原因是想在别的轮子的基础上造个轮子... 初步设想是基于开源的地图渲 ...
- 我发起并创立了一个 Javascript 前端库 开源项目 jWebForm
在线演示地址: ( 在线演示 云平台 由 Kooboo 提供 https://www.kooboo.com/ ) 按钮: http://iwebform.kgeking.kooboo.si ...
- 一个P2P点播直播开源项目:P2PCenter
最近跟着公司的项目走,我也研究了不少东西,尤其是在P2P方面,广泛涉猎各种开源项目,尤其是国外的开源项目,意外的发现了一个国内的项目,做的还不错,推荐一下.---------------------使 ...
- 一个基于 Vue3 的开源项目,3个月时间 star 终于破千!
本文主要是对如何做开源项目的一些思考. 前文回顾: <Vue3 来了,Vue3 开源商城项目重构计划正式启动!> <一个基于 Vue 3 + Vant 3 的开源商城项目> 关 ...
- 一个基于DDD的开源项目,各种技术!
基于asp.net mvc + DDD 构架的开源.net cms系统. 运行截图: 特性: 跨平台 支持Windows.Linux.MacOX运行.linux运行案例:http://blog.ops ...
- 我发起并创立了一个 C 语言编译器 开源项目 InnerC
本文是 VMBC / D# 项目 的 系列文章, 有关 VMBC / D# , 见 <我发起并创立了一个 VMBC 的 子项目 D#>(以下简称 <D#>) https: ...
- 一个非常好的开源项目FFmpeg命令处理器FFCH4J
项目地址:https://github.com/eguid/FFCH4J FFCH4J(原用名:FFmpegCommandHandler4java) FFCH4J项目全称:FFmpeg命令处理器,鉴于 ...
- 我发起了一个 网格计算 协议 开源项目 GridP
GridP 是 Grid Protocol 的 全称 . 我在 <关于软件产业的两个契机> https://www.cnblogs.com/KSongKing/p/95319 ...
- Meta AI 开源万物可分割 AI 模型(SAM)
开始 4 月 6 日,根据 Meta AI 官方博客,Meta AI 宣布推出了一个 AI 模型 Segment Anything Model(SAM,分割一切模型).据介绍,该模型能够根据文本指令等 ...
- 开源项目audioFlux: 针对音频领域的深度学习工具库
目录 时频变换 频谱重排 倒谱系数 解卷积 谱特征 音乐信息检索 audioFlux是一个Python和C实现的库,提供音频领域系统.全面.多维度的特征提取与组合,结合各种深度学习网络模型,进行音频领 ...
随机推荐
- AI Undetect是什么?
标题:AI UNDETECT:超越AI检测的反检测神器 在数字时代,人工智能的飞速发展已经渗透到我们生活的各个领域,包括教育.科技.网络内容制作等.越来越多的人依赖AI来生成各种内容,从学术作业.论文 ...
- 根据字符串,获取实体属性上的annotation,如:createTime” 找到对应实体属性中的 TableField(value = "create_time", fill = FieldFill.INSERT)
根据字符串,获取实体属性上的annotation,如:createTime" 找到对应实体属性中的 TableField(value = "create_time", f ...
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
1.问题描述: 人脸活体检测页面会有声音提示,如何控制声音开关? 解决方案: 活体检测暂无声音控制开关,但可通过其他能力控制系统音量,从而控制音量. 活体检测页面固定音频流设置的是8(无障碍),获取的 ...
- manim边学边做--立方体和棱柱体
本篇介绍Manim中创建三维立体的两个常用对象:Cube和Prism. Cube在制作动画时,可以用于展示立体几何中的立方体概念,或者通过旋转.缩放等动画效果来帮助理解三维空间中的几何变换. Pris ...
- getRawType:获取数据类型,返回结果为 Number、String、Object、Array等
function getRawType(value) { return Object.prototype.toString.call(value).slice(8, -1)}//getoRawType ...
- 如何利用1%的数据优化特定领域LLM预训练? | EMNLP'24
来源:晓飞的算法工程笔记 公众号,转载请注明出处 论文: Target-Aware Language Modeling via Granular Data Sampling 论文地址:https:// ...
- python列表自动扩容机制
问题引入:在对比列表与元组的优缺点时,百度答案为:列表是可变的,可以随时进行增加.修改.删除操作,可以进行动态扩容,动态扩容是以牺牲性能损耗的为代价的,于是我搜索了一下列表的动态扩容 当在创建一个列表 ...
- Linux下二维码识别库Zbar的安装与使用
1. 安装Zbar sudo apt-get install libzbar-dev 2. 识别流程 读取图像并转换为Zbar内建图像类型 创建Zbar扫描器 设置扫描参数 扫描图像并获取结果 #in ...
- 在运行期通过反射了解JVM内部机制
本文由 ImportNew - 黄飞飞 翻译自 takipioncode.欢迎加入Java小组.转载请参见文章末尾的要求. 在日常工作中,我们都习惯直接使用或者通过框架使用反射.在没有反射相关硬编码知 ...
- k8s之资源篇
在线k8s环境: https://killercoda.com/playgrounds/scenario/kubernetes 相关文档: https://github.com/bregman-ari ...