今年我们有一个眼高手低的计划,打算基于 Semantic Kernel
+ DashScope(阿里云模型服务灵积)
+ Qwen(通义千问大模型)
,结合园子已有的产品与应用场景,开发面向开发者的 AI 应用,并将整个过程与大家分享。
目前处于准备阶段,这篇博文分享的是遇到的第一个问题,并由此发起一个小开源项目。
通过 Semantic Kernel 使用大模型服务,必须要有对应这个模型服务的 Connector,而 Semantic Kernel 目前只提供了 OpenAI
与 HuggingFace
的 Connector,没有提供 DashScope
的 Connector。
面对这个问题,我们有2个选择:
1)使用使用已有的 OpenAI Connector,借助 one-api (相当是一个 api 网关)连接 DashScope。
2)自己开发 DashScope Connector。
经过权衡考虑,我们选择了后者,选择了更难走的一条路。
当我们准备自己开发 DashScope Connector 时,发现 DashScope 没有提供官方版 .NET SDK,阿里云只提供了 Python 与 Java 版的 SDK。
找了非官方的 .NET 版 DashScope SDK,又不能满足我们的需求,于是我们在更难的路上选择了难上加难,决定自己开发一个简单版本的 DashScope SDK for .NET,并以此为基础发起一个小开源项目。
在动手开发 DashScope SDK 的时候,我们又发现官方 Java 与 Python 版 SDK 都没开源,连个参考都没有,难度系数又进一步增加。
面对这些小困难,我们没有知难而退,经过一周左右时间的努力,终于完成了一个初步版本的 DashScope SDK,今天发布出来,想抛砖引玉,借此发起一个小开源项目,如果您对基于 Semantic Kernel
+ DashScope
开发 AI 应用感兴趣,期待您的关注,更期待您贡献代码,github 仓库地址 https://github.com/cnblogs/dashscope-sdk
接下来,我们会基于 DashScope SDK for .NET 开发 Cnblogs.SemanticKernel.Connectors.DashScope
,为基于通义千问大模型的 RAG(Retrieval Augmented Generation) 做准备。