SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用


SimpleRAG介绍

SimpleRAG是基于WPF与Semantic Kernel实现的一个简单的RAG应用,可用于学习与理解如何使用Semantic Kernel构建RAG应用。

GitHub地址:https://github.com/Ming-jiayou/SimpleRAG

主要功能

AI聊天

支持所有兼容OpenAI格式的大语言模型:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

文本嵌入

支持所有兼容OpenAI格式的嵌入模型:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

简单的RAG回答

简单的RAG回答效果:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

对比不使用RAG的回答:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

从源码构建

git clone到本地,打开appsettings.example.json文件:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

如下所示:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

ChatAI用于配置对话模型,Embedding用于配置嵌入模型,TextChunker用于配置文档切片大小。

还是以SiliconCloud为例,只需填入你的api key 并将文件名改为appsettings.json,或者新建一个appsettings.json即可。

配置完成如下所示:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

IDE:VS2022

.NET 版本:.NET 8

打开解决方案,项目结构如下所示:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

运行程序:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

测试AI聊天:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

测试嵌入:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

使用的是Sqlite保存向量,可以在Debug文件夹下找到这个数据库:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

打开该数据库,如下所示:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

测试RAG回答:

SimpleRAG:基于WPF与Semantic Kernel实现的一个简单的RAG应用

其他配置

您还可以自由的进行其他配置,比如使用Ollama中的对话模型与嵌入模型用于本地离线场景,配置其他的在线对话模型,使用本地Ollama中的嵌入模型等。

前沿技术大模型技术新闻资讯

对不起,o3都出了我才搞明白GPT4o和o1的区别

2025-4-4 17:27:30

前沿技术大模型技术新闻资讯

教你本地复现Deep Research:DeepSeek R1+ LangChain+Milvus

2025-4-4 18:34:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
购物车
优惠劵
搜索