当前位置: 代码网 > it编程>编程语言>Asp.net > C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

2025年03月03日 Asp.net 我要评论
前言自从 deepseek 大模型火了以来,网络上出现了许多关于本地部署的教程和方法。然而,要真正深入了解其功能和应用,还是需要自己动手进行一次本地部署。deepseek 作为一个高效的自然语言处理模

前言

自从 deepseek 大模型火了以来,网络上出现了许多关于本地部署的教程和方法。然而,要真正深入了解其功能和应用,还是需要自己动手进行一次本地部署。

deepseek 作为一个高效的自然语言处理模型,其本地部署能力为大家提供了灵活的应用场景。不管是开发私有化的 ai 应用,还是集成到现有的系统中,deepseek 都能提供强大的支持。

本文将详细介绍如何快速部署 deepseek 模型,并通过 c# 调用其 api 接口,从而搭建高效的私有 ai 服务。我们将从环境准备、本地部署、api 客户端配置到实际调用接口,完成整个过程。

搭建基础环境

ollama 是一个轻量级ai模型运行框架,支持 macos、linux 和 windows 跨平台运行,并兼容包括 llama 3.3、deepseek-r1、phi-4 和 gemma 2 在内的 54 种主流开源模型。

它简化了模型的下载、安装和使用过程,提供了统一的操作界面,能够方便地在本地环境中运行和测试不同的语言模型,简单的说就是相当于一个容器。

1、安装 ollama

首先先下载 ollama,进入官网,根据大家当前的操作系统选择安装包(windows/linux/macos)。

官网下载地址:download ollama on windows

如上图所示点击 download 下载安装包,然后直接安装就可以。

注意:ollama默认安装是在c盘的以及下载的大模型数据包也是默认在c盘,所以一定要注意自己c盘的存储空间够用,

当然我们也有方式改变他的安装路径的。如果不想折腾的可以直接点击安装就可以了。

本文示例是修改了安装路径,具体步骤如下:

首先在目标路径(如 d:\ollaman)创建一个新文件夹并放置 ollama 安装包

然后在该路径下打开命令窗口并输入 ollamasetup.exe /dir=d:\ollama,接着在安装界面点击 "install",即可将 ollama 安装到指定目录,大模型数据包也会默认下载到该目录中。

ollama 安装好了就会自动启动。

查看是否安装成功 windows+r,输入cmd进入命令窗口,输入:ollama -v有版本号就说明安装好了,在任务栏右下角有个羊驼的图标。

2、下载 deepseek r1 模型

在 ollama 官网点击 models,选择deepseek-r1

选择对应的模型,可以看到模型的相信介绍、各种参数的模型。

普通用户:选择 8b 版本,适合日常对话、写作等

高性能显卡用户(显存 16gb 以上):可选 16b 版本,体验更强大性能

各个版本模型对硬件要求,官方没有明确的说明,根据网友分享的大概整理如下,大家可以根据自己的电脑配置选择模型。

选择要下载的模型,复制指令。

打开命令窗口,粘贴运行指令。等待下载完成。下载过程中,会显示下载进度和速度等信息。由于模型文件较大,下载时间可能会较长,需要耐心等待。

至此,已经可以与deepseek进行会话。

同时在浏览器访问:http://127.0.0.1:11434,有如下提示也代表启动成功了。

客户端 chatbox ai接入 deepseek

chatbox ai 是一款 ai 客户端应用和智能助手,支持众多先进的 ai 模型和 api,可在 windows、macos、android、ios、linux 和网页版上使用。

1、下载 chatbox ai

浏览器中访问 chatbox ai的官方网站(chatboxai.app/zh),下载安装。

2、配置环境变量

添加两个环境变量,允许外部访问,填写:0.0.0.0,代表允许任何电脑访问。

ollama_host:0.0.0.0

ollama_origing:*

点击我的电脑,右键属性->高级系统设置->环境变量。

注意:设置完环境变量后退出一下 ollama,然后重新启动下ollama。

3、chatbox ai 连接本地模型

启动 chatbox ai 软件,选择 ollama api后,然后选择下载的 deepseek模型,如果大家还有其他模型也可以选择对应的模型。

模型设置

选择api类型:ollama api

模型名称:deepseek-r1:8b

点击检查连接,如果状态正常,可以开始使用了。

以上设置完成。我们就可以在客户端使用ai聊天了,

c# 调用 deepseek api

ollama 还提供了 api 接口功能,使得自定义客户端开发或集成到应用系统变得非常方便。

其相关生态系统也非常完善,使用 c# 版本的 ollama sdk(如 ollamasharp)可以快速进行开发。

下面通过一个简单的例子来演示如何使用 ollama:

1、安装依赖包

首先,安装 ollamasharp 依赖包:

2、示例代码

新建一个 ollamaapiexamplecontroller控制器,添加如下代码:

using microsoft.aspnetcore.mvc;
using microsoft.extensions.ai;
using ollamasharp;

namespace dotnetcore.deepseekapi.controllers
{
    /// <summary>
    /// ollamaapi示例控制器
    /// </summary>
    [apicontroller]
    [route("api/[controller]")]
    public class ollamaapiexamplecontroller : controllerbase
    {
        private readonly uri _modelendpoint = new uri("http://localhost:11434");
        private readonly string _modelname = "deepseek-r1:1.5b";

        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="httpclient"></param>
        /// <param name="configuration"></param>
        public ollamaapiexamplecontroller(){}

        /// <summary>
        /// 提问接口
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        [httppost("ask")]
        public async task<iactionresult> askquestion([frombody] askrequest request)
        {
            var chatclient = new ollamaapiclient(_modelendpoint, _modelname);
            var question = request.question;

            if (string.isnullorempty(question))
            {
                return badrequest("请输入您的问题?");
            }
            // 使用 await foreach 遍历每个 chatresponseupdate
            var responsebuilder = new list<string>();
            await foreach (var update in chatclient.getstreamingresponseasync(question))
            {
                responsebuilder.add(update.tostring());
            }
            var response = string.join("", responsebuilder);
            return ok(new { response = response });
        }
    }

    /// <summary>
    /// 实体类
    /// </summary>
    public class askrequest
    {
        /// <summary>
        /// 问题
        /// </summary>
        public string question { get; set; }
    }
}

3、运行结果

ollama 相关的api接口,可以查看官方文档。

https://github.com/ollama/ollama/blob/main/docs/api.md

总结

通过本文简单的学习实现了deepseek 的本地部署和本地调用api接口。

能够掌握 deepseek 的本地部署方法,还能学会如何在 c# 项目中集成并调用 deepseek 提供的强大功能。

希望这些内容能够帮助大家在实际项目中顺利应用 deepseek,提升开发效率和项目质量。

最后

以上就是c#集成deepseek模型实现ai私有化的流程步骤(本地部署与api调用教程)的详细内容,更多关于c# deepseek实现ai私有化的资料请关注代码网其它相关文章!

(0)

相关文章:

  • C# winform操作CSV格式文件

    C# winform操作CSV格式文件

    实例一实例效果当在winform界面中点击读取按钮时 将csv中的所有数据读取出来放置在datagridview控件,可以在datagridview控件中编辑数... [阅读全文]
  • C#加锁防止并发的几种方法详解

    前言在最近的工作中,有一个抽奖的需求。涉及到利益发放,这时候就需要加锁,防止权益的重复发放,避免对客户造成经济损失。在实际的工作中我用到的是redis分布式锁,借此机会我学习一下c…

    2025年03月06日 编程语言
  • 最新版Anaconda安装教程

    安装新的anaconda需要卸载干净上一个版本的anaconda,不然可能会在新版本安装过程或者后续使用过程中出错,完全卸载干净anaconda的方法,可以参考这篇文章!第一步:下…

    2025年03月07日 编程语言
  • C#实现软件防破解和防调试的几种有效措施

    C#实现软件防破解和防调试的几种有效措施

    1.代码混淆 (obfuscation)概述代码混淆是通过将源代码中的标识符(如类名、方法名、变量名等)替换为没有意义的字符,来使反编译后的代码难以理解。它可以... [阅读全文]
  • CentOS系统上安装Conda的详细指南

    CentOS系统上安装Conda的详细指南

    前言conda 是一个开源的包管理系统和环境管理系统,广泛应用于数据科学和机器学习领域。本文将详细介绍如何在 centos 系统上安装 conda,帮助您快速搭... [阅读全文]
  • C#实现在Excel中插入和操作切片器

    C#实现在Excel中插入和操作切片器

    切片器(slicer)是excel中的一个强大工具,它提供了直观且交互式的方式来过滤数据。通过切片器,用户可以轻松选择数据范围并快速查看特定数据。切片器通常与透... [阅读全文]

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com