自从2022年11月OpenAI正式对外发布ChatGPT依赖,AGI 这条赛道上就挤满了重量级的选手,各大头部公司纷纷下场布局。原本就在机器学习、深度学习领域占据No.1的Python语言更是继续稳固了自己AI一哥的位置。凭借着Microsoft 和 OpenAI 长期以来一直是紧密相连的合作伙伴,微软的众多使用C# 打造的产品最早将大模型技术落地,微软在产品落地过程中将相关的经验总结推出了Semantic kernel这个开发框架。Semantic kernel 首要的支持语言是C# ,目前已经支持了Python和Java。

在最近的微软Build 2024上,微软和OpenAI 合作正式推出.NET 版本的客户端:OpenAI正式发布第一个官方.NET版本库的测试版。Semantic kernel的Azure OpenAI/OpenAI 连接器也正式切换这个新版本的SDK。目前各大头部公司的大语言模型大都采用OpenAI的API规范,可以直接使用这个客户端库进行对接。

AGI应用开发领域,langchain是当之无愧的老大,不过业界一直抱怨langchain太重,用起来体验不好,Semantic kernel 来自于微软产品团队实践AGI 技术的技术输出,可以帮助.NET开发者 使用C# 语言快速开发强大的基于大模型的应用。目前在github收获了19k的star。这个项目也是.NET 团队推荐且可能在后续会大力扶持的C# AGI应用框架项目。

AGI 应用开发范式也从Chatbot、RAG、Copilot 进化到Agent。 Semantic kernel 本身就是Agent 开发框架,与此同时,微软研究院推出的Agent开发框架Autogen ,最新版本也支持了C# ,而且C# 版本是基于Semantic kernel实现的。社区还有一个Agent 开发框架是Botsharp,BotSharp 是适用于企业级 LLM 应用程序的开源 AI 框架。该项目涉及自然语言理解、计算机视觉和音频处理技术,旨在推动智能机器人助手在面向业务的系统中的发展和应用。开箱即用的机器学习算法使普通程序员能够更快、更轻松地开发人工智能应用程序。

我们知道C# 语言由微软开发,目前属于.NET 基金会,具有简洁性、高性能、强大的并发处理能力以及丰富的标准库,同时具备高可移植性。在.NET 8 以及最新的.NET 9版本中增加了大量的和AGI 相关的特性。C# 拥有的优秀特性让它具备了在AGI 应用开发领域立足的能力。C# 已经在AGI领域发展并站稳脚跟,.NET社区也在努力建设中。下面我们列出社区中一些资源供大家参考:

C# 语言在AGI 赛道上能做什么的更多相关文章

  1. 课上补做:用C语言编程实现ls命令

    课上补做:用C语言编程实现ls命令 一.有关ls ls :用来打印当前目录或者制定目录的清单,显示出文件的一些信息等. ls -l:列出长数据串,包括文件的属性和权限等数据 ls -R:连同子目录一同 ...

  2. C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针

    C语言堆内存管理上出现的问题,内存泄露,野指针使用,非法释放指针 (1)开辟的内存没有释放,造成内存泄露 (2)野指针被使用或释放 (3)非法释放指针 (1)开辟的内存没有释放.造成内存泄露,以下的样 ...

  3. C语言之漫谈指针(上)

    C语言之漫谈指针(上) 在C语言学习的途中,我们永远有一个绕不了的坑,那就是--指针. 在这篇文章中我们就谈一谈指针的一些基础知识. 纲要: 零.谈指针之前的小知识 一.指针与指针变量 二.指针变量的 ...

  4. C语言程序设计做题笔记之C语言基础知识(上)

    C语言是一种功能强大.简洁的计算机语言,通过它可以编写程序,指挥计算机完成指定的任务.我们可以利用C语言创建程序(即一组指令),并让计算机依指令行事.并且C是相当灵活的,用于执行计算机程序能完成的几乎 ...

  5. 为什么很多语言选择在JVM上实现

    非常经济地实现跨平台.你的语言编译器后端只需要输出 JVM 字节码就可以.跨平台需要极大的工作量,举个例子,只是独立开发生成本地代码,就需要花费大量精力去针对不同平台和处理器进行优化(比如 Firef ...

  6. python3+django2 开发易语言网络验证(上)

    创作背景: 在某论坛中下载到一套php开发易语言网络验证的教程,照着看下来,花了两天的时间,结果发现教程里开发的网络验证,以及随着教程一起给学员的源码,都存在着根本用不了的bug!我想要看看能不能在原 ...

  7. C语言/C++编程学习:不做C/C++工作也要学C/C++的原因!

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

  8. java与C语言在字符串结束符上的区别

    综述:在C语言中字符串或字符数组最后都会有一个额外的字符‘\0’来表示结束,而在java语言中没有结束符这一概念.具体见下面分析. 1. C 语言 在C语言中字符串和字符数组基本上没有区别,都需要结束 ...

  9. 16.go语言基础学习(上)——2019年12月16日

    2019年12月13日10:35:20 1.介绍 2019年10月31日15:09:03 2.基本语法 2.1 定义变量 2019年10月31日16:12:34 1.函数外必须使用var定义变量 va ...

  10. Python语言在企业级应用上的十大谬误

    英文原文:https://www.paypal-engineering.com/2014/12/10/10-myths-of-enterprise-python/ 翻译原文:http://www.os ...

随机推荐

  1. TheWay2Hack

    coding 阶段一 打基础. CS61A:现在进度落后一个月,递归部分让我焦头烂额.所以将完成时间延后了一个月,截止到6月7号搞完. CSAPP:卡在datalab,按照3月18号开始,预计7月1号 ...

  2. 这款 AI 代码辅助插件真不错,还能帮你发现 bug!

    大家好,我是树哥. 随着 ChatGPT 风靡全球之后,编程界也迎来了许多代码辅助工具,有非常出名的 Github Copilot 工具.今天,树哥给大家介绍一款免费的代码辅助插件,它无需代理上网,直 ...

  3. IIncrementalGenerator 增量 Source Generator 生成代码入门 读取 csproj 项目文件的属性配置

    本文告诉大家如何在使用 IIncrementalGenerator 进行增量的 Source Generator 生成代码时,读取项目里的项目文件属性,从而实现为项目定制的逻辑.或者是读取 NuGet ...

  4. 读取 k8s 存储在 etcd 上的数据

    读取 k8s 存储在 etcd 上的数据 Etcd Assistant 是一款 Etcd 可视化管理工具,便捷高效地操作您的 etcd 集群:支持多种键的视图:管理租约.用户.角色和权限. etcd是 ...

  5. ESP32 I2C 总线主模式通信程序

    一.概述 这里主要是记录 ESP32 中进行 I2C 通行的基本程序,也可以说是 I2C 总线驱动程序,当然这里只是作为主模式,从模式我还没需要这个需求,以后有机会贴上.此笔记的主要目的是防止以后写 ...

  6. PyQt5 GUI编程(组件使用)

    一.简介 PyQt5 是一个用于创建图形用户界面(GUI)应用程序的 Python 绑定,它基于 Qt 库.PyQt5 提供了大量的组件(也称为控件或部件),用于构建复杂的用户界面.以下是一些常用的 ...

  7. 简单 python 爬虫(爬取小说网)

    #https://blog.csdn.net/Isana_Yashiro/article/details/84582946 import requestsfrom bs4 import Beautif ...

  8. 超详细--redis在Linux环境搭建主从复制

    引言Redis是一个高性能的缓存中间件,一个Redis服务器可以支撑很多的并发请求.但是在一些超高的并发场景下,虽然Redis读写速度很快,但也会产生读写压力过大,服务器负载过高的情况.为了分担读写的 ...

  9. go 从入门到了解

    一,GO的安装与配置 官网:https://golang.org/dl/ 镜像:https://golang.google.cn/dl/ 1,GOPATH GOPATH在windows上的默认值:%U ...

  10. 【winform】【Socket】实现你画我猜一:核心功能开发

    我认为得核心:是把客户端画的图画实时传递给其他的客户端.   我的思路是: 1.GDI+绘图加鼠标事件,实现客户端绘图. 2.每记录鼠标有效绘图10个点,就把这10个点通过socket传递给服务器. ...