思源笔记轻松连接本地Ollama大语言模型,开启AI写作新体验!

news2024/11/28 5:53:05

文章目录

    • 前言
    • 1. 下载运行Ollama框架
    • 2. Ollama下载大语言模型
    • 3. 思源笔记设置连接Ollama
    • 4. 测试笔记智能辅助写作
    • 5. 安装Cpolar工具
    • 6. 配置Ollama公网地址
    • 7. 笔记设置远程连接Ollama
    • 8. 固定Ollama公网地址

前言

今天我们要聊聊如何通过cpolar内网穿透技术,把国产笔记软件思源和本地的大语言模型Ollama连接起来,轻松实现远程辅助写作。希望这篇文章能给你带来一些实用的启发,帮助你更高效地利用技术提升写作质量!

现在,越来越多的小伙伴在工作和学习中都开始用笔记软件来管理知识和创作。而在这些软件中,思源笔记凭借其强大的编辑功能、灵活的整理方式和丰富的插件支持,成为了大家的心头好。

不过,写作的时候,灵感和创意的激发往往需要大语言模型的助力。大语言模型可以根据海量文本数据生成高质量的内容,为你提供有价值的参考和启发。但传统的在线大语言模型服务可能会面临数据隐私泄露、网络延迟等问题,让一些用户却步。

那么,解决这个问题的办法是什么呢?我们可以考虑将国产软件思源与本地部署的大语言模型Ollama进行对接。Ollama是一款高性能的大语言模型,能够为你提供准确、快速的文本生成服务。但如何实现远程访问和对接,确实是个挑战。

别担心,cpolar内网穿透技术来救场了!cpolar是一种基于反向代理的内网穿透工具,可以将本地计算机的服务暴露到公网上,让外部网络轻松访问。通过cpolar,我们就能把本地部署的Ollama大语言模型服务暴露给远程的思源笔记软件,实现远程对接,助力你的写作之旅!准备好了吗?让我们一起开启这段AI辅助写作的新旅程吧!

1. 下载运行Ollama框架

进入Ollama Github 界面:https://github.com/ollama/ollama?tab=readme-ov-file ,我们选择Windows版本下载

image-20240425174856953

下载后,双击进行安装,默认会安装到C盘,然后等待安装完成,安装完成后正常会自动运行,如果没有运行,可以去应用列表双击运行即可

image-20240425161045182

然后打开命令窗口,输入:ollama -v,可以看到版本信息

image-20240425161026879

同样,在浏览器输入http://127.0.0.1:11434/访问ollama服务,即可看到,运行的字样,表示本地运行成功了,下面进行安装大语言模型.

image-20240425163201117

2. Ollama下载大语言模型

ollama安装完成后,下面进行下载运行大语言模型,本例采用qwen模型,qwen这个模型运行开销比较小,对配置低的设备响应会快一些,如果自己设备配置高,可以下载llama3那些运行也是可以,其他模型,可以到github上面选择,下面我们打开命令窗口输入下面命令进行下载qwen模型

ollama pull qwen

然后等待安装完成即可,出现success 表示下载完成了,然后按ctrl+d 退出,

image-20240529145344954

然后再输入ollama list 即可看到下载的大语言模型列表,本例下载了两个,所以显示两个,下面我们进行本地测试

image-20240529145433880

3. 思源笔记设置连接Ollama

打开思源笔记,如果没有下载思源笔记,可以先去网上进行下载安装好,打开笔记后,点击左上角打开设置,点击AI,开始设置,首先设置超时时间,这个时间是模型响应时间,可以设置久一些,下面设置600秒,然后下面模型名称,填写qwen,然后继续往下设置

image-20240529151427222

然后填写API Key,这个可以任意设置一个即可,下面设置ollama服务的地址,本地测试,我们只需要填写本地地址:http://127.0.0.1:11434/v1,即可,下面进行笔记智能补全测试

image-20240529151648211

4. 测试笔记智能辅助写作

返回笔记,我们打开一个页面,随便输入一些内容,右键点击选择人工智能

image-20240529152608208

这里选择续写,下面有其他选项,可以自己选择,续写相当于辅助写作

image-20240529160938236

然后稍等一下,我们可以看到,后面大语言模型为我们后面自动生成了一段话,测试就完成了,但是为了能实现异地或者当我们和Ollama不处于一个局域网时也可以进行使用这个人工智能,所以我们需要安装cpolar内网工具,穿透本地Ollama大语言模型服务,使得远程也可以调用,下面我们安装cpolar

image-20240529161111577

5. 安装Cpolar工具

本例介绍的是windows系统,所以cpolar安装在windows上,点击下面地址访问cpolar官网,注册一个账号,然后下载并安装客户端.

Cpolar官网:https://www.cpolar.com/

  • windows系统:在官网下载安装包后,双击安装包一路默认安装即可。

cpolar安装成功后,在浏览器上访问本地9200端口【http://localhost:9200】,使用cpolar账号登录,即可看到Cpolar 管理界面,然后一切设置只需要在管理界面完成即可!

20230130105810

6. 配置Ollama公网地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个ollama的公网http地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:11434
  • 域名类型:免费选择随机域名
  • 地区:选择China
  • Host头域: 127.0.0.1:11434

点击创建(点击一次创建按钮即可,不要重复点击!)

image-20240425164541494

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,两种都可以访问,下面选择其中一种进行远程访问,下面我们替换掉笔记中的本地地址,改为公网地址.

image-20240529164136227

7. 笔记设置远程连接Ollama

再次打开思源笔记AI设置界面,把之前的本地地址改为cpolar的公网地址,注意后面的V2不要漏掉,然后返回笔记,我们再测试一下

image-20240529165018808

写一段话,然后右键打开人工智能

image-20240529171631829

让AI帮我们续写

image-20240529171705879

可以看到,同样可以进行AI智能续写我们的笔记,这样远程设置就完成了,即使不在本地Ollama的服务,笔记也可以远程去调用它,帮我们完成AI写作

image-20240529170227923

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定二级子域名,原因是我希望将网址发送给同事或客户时,它是一个固定、易记的公网地址(例如:ollama.cpolar.cn),这样更显正式,便于流交协作。

8. 固定Ollama公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20240425170206232

保留成功后复制保留成功的二级子域名的名称

image-20240425170229252

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20240529170459239

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20240425170340455

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址二级名称变成了我们自己设置的二级子域名名称

image-20240425170405890

然后打开思源笔记,把之前的随机地址改为固定的地址,然后返回笔记,再次测试

image-20240529170644375

自己定义一个开头,然后点击打开人工智能

image-20240529171326743

让AI帮我续写后面的内容

image-20240529171425251

可以看到,也是成功可以实现AI辅助为我们写了一段话,这样固定地址就设置好了,任意地点也可以使用该地址配置到思源笔记里面,实现AI功能!

image-20240529171002972

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

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

相关文章

前端学习Day12 CSS盒子的定位(相对定位篇“附练习”)

一、相对定位 使用相对定位的盒子会相对于自身原本的位置,通过偏移指定的距离,到达新的位置。盒子的本体仍处于文档流中。使用相对定位,除了要将 position 属性值设置为 relative 外,还需要指定一定的偏移量。其中,水…

AJ-Report:一款开源且非常强大的数据可视化大屏和报表工具

嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和工作学习方法 AJ-Report是一个基于Java的开源报表工具,它集成了ECharts、Ant Design Vue等前端技术,致力于为企业提供一站式的数据可视化解决方案…

【深度学习】InstantIR:图片高清化修复

InstantIR——借助即时生成参考的盲图像修复新方法 作者:Jen-Yuan Huang 等 近年来,随着深度学习和计算机视觉技术的飞速发展,图像修复技术取得了令人瞩目的进步。然而,对于未知或复杂退化的图像进行修复,仍然是一个充满挑战的任务。针对这一难题,研究者们提出了 Insta…

MySQL utf8mb3 和 utf8mb4引发的问题

问题描述 Cause: java.sql.SQLException: Incorrect string value: \xF4\x8F\xBB\xBF-b... for column sddd_aaa_ark at row 1 sddd_aaa_ark 存储中文字符时,出现上述问题 原因分析 sddd_aaa_ark在数据库中结构是 utf8字符的最大字节数是3 byte,但是某些…

日语学习的难易程度

日语学习的难易程度是一个相对主观的问题,它受到多种因素的影响,包括个人的语言学习能力、学习方法、学习时间、学习资源的可获得性以及个人对日语文化的兴趣和投入程度等。以下是对日语学习难易程度的一些分析: 优点与易学之处 文字系统&am…

Win10 连接到 Ubuntu 黑屏无法连接 使用Rustdesk显示 No Displays 没有显示器

Win10 连接到 Ubuntu 黑屏无法连接 使用Rustdesk显示 No Displays 没有显示器 解决办法安装虚拟显示器 安装xorg虚拟显示器 $ sudo apt install xserver-xorg-video-dummy # 提示错误依赖使用下面这个试试 $ sudo apt-get install xserver-xorg-video-dummy --fix-missing配…

Ubuntu安装Python并配置pip阿里镜像教程 - 幽络源

背景 因为要部署yolov8项目到ubuntu系统,但是yolov8要求python版本必须大于3.10,因此ubuntu20.04自带的python3.8不可用,需自行安装python,本教程使用python源码编译式安装python3.12.3,原因是apt下载python无法指定目…

uniapp组件实现省市区三级联动选择

1.导入插件 先将uni-data-picker组件导入我们的HBuilder项目中&#xff0c;在DCloud插件市场搜索uni-data-picker 点击下载插件并导入到我们的项目中 2.组件调用 curLocation &#xff1a;获取到的当前位置&#xff08;省市区&#xff09; <uni-data-picker v-slot:defa…

力扣:94--中序遍历二叉树

树 – 二叉树 完全二叉树&#xff1a; 完全二叉树可以用数组完美匹配位置&#xff08;先序存储&#xff1a;根左右&#xff09;&#xff0c; 推论一 &#xff1a; 位置为k的节点&#xff0c;左孩子&#xff1a;2*k 1 &#xff0c;右孩子 &#xff1a; 2 * &#xff08;k 1&…

「C/C++」C/C++STL篇 之 数组赋值给std::vector多种方法

✨博客主页何曾参静谧的博客&#x1f4cc;文章专栏「C/C」C/C程序设计&#x1f4da;全部专栏「VS」Visual Studio「C/C」C/C程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasoli…

关于 Qt+Osg中使用背景图HUD受到后绘制几何图形顶点颜色影响 的解决方法

若该文为原创文章&#xff0c;转载请注明出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/143607816 长沙红胖子Qt&#xff08;长沙创微智科&#xff09;博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV、Op…

使用python向钉钉群聊发送消息

使用python向钉钉群聊发送消息 一、在钉钉群中新建机器人二、使用代码发送消息 一、在钉钉群中新建机器人 在群设置中添加机器人 选择自定义 勾选对应的安全设置 完成后会展示webhook&#xff0c;将地址复制出来&#xff0c;并记录&#xff0c;后面会用到 二、使用代码发送消…

第100+31步 ChatGPT学习:概率校准 Quantile Calibration

基于Python 3.9版本演示 一、写在前面 最近看了一篇在Lancet子刊《eClinicalMedicine》上发表的机器学习分类的文章&#xff1a;《Development of a novel dementia risk prediction model in the general population: A large, longitudinal, population-based machine-learn…

这款神器,运维绝杀 !!!

项目简介 CrowdSec 是一款开源的、基于社区协作的网络安全防护工具&#xff0c;它通过分析和共享IP信誉数据来对抗恶意行为。该软件不仅支持IPv6&#xff0c;而且相较于传统的Python实现&#xff0c;其采用Go语言编写&#xff0c;运行速度提升了60倍。CrowdSec 利用Grok模式解析…

Unreal5从入门到精通之如何在指定的显示器上运行UE程序

前言 我们有一个设备,是一个带双显示器的机柜,主显示器是一个小竖屏,可以触屏操作,大显示器是一个普通的横屏显示器。我们用这个机柜的原因就是可以摆脱鼠标和键盘,直接使用触屏操作,又可以在大屏观看,非常适合用于教学。 然后我们为这款机柜做了很多个VR项目,包括Uni…

R7:糖尿病预测模型优化探索

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 一、实验目的&#xff1a; 探索本案例是否还有进一步优化的空间 二、实验环境&#xff1a; 语言环境&#xff1a;python 3.8编译器&#xff1a;Jupyter notebo…

Django 框架:全方位技术分析

Django 框架:全方位技术分析 介绍 Django 是一个高级 Python Web 框架,鼓励快速开发和遵循设计的最佳实践。由经验丰富的开发人员打造,开源并可扩展,Django 旨在让构建 Web 应用更快、更轻松。 历史背景 Django 始于 2003 年,最初是 Lawrence Journal-World 报社的一个内…

如何用 ChatPaper.ai 打造完美的 AI 课堂笔记系统

作为学生&#xff0c;我们都遇到过这样的困扰&#xff1a;上课时记笔记太投入就听不进讲解&#xff0c;专注听讲又担心错过重要知识点。有了AI助手&#xff0c;这个问题就可以优雅地解决了。今天跟大家分享如何用ChatPaper.ai构建个人的智能课堂笔记系统。 为什么需要AI辅助记笔…

《手写Spring渐进式源码实践》实践笔记(第十六章 三级缓存解决循环依赖)

文章目录 第十六章 通过三级缓存解决循环依赖背景技术背景Spring循环依赖循环依赖类型三级缓存解决循环依赖 业务背景 目标设计一级缓存实现方案设计思路代码实现测试结果 三级缓存实现方案 实现代码结构类图实现步骤 测试事先准备属性配置文件测试用例测试结果&#xff1a; 总…

Java8新特性/java

1.lambda表达式 区别于js的箭头函数&#xff0c;python、cpp的lambda表达式&#xff0c;java8的lambda是一个匿名函数&#xff0c;java8运行把函数作为参数传递进方法中。 语法格式 (parameters) -> expression 或 (parameters...) ->{ statements; }实战 替代匿名内部类…