Semantic Kernel 初体验
前言
作为一个开发者,在使用 ChatGPT、文心一言、星火这些大模型的时候,是不是想要把这些大模型和自己的应用集成,做出一款赚钱的产品呢?那么,如何在不需要很多 AI 专业知识背景的情况下,更轻松地集成大模型呢?这就是本篇文章要介绍给大家的一个微软的开源框架——Semantic Kernel,中文翻译为语义内核。
Semantic Kernel 是什么
一个开源框架,旨在将大模型 AI 编程与传统编程语言集成。它提供了开箱即用的模板、连接器和规划器,允许开发者可以轻松地将 LLM 嵌入到他们的应用系统中。支持的大模型有 OpenAI、Azure OpenAI、Hugging Face 等。
为什么需要 Semantic Kernel
自从看到 GPT3.5 的惊艳之后,越来越多的企业想把 LLM 的能力和他们的软件系统相结合,打造更有价值的产品。但是,直接接入 LLM 的过程是比较复杂的,需要了解大模型的很多细节。为了解决这个问题,微软开源了这个框架。它提供了一个高效简洁的抽象层,隐藏了 LLM 内部细节,让不是专业的 AI 开发者也能具有构建 AI 应用的能力
Semantic Kernel 语言丰富,支持主流的编程语言,包括 C#、Java、Python。
演示使用 Semantic Kernel 实现多轮对话
下面请你和我一起创建一个控制台的多轮对话应用,来体验 Semantic Kernel。
使用 C#创建控制台应用,使用.NET8.0 版本。
LLM 使用 Azure OpenAI
通过创建控制台应用
添加依赖
首先添加 Semantic Kernel 核心依赖包
编辑
program.cs
使用你喜欢的工具,编写下面的代码。
在 Azure OpenAI 上部署好模型后,添加到系统的环境变量
我不想把敏感信息放到配置文件里,而且我希望其他应用也可以直接使用环境变量,而不用重复的创建配置。
在环境变量里创建下面三个变量:
AOAI_MODEL_ID: 部署名称
AOAI_ENDPOINT: 终结点
AOAI_API_KEY: 密钥
添加依赖包,用来读取环境变量
修改上面program.cs
的代码,传入实际的配置信息。
完善代码,编写多轮对话代码
运行结果截图
总结
这篇文章讲解了开源框架语义内核通过隐藏了 LLM 内部细节,提供高效抽象层,让开发者轻松使用 LLM 的能力来开发应用,并编写了一个多轮对话的示例来体验语义内核。希望对你在学习 AI 编程方面有一些帮助。
版权声明: 本文为 InfoQ 作者【小邓】的原创文章。
原文链接:【http://xie.infoq.cn/article/ed88557bbf5dfb2688d85fb30】。文章转载请联系作者。
评论