部署本地deepseek并在调用的详细步骤以及解决一些可能出现的问题(Windows,Linux, WSL)

打开Ollama官网:https://ollama.com/

直接下载Ollama并且安装好Ollama、这时候就能看到app里多了个ollama,但是我们不用打开它

在这里插入图片描述
打开Windows Powershell:
ollama run deepseek-r1:1.5b 7b 8b 14b 32b 70b
根据自己的电脑配置和需求更换不同的模型,我安装的32b的模型
然后windows PowerShell 就开始下载了,下载完就是显示Success就表示成功了。接下来就是本地使用deepseek了,想要退出,输入/bye就可以了。
下载成功后,不管什么时候,在windows PowerShell上输入

ollama list

就能够看到你部署在本地的deepseek模型
在这里插入图片描述
复制一下它的名字,我这里是deepseek-r1:32b ,那我就运行

ollama run deepseek-r1:32b

就可以开始使用deepseek了,这一步呢windows和liunx都一样,WSL因为是windows下的linux子系统,所以其实是先部署在Windows上。

那我这里想要使用deepseek来做一些特定的事,比如我使用它固定输出一些东西,用来做一些实验,那在windows系统上,我在windows powershell上部署模型,但是我在conda环境里来做实验,就需要调用本地deepseek模型的api。

首先在Windows Powershell输入

curl http://localhost:11434/api/tags   

这是用来检测API是否可用。

如果返回了StatusCode为 200,并且content里用deepseek模型的名字,则证明deepseek是可用的。
这个时候我们在conda环境下创建代码,conda我使用终端anaconda prompt控制,但是用别的也一样。主要就是写一个控制deepseek输出的代码,加PROMPT来控制就行。
在这里插入图片描述
要它做的事每个人都不一样,但是在前面都要加个

OLLAMA_API_URL = "http://localhost:11434/api/generate"

这样就是调用之前本地部署的deepseek来解决。

然后运行这个代码,如果返回你需要的结果,那就证明api调用成功并且你想要它做的事也达到了。比如我这里要他返回一个行动,那我在anaconda Prompt运行这个代码,确实也返回成功了。
在这里插入图片描述
这里在windows上部署并且成功调用api来做实验就算是可以的,实验内容也就是那个代码的内容大家都不一样,但是总体来说这个流程是通了.

但是有些实验它不能在windows系统上做啊,只能Linux,就比如我之前做过一个alfworld实验,在windows上死活运行不了,但是在Linux上就能运行。

这个时候在Linux上部署deepseek再调用就行了,应该也是比较简单的,基本也就是上面差不多的流程。

但是比如我现在是windows部署deepseek了,我在windows的linux子系统WSL上运行alfworld,那我想调用deepseek来帮助alfworld项目怎么办呢。这个时候就需要在wsl上来调用本地deepseek api了。

Deepseek API 默认运行在http://localhost:11434

但是在 WSL 里访问 localhost 默认指向 WSL 自己,而不是 Windows。你需要改成 Windows 的 IP 地址
在WSL的Linux环境里运行

 cat /etc/resolv.conf | grep nameserver

这时候会返回一个ip地址,这个地址就是windows的ip地址

然后再在WSL中输入

curl http://更换为你的ip地址:11434/api/tags

这时候如果返回有deepseek模型例如这样
在这里插入图片描述
那就说明在WSL中的linux系统中调用Deepseek api成功

但是返回没有deepseek模型名称,WSL 里 curl 访问 Deepseek 失败,可能是 Windows 防火墙阻止了 WSL 访问
那就要打开Windows Powershell管理员模式来使 Windows 防火墙允许 WSL 访问 11434 端口
注意是以管理员身份运行,找到Windows Powershell右键选择以管理员身份运行就行。
在Windows Powershell管理员身份运行。

New-NetFirewallRule -DisplayName "Allow WSL to access Ollama" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 11434

这时候就添加了一个防火墙规则,确保WSL能够运行API
这时候运行

Get-NetFirewallRule -DisplayName "Allow WSL to access Ollama

如果看到返回的信息里有规则,那就可以了

这个时候再在WSL中运行

curl [http://更换为你的ip地址:1143](http://172.28.80.1:1143/)4/api/ta

如果向上面说的一样就成功了,如果还是没有成功,WSL 仍然无法连接 Windows 上的 Deepseek API,有可能Windows 可能只监听 本地请求(127.0.0.1),但不接受 外部(WSL)请求

在 Windows PowerShell(管理员模式)运行

netstat -ano | findstr :11434

因为WSL 访问 Windows 需要监听 0.0.0.0172.28.80.1 才行。所以需要有

TCP    0.0.0.0:11434    0.0.0.0:0    LISTENING    20260

这样的返回才可以。

如果返回里没有,在Windows PowerShell(管理员模式)运行

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=11434 connectaddress=127.0.0.1 connectport=11434

这时候再运行

netstat -ano | findstr :11434

就能够看到有了
在这里插入图片描述
这时再去WSL运行

curl http://172.28.80.1:11434/api/tags

如果像之前说的返回模型名称信息,就说明可以WSL 现在可以访问 Windows 上的 Deepseek API 了,也就可以继续在WSL上继续下一步实验了。

总的来说,在Windows上或者Linux上部署类似deepseek或者是llama这种开源大语言模型还是比较简单的,但是在Windows的Linux子系统WSL上部署的话呢就有时候会多少出现点情况,这些情况大多数时候就是端口出现问题了,或者是权限问题,如果遇到问题可以往那边去考虑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/80474.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【KWDB 创作者计划】_嵌入式硬件篇---寄存器与存储器截断与溢出

文章目录 前言一、寄存器与存储器1. 定义与基本概念寄存器(Register)位置功能特点存储器(Memory)位置功能特点2. 关键区别3. 层级关系与协作存储层次结构协作示例4. 为什么需要寄存器性能优化指令支持减少总线竞争5. 其他寄存器类型专用寄存器程序计数器(PC)栈指针(SP)…

小白自学python第二天

学习python的第二天 一、判断语句 1、布尔类型和比较运算符 1、布尔类型 表示现实生活中的逻辑,真(True,用数字1表示)和假(False,用数字0表示) 2、布尔类型变量的定义 变量的名称 布尔类…

linux基础操作1------(文件命令)

一.前言 我们本章开始讲解linux,我们对于linux得有重要的认识,比如项目部署等等,都会用到linux,今天我们就开始linux的学习,我们需要准备的工具有vmware和xshell,而这里我就不教大家虚拟机的安装以及xshel…

编码问题整合

一、windows系统编码 查看编码命令:chcp - 936 GBK - 65001 UTF-8 - 437 英文修改系统编码 1、控制面板修改 需管理员权限-Windows 10/11进入 控制面板 > 区域 > 管理 > 更改系统区域设置勾选 Beta版: 使用Unicode UTF-8提供全球语言支持 → 重启生效修…

如何配置Spark

1.上传spark安装包到某一台机器(自己在finaShell上的机器)。 2.解压。 把第一步上传的安装包解压到/opt/module下(也可以自己决定解压到哪里)。对应的命令是:tar -zxvf 安装包 -C /opt/module 3.重命名。进入/opt/mo…

Redis 完整配置模板

一、基础连接配置(单机模式) 基础参数(适用Spring Boot) spring:redis:host: 127.0.0.1port: 6379password: your_passworddatabase: 0 # 默认DB索引timeout: 2000ms # 全局操作超时时间二、连接池参数(通用核心配…

边界凸台建模与实例

文章目录 边界凸台特征耳机案例瓶子 边界凸台特征 两侧对称拉伸最上面的圆柱 同过两点一基准面画草图,在基准面上画椭圆 隐藏无关的实体和草图,以便椭圆的端点能与线给穿透约束,下面的点与下面的线也给穿透,短轴长给35&#xff08…

河北省大数据应用创新大赛样题

** 河北省大数据应用创新大赛样题 ** 1. 在Linux下安装Java并搭建完全分布式Hadoop集群。在Linux终端执行命令“initnetwork”,或双击桌面上名称为“初始化网络”的图标,初始化实训平台网络。 【数据获取】 使用wget命令获取JDK安装包: “w…

【数据可视化-21】水质安全数据可视化:探索化学物质与水质安全的关联

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

DC-2寻找Flag1、2、3、4、5,wpscan爆破、git提权

一、信息收集 1、主机探测 arp-scan -l 探测同网段2、端口扫描 nmap -sS -sV 192.168.66.136 80/tcp open http Apache httpd 2.4.10 ((Debian)) 7744/tcp open ssh OpenSSH 6.7p1 Debian 5deb8u7 (protocol 2.0)这里是扫描出来两个端口,80和ssh&…

SQLMesh 表格对比指南:深入理解 table_diff 工具的实际应用

在数据集成和转换过程中,确保数据模型的一致性和准确性至关重要。SQLMesh 提供了一个强大的 table_diff 工具,可以帮助用户比较 SQLMesh 模型或数据库表/视图的架构和数据。本文将通过具体示例详细说明如何使用 table_diff 工具进行跨环境比较和直接比较…

重构智能场景:艾博连携手智谱,共拓智能座舱AI应用新范式

2025年4月24日,智能座舱领域创新企业艾博连科技与国产大模型独角兽智谱,在上海国际车展艾博连会客厅签署合作协议。双方宣布将深度整合智谱在AI大模型领域的技术积淀与艾博连在汽车智能座舱场景的落地经验,共同推进下一代"有温度、懂需求…

vscode flutter 插件, vscode运行安卓项目,.gradle 路径配置

Flutter Flutter Widget Snippets Awesome Flutter Snippets i dart-import Dart Data Class Generator Json to Dart Model Dart Getters And Setter GetX Snippets GetX Generator GetX Generator for Flutter flutter-img-syncvscode运行安卓项目,.gradle 路径配…

Parasoft C++Test软件单元测试_对函数打桩的详细介绍

系列文章目录 Parasoft C++Test软件静态分析:操作指南(编码规范、质量度量)、常见问题及处理 Parasoft C++Test软件单元测试:操作指南、实例讲解、常见问题及处理 Parasoft C++Test软件集成测试:操作指南、实例讲解、常见问题及处理 进阶扩展:自动生成静态分析文档、自动…

c# TI BQFS文件格式详解及C#转换

FlashStream文件格式详解及C#转换 一、FlashStream文件格式详细解读 文件概述 FlashStream文件是TI用于配置电池电量计的文本文件格式,主要特点: • 纯文本格式,使用ASCII字符• 每行一条指令 • 分号(;)开头的行为注释 • 主要包含三种指令类型:写命令、比较命令和延时…

k8s中pod报错 FailedCreatePodSandBox

问题现象: 创建容器时出现一下情况 而且删掉控制器的时候pod还会卡住 解决: 将calico的pod重新删掉。其中有1个控制器pod以及3个node pod 删掉后,大概10来秒就重新创建完成了。 然后现在在使用kubectl apply -f 文件.yaml 就可以正常创…

分布式事务 两阶段提交协议(2PC的原理、挑战)

引言:分布式事务的挑战 在分布式系统中,数据和服务往往分布在多个节点上。例如,一个电商下单操作可能涉及订单服务、库存服务和支付服务,这三个服务需要协同完成一个事务:要么全部成功,要么全部失败。这种…

Jenkins Pipeline 构建 CI/CD 流程

文章目录 jenkins 安装jenkins 配置jenkins 快速上手在 jenkins 中创建一个新的 Pipeline 作业配置Pipeline运行 Pipeline 作业 Pipeline概述Declarative PipelineScripted Pipeline jenkins 安装 安装环境: Linux CentOS 10:Linux CentOS9安装配置Jav…

【CF】Day43——Codeforces Round 906 (Div. 2) E1

E1. Doremys Drying Plan (Easy Version) 题目: 思路: very好题,加深对扫描线的应用,值得深思 由于k 2,那我们就可以使用简单一点的方法来写 题目可以转化为:给定n个线段,现在让你删去2条线段…

电子设备的“记忆大脑”:NAND、NOR、EEPROM谁在掌控你的数据?

大家好,我是硅言。存储芯片是电子设备的“记忆大脑”,未进入存储行业工作之前,一听到NAND、NOR、EEPROM这些专业名词就头大。本文用通俗的语言,带大家了解这三种常见存储芯片的核心区别和应用场景。 一、存储芯片的“门派”&#…