C# net deepseek RAG AI开发 全流程 介绍

ops/2025/3/14 16:43:07/

deepseek本地部署教程及net开发对接 步骤详解:安装教程及net开发对接全流程介绍

DeepSeekRAG 中的 RAG,全称是 Retrieval-Augmented Generation(检索增强生成),是一种结合外部知识库检索大模型生成能力的技术架构。其核心逻辑是:让大模型在生成回答前,先从指定知识库(如文档、数据库)中检索相关信息,再基于检索内容优化输出,从而提升答案的准确性和可靠性,减少 “幻觉”(虚构错误信息)。

一、安装 Ollama

  1、下载安装包

  访问Ollama 官网:Ollama

 点击对应系统的下载链接(Windows 用户选择 Windows 版本)。

  下载完成后安装

控制台验证是否成功安装,这样就表示安装成功了

二、下载并部署 Deepseek-R1 模型

  1、通过 Ollama 拉取模型

  在浏览器中访问模型库中的 Deepseek-R1 页面:

deepseek-r1:1.5b

配置高可以选择满血版

 根据自己电脑配置,建议选择参数较小的 8B 版本。

  在 CMD 中执行以下命令自动下载并部署模型:

  ollama run deepseek-r1:8b

  执行后,系统会自动下载模型文件,下载完成后进入交互模式。

三、测试 Deepseek 模型交互

  1、命令行交互测试

  在 CMD 窗口中执行:

  ollama run deepseek-r1:8b

  你将进入一个交互界面,可以输入问题,例如:

using System.Data.Common;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.ChatCompletion;
using Microsoft.SemanticKernel.Connectors.Ollama;
using OpenAI.Chat;#pragma warning disable SKEXP0010#pragma warning disable SKEXP0070 //var endpoint = new Uri("http://你的ollama地址:11434"); 
const string endpoint = "http://127.0.0.1:11434";
//var modelId = "qwen-plus";
var modelId = "qwen2";
//var apiKey = config["ApiKey"];var builder = Kernel.CreateBuilder();
builder.Services.AddScoped<HttpClient>();
builder.Services.AddScoped<SearchSkill>();
builder.Services.AddOpenAIChatCompletion(modelId, new Uri(endpoint));
var kernel = builder.Build();
var chatService = kernel.GetRequiredService<IChatCompletionService>();
var chatHistory = new ChatHistory();
var searchService = kernel.GetRequiredService<SearchSkill>(); 
string query = "基于 www.520mus.top 这个网站,推荐一些热门歌曲";
List<SearchResult> result = await searchService.SearchAsync(query);
if (!result.Any())
{chatHistory.AddSystemMessage("抱歉,未找到相关搜索结果。我会基于已有知识继续为您服务。");
}
else
{chatHistory.AddSystemMessage($"已为您找到 {result.Count()} 条相关结果:");foreach (var item in result)chatHistory.AddSystemMessage($"• {item.Title}\n  {item.Snippet}");
}
chatHistory.AddUserMessage(query);
Console.WriteLine(result);
var i = 0;
foreach (var item in chatHistory)
{if (item!=null){ string output = $"{i + 1} 音娱AI:{chatHistory[i].Content}";Console.WriteLine(output);} i++;
}//await foreach (var item in chatService.GetStreamingChatMessageContentsAsync(chatHistory))
//{
//    Console.Write(item.Content);
//}

四,DeepSeekRAG 结果

🔍 DeepSeekRAG 的独特性:DeepSeek 模型与 RAG 的深度融合

  1. 技术原理

    • 检索阶段:通过向量数据库(如 FAISS)对本地文档进行语义分块和向量化存储,DeepSeek 模型在接问题后,先检索匹配度最高的文本片段(如摘要 1 提到 “仅需引用 3 个文档片段”)。
    • 生成阶段:结合检索结果和问题,DeepSeek 利用严格提示机制(不确定时拒绝回答),生成基于事实的回答,避免纯模型的臆造。
  2. DeepSeek 模型的核心优势

    • 低成本本地化:性能媲美 OpenAI 模型,但成本仅 5%,支持本地部署(无需联网),保障数据安全(如黑龙江测绘局、黄河水利委员会的内部知识库应用)。
    • 抗幻觉能力:通过 RAG 强制关联检索结果,回答准确率超 92%(宇视科技案例),尤其适合专业领域(如水利、测绘、医疗)。
    • 场景化适配:支持 PDF 解析、多模态检索(图文混合),并通过 Ollama 框架实现 “开箱即用”(如华为云案例中,上传 PDF 即可构建专属问答库)。

🚀 DeepSeekRAG 的典型应用场景

  1. 企业知识问答

    • 上传内部文档(政策、手册、历史数据),生成精准回答。例如:黄河水利委员会用 RAG 调用防汛知识库,自动生成洪水调度方案。
    • 优势:避免员工反复翻查文档,支持 “自然语言提问 + 图文报告输出”(如三门峡水库的数字孪生系统)。
  2. 垂直领域智能助手

    • 医疗导诊:结合病历和医学指南,DeepSeekRAG 可辅助分诊(宇视科技案例,看病效率提升 50%)。
    • 法律 / 政务咨询:黑龙江测绘局通过 RAG 解析法规,实现 “智能问答 + 流程指引”。
  3. 数据自动化处理

    • 自动清洗、标注地理信息数据(测绘案例),或生成标准化公文(如报告总结、会议纪要),减少人工干预。

🌟 为什么选择 DeepSeekRAG?

  • 性价比:开源模型 + 本地化部署,成本远低于云端 API(如摘要 1 提到 “仅为 OpenAI 的 5%”)。
  • 安全合规:数据不出本地,符合政府、金融等敏感行业需求(黄河水利、黑龙江测绘均采用本地化方案)。
  • 落地便捷:通过 Ollama 或一体机(如宇视科技),无需复杂开发,上传文档即可启动(华为云案例 60 分钟搭建完成)。

总结

DeepSeekRAG 是 **“检索纠错 + 模型生成” 的闭环方案 **,尤其适合需要事实准确性、数据安全的场景。它不仅是技术,更是连接大模型与行业落地的桥梁 —— 让 AI 从 “讲故事” 转向 “解决实际问题”。
(注:结合 DeepSeek 官方特性与政企落地案例,突出技术价值与场景适配性。)


http://www.ppmy.cn/ops/165710.html

相关文章

2025年03月11日Github流行趋势

项目名称&#xff1a;pydoll 项目地址url&#xff1a;https://github.com/thalissonvs/pydoll项目语言&#xff1a;Python历史star数&#xff1a;1372今日star数&#xff1a;148项目维护者&#xff1a;thalissonvs, apps/github-actions, LucasAlvws, CaioWzy, Patolox项目简介…

PHP语言的开源贡献

PHP语言的开源贡献及其影响 引言 在互联网技术飞速发展的今天&#xff0c;开源软件已经成为了软件开发的重要组成部分。它不仅改变了我们开发和使用软件的方式&#xff0c;更在促进技术共享、推动创新和降低开发成本等方面发挥了重要作用。而在众多的开源项目中&#xff0c;P…

golang的Map

Map集合 概述 Map 是一种无序的键值对的集合。 Map 最重要的一点是通过 key 来快速检索数据&#xff0c;key 类似于索引&#xff0c;指向数据的值。 Map 是一种集合&#xff0c;所以我们可以像迭代数组和切片那样迭代它。不过&#xff0c;Map 是无序的&#xff0c;遍历 Map…

leetcode0056. 合并区间 - medium

1 题目&#xff1a;合并区间 官方难度 - 中等 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中的所有区间 。 示例 1…

idea超级AI插件,让 AI 为 Java 工程师

引言​ 用户可在界面中直接通过输入自然语言的形式描述接口的需求&#xff0c;系统通过输入的需求自动分析关键的功能点有哪些&#xff0c;并对不确定方案的需求提供多种选择&#xff0c;以及对需求上下文进行补充&#xff0c;用户修改确定需求后&#xff0c;系统会根据需求设…

PyTorch 和 Python关系

1 PyTorch 和 Python关系 PyTorch 和 Python 是两个不同但相互关联的工具&#xff0c;主要用于机器学习和深度学习领域。以下是它们之间的关系和各自的作用&#xff1a; Python 编程语言: Python 是一种高级编程语言&#xff0c;以其简洁易读的语法而闻名。广泛使用: Python…

Ubuntu 24.04.2 允许 root 登录桌面、 ssh 远程、允许 Ubuntu 客户机与主机拖拽传递文件

允许 root 登录桌面 修改 /etc/pam.d/gdm-autologin , /etc/pam.d/gdm-password 加 # 以注释掉 auth required pam_succeed_if.so user ! root quiet_success 允许 root 通过 ssh 登录 修改 /etc/ssh/sshd_config ... #PermitRootLogin prohibit-password PermitRootLogin …

详细介绍ListView_DeleteItem

书籍&#xff1a;《Visual C 2017从入门到精通》的2.3.8 Win32控件编程 环境&#xff1a;visual studio 2022 内容&#xff1a;【例2.27】支持按Delete键删除某行的列表视图控件 说明&#xff1a;以下内容大部分来自腾讯元宝。 以下是关于**ListView_DeleteItem**函数的详细…