首页 > 其他分享 >深入解析:AntSK 0.1.7版本的技术革新与多模型管理策略

深入解析:AntSK 0.1.7版本的技术革新与多模型管理策略

时间:2024-03-12 13:23:36浏览次数:15  
标签:case builder 0.1 管理策略 AntSK AI chatModel 模型

        在信息技术快速迭代的当下,.Net生态中的AntSK项目凭借其前沿的AI知识库和智能体技术,已经吸引了广大开发者的关注和参与。今天,我要给大家介绍的主角,AntSK 0.1.7版本,无疑将是这个开源项目中的一次重大进步——多模型管理功能的引入,为使用者带来了更强大、更灵活的工具。

AntSK简介

        在我们深入探讨0.1.7版本的亮点之前,让我们先进行一个简单的复习:AntSK是什么?

        AntSK是一个基于.Net平台和AntDesign Blazor框架开发的AI智能体与知识库项目。它依托Semantic Kernel的技术支持,旨在为开发者们提供一个强大、易于使用、可快速开发的AI智能体环境。通过这个项目,开发者可以更加高效地构建和管理智能对话系统,丰富应用程序的交互能力。

https://github.com/xuzeyu91/AntSK

多模型管理功能的新增

        随着机器学习和人工智能的不断进步,AI模型多样化已成为一个不可逆转的趋势。为了适应这一趋势,AntSK 0.1.7版本充分利用了Semantic Kernel的强大功能,在系统中加入了模型配置功能。这意味着开发者可以根据需求,轻松配置和管理使用不同的模型,例如OpenAI和Azure OpenAI,或是LLamaSharp支持的本地GGUF模型等。这样的设计,不仅增强了AntSK的灵活性和适应性,也使得开发人员可以在不同应用中测试和比较不同模型的效果。

 

如何实现多模型管理?

        有了新功能的介绍后,我们再来看看具体的实现方法,正是因为有了技术大咖James Yeung的代码贡献,我们才能如此顺利地实现这一创新。

        在Semantic Kernel中,提供了一个

 

Services.AddKeyedSingleton<ITextGenerationService>

  

的方法,这是我们实现不同模型连接的关键。

我们以TextCompletion类的创建为例,这个类需要继承自ITextGenerationServiceIAIService接口。在这个类中,我们需要实现两个关键的方法:GetTextContentsAsyncGetStreamingTextContentsAsync。通过这些实现,我们便完成了一个模型的连接器。

但这只是第一步,下一步我们需要在创建Semantic Kernel实例时,根据不同模型的类型加载对应的连接器。这一过程通过简单的switch-case实现:

var builder = Kernel.CreateBuilder();
 switch (chatModel.AIType)
 {
     case Model.Enum.AIType.OpenAI:
         builder.AddOpenAIChatCompletion(
            modelId: chatModel.ModelName,
            apiKey: chatModel.ModelKey,
            httpClient: chatHttpClient);
         break;
     case Model.Enum.AIType.AzureOpenAI:
         builder.AddAzureOpenAIChatCompletion(
             deploymentName: chatModel.ModelName,
             apiKey: chatModel.ModelKey,
             endpoint: chatModel.EndPoint
             );
         break;
     case Model.Enum.AIType.LLamaSharp:
         var (weights, parameters) = LLamaConfig.GetLLamaConfig(chatModel.ModelName);
         var ex = new StatelessExecutor(weights, parameters);
         builder.Services.AddKeyedSingleton<ITextGenerationService>("local-llama", new LLamaSharpTextCompletion(ex));
         break;
     case Model.Enum.AIType.SparkDesk:
         var options = new SparkDeskOptions { AppId = chatModel.EndPoint, ApiSecret = chatModel.ModelKey, ApiKey = chatModel.ModelName, ModelVersion= Sdcb.SparkDesk.ModelVersion.V3_5 };
         builder.Services.AddKeyedSingleton<ITextGenerationService>("spark-desk", new SparkDeskTextCompletion(options, app.Id));
         break;
 }

  

未来展望

        通过这些简洁而强大的代码实现,AntSK的用户现在可以轻松切换和管理不同的AI模型了。当然,AI技术日新月异,AntSK的开发者们也必将不断迭代升级,以适应这一变化。我们可以期待,在不久的将来,AntSK能够支持更多的AI模型,甚至可以实现AI模型的实时学习与适配。

        纵观如今的技术发展,AntSK成为其中的亮点,不仅证明了.Net社区的活力与创新能力,更预示着来自开源世界的明日之星,必将为我们的生活和工作带来更多的灵感和便利。

        作为一名技术博主,我对AntSK项目的未来充满信心和期待。而我下一篇文章,可能就是介绍如何将AntSK的这一创新功能应用到一些具体的业务场景中。请期待并关注我的公众号,我将为你带来最前沿的技术动态和深入的技术解析。

结语

        通过今天的分享,我希望你能对AntSK的最新版本有了更加深刻的理解,也希望可以激发起你的兴趣,一起参与到这个充满潜力的项目中来。记住,无论你是AI领域的专业人员,还是对人工智能充满好奇的初学者,AntSK项目都欢迎你的加入,和我们一起推动科技的进步。

        记住,技术是为了解决问题而存在的。当你拥有了AntSK这样的工具时,你的技术梦想,也许就要成为现实了。

        同时也欢迎大家加入我们的 .Net/AI应用开发交流群,可以关注我的公众号<许泽宇的技术分享>,发送进群

 

标签:case,builder,0.1,管理策略,AntSK,AI,chatModel,模型
From: https://www.cnblogs.com/xuzeyu/p/18068091

相关文章

  • 解决问题:HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相
      缺少AspNetCoreModuleV2模块,下载安装即可。ps:.netframework是可以直接发布,IIS指定就能正常访问的。但aspnetcore项目略有不同,要额外安装一个模块,如果没有安装,会报HTTP错误500.19-InternalServerError的错。1、官方版本地址:https://dotnet.microsoft.com/down......
  • mongodb6.0.13 搭建复制集PSA
    一、材料mongodb:6.0.13mongosh:2.1.5  openssl-1.1.1w系统:redhat4.8二、模式PDA:一个主节点(Primary)、  一个延迟副节点(SEcondary)、一个仲裁节点(arbiter)PDA主节点延迟副节点仲裁节点名称PrimarySecondaryArbiter端口27017......
  • 解决 Android studio Connect to 127.0.0.1:[/127.0.0.1] failed: Connection refused
    前言由于代理变更,androidstudio会有一系列报错,其中一个是Connectto127.0.0.1:xxxxxx[/127.0.0.1]failed:Connectionrefused网上答案大都太片面了,无法完全解决问题,这里列举出四个可能的原因,希望对大家有用问题如下建议一下四种方案都尝试下,我相信总有一种能......
  • 【已解决】[图文步骤] message from server: “Host ‘172.17.0.1‘ is not allowed t
    写于2024.03.07北京.朝阳@目录报错信息环境现场解决方案步骤:成功最后报错信息先看看和你的报错一样不一样null,messagefromserver:"Host'172.17.0.1'isnotallowedtoconnecttothisMySQLserver"环境现场mac电脑使用docker部署了一个mysql。docker......
  • linux-0.11-操作系统引导
    bootsect.s逐字分析_start部分设置数据段(DS)和额外段(ES)寄存器:mov ax,#BOOTSEGmov ds,axmov ax,#INITSEGmov es,ax这部分代码将BOOTSEG(0x07c0)值加载到DS寄存器,设置数据段指向引导扇区的原始地址。然后,它将INITSEG(0x9000)值加载到ES寄存器,设置额外段指向内存中的一个......
  • netty client请求127.0.0.1:8081,server端无响应问题排查
    问题描述代码:https://github.com/normanmaurer/netty-in-action/tree/2.0-SNAPSHOT/chapter2利用netty,起了两个服务:echoServer,绑定8081端口。echoClient,请求127.0.0.1:8081端口。client和server建立链接之后,并发送报文:publicclassEchoClientHandlerextendsSi......
  • 智能升级:AntSK教你如何让聊天机器人实现智能联网操作
        随着人工智能技术的飞速发展,智能体已经逐步融入到我们的日常生活中。不过,要想让智能体不仅能聊天,还能接入网络实时获取信息,为我们提供更多便利,所需技术的复杂性不得不让人瞩目。今天,我将和各位分享如何在基于.NET开发的AI知识库/智能体项目AntSK中,利用SemanticKernel......
  • 基于AntSK与LLamaSharp打造私人定制的离线AI知识库
          随着人工智能的不断发展,AI已经逐渐成为我们日常生活中不可分割的一部分。今天,我为大家带来的是一个我近期投入研究的开源项目——AntSK,它结合了LLamaSharp,不仅带来了高效便捷的本地离线AI知识库搭建方法,更是无需借助公司账户,个人开发者也能轻松搭建和使用。项......
  • AntSK:打造你的本地AI知识库——离线运行详细教程
        亲爱的读者朋友们,今天我要给大家介绍一个强大的开源工具——AntSK。这个工具能让您在没有Internet连接时依然能使用人工智能知识库对话和查询,想象一下,即使在无网络的环境中,您也能与AI进行愉快的交流!项目地址:https://github.com/xuzeyu91/AntSK    AntSK......
  • 问题:arcgis10.1连接SDE数据库时提示,未找到arcgis许可
    转自:https://blog.csdn.net/wodeboke_123/article/details/103800407因为我的许可文件是到2020年,所以SDE许可过期。1.问题如下:2.用PL/SQL打开自己的数据库,如图: 3.搜索SERVER_CONFIG表,其中的AUTH_KEY字段是许可信息,用语句改为新的授权信息即可 4.修改sql语句为:select*......