首页 > 极客资料 博客日记
SimpleRAG-v1.0.3:增加文件对话功能
2024-09-26 15:30:03极客资料围观22次
这篇文章介绍了SimpleRAG-v1.0.3:增加文件对话功能,分享给大家做个参考,收藏极客之家收获更多编程知识
Kimi上有一个功能,就是增加文件之后对话,比如我有如下一个私有文档:
会议主题:《如何使用C#提升工作效率》
参会人员:张三、李四、王五
时间:2024.9.26 14:00-16:00
会议内容:
1. 自动化日常任务
许多日常任务可以自动化,从而节省时间和精力。例如,如果你需要定期处理大量数据,可以使用C#编写脚本来自动化数据导入、清理和分析过程。
2. 构建自定义工具
C#可以用来构建各种自定义工具,以满足特定需求。
3. 集成现有系统
C#可以轻松集成现有的系统和API,从而提高工作效率。
4. 开发插件和扩展
许多应用程序支持插件和扩展,C#可以用来开发这些插件,以增强现有应用程序的功能。
5. 优化现有代码
C#提供了丰富的库和框架,可以帮助你优化现有代码,提高性能和可维护性。
我上传这个文档之后,提问文档中的内容,如下所示:
那么我们自己该如何实现这个功能呢?
我们之前接触过RAG,那可以用来应对文档内容超出模型上下文的情况,但是很多时候,我们只是上传一份简单的文档,文档内容并不多,而且也不需要进行存储,那么这时候,就可以直接读文件内容,不用RAG。
以下是自己实现的效果:
也实现了同样的效果。
实现要点
public async IAsyncEnumerable<string> GetAIResponse3(string question,string filePath)
{
string fileContent = File.ReadAllText(filePath);
string skPrompt = """
获取到的文件内容:{{$FileContent}}。
根据获取到的信息回答问题:{{$Question}}。
如果文件内容中没有提到,直接回答不知道。
""";
await foreach (var str in _kernel.InvokePromptStreamingAsync(skPrompt, new() { ["FileContent"] = fileContent, ["Question"] = question }))
{
yield return str.ToString();
}
}
使用这个简单的prompt即可实现。
快速体验
我在github上发布了依赖框架与不依赖框架的版本。解压之后在appsettings.json文件中填入你的api key即可开始体验。
SimpleRAG地址:https://github.com/Ming-jiayou/SimpleRAG
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- Nuxt.js 应用中的 prerender:routes 事件钩子详解
- 【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
- 六、Spring Boot集成Spring Security之前后分离认证流程最佳方案
- 《JVM第7课》堆区
- .NET 8 高性能跨平台图像处理库 ImageSharp
- 还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!
- 刚毕业,去做边缘业务,还有救吗?
- 如何避免 HttpClient 丢失请求头:通过 HttpRequestMessage 解决并优化
- 让性能提升56%的Vue3.5响应式重构之“版本计数”