思源接入本地 ollama 部署的 qwen3-embedding

发布时间:2026/9/22 20:17:18

思源接入本地 ollama 部署的 qwen3-embedding
前言思源3.7后官网已经接入Agent和语义搜索功能语义搜索需要agent embedding实现方式有两种调用商用的agent api比如qwen-embedding3等模型自己搭建。我这里选择的方式是第二种通过ollama部署qwen3-embedding环境Win10ollama0.31.2pythonfastAPI。安装ollam官网链接ollama下载完后在cmd输入ollama server启动服务。再另外打开一个cmd输入下面的命令下载所需要的版本。看自己的显卡显存来# 下载最新版8Bollama pull qwen3-embedding# 系在4B也可以是0.6Bollama pull qwen3-embedding:4b下载qwen3-embedding下载完成后确保ollama已经启动。python脚本由于我的ollama版本是0.31.2已经不支持open api格式需要使用python脚本进行一层转换。创建ollama_openai_proxy.py脚本fromfastapiimportFastAPI,HTTPExceptionfrompydanticimportBaseModelimporthttpximportasyncio appFastAPI()classEmbeddingRequest(BaseModel):input:list[str]|strmodel:strdimensions:int0app.post(/v1/embeddings)asyncdefembeddings(req:EmbeddingRequest):Convert OpenAI embedding API to Ollama API# 标准化输入ifisinstance(req.input,str):texts[req.input]else:textsreq.input# 调用 Ollama APIasyncwithhttpx.AsyncClient()asclient:try:responseawaitclient.post(http://localhost:11434/api/embed,json{model:req.model,input:texts},timeout30.0)response.raise_for_status()ollama_respresponse.json()exceptExceptionase:raiseHTTPException(status_code500,detailstr(e))# 转换为 OpenAI 格式embeddingsollama_resp.get(embeddings,[])return{object:list,model:req.model,data:[{object:embedding,index:i,embedding:emb}fori,embinenumerate(embeddings)]}app.get(/v1/models)asyncdeflist_models():Proxy models endpointasyncwithhttpx.AsyncClient()asclient:responseawaitclient.get(http://localhost:11434/api/tags)response.raise_for_status()ollama_respresponse.json()models[]formodelinollama_resp.get(models,[]):models.append({id:model[name],object:model,created:0,owned_by:ollama})return{object:list,data:models}if__name____main__:importuvicorn uvicorn.run(app,host127.0.0.1,port8000)在脚本的当前路径打开cmd安装fastAPIpip install fastapi uvicon httpx执行该脚本python ollama_openai_proxy.py。思源配置API基础地址http://127.0.0.1:8000/v1模型名称看自己部署的模型qwen3-embedding维度8B最大维度是4096,4B是2560,0.6b是1024。我这里是2560。api keyollama能随便输入但不能为空因为siyuan需要。维度为0也可能导致下方的嵌入索引进度无反应最好手动输入。向量化所耗费的时间很长尤其是笔记和维度越大其时间长。

相关新闻

电容失效分析

电容失效分析

2026/8/23 0:28:29

陶瓷电容失效分析:多层片状陶介电容器由陶瓷介质、端电极、金属电极三种材料构成,失效形式为金属电极和陶介之间层错,电气表现为受外力(如轻轻弯曲板子或用烙铁头碰一下)和温度冲击(如烙铁焊接)…

AI龙虾智能体排名

AI龙虾智能体排名

2026/8/23 0:28:29

当大家都在讨论AI工具如何改变外贸和企业办公时,一个现实问题摆在了面前:市面上的AI产品琳琅满目,真正能用得顺手、数据安全、成本可控的又有几个?最近,很多外贸老板和企业负责人都在关注一个话题——龙虾智能体的本地…

深入理解Linux多线程互斥锁:从临界区到底层原子指令的完整闭环

深入理解Linux多线程互斥锁:从临界区到底层原子指令的完整闭环

2026/8/23 0:28:29

一、为什么需要互斥锁:多线程数据竞争的本质在多线程编程中,线程之间共享进程的地址空间,这意味着全局变量、堆内存等资源对所有线程都是可见的。这种共享机制带来了便利,但也埋下了一个致命的隐患 ——数据竞争。想象一个经典的抢…

CANN/GE ACL数据集缓冲区添加函数

CANN/GE ACL数据集缓冲区添加函数

2026/9/21 18:38:46

aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

用ffmpeg高效批量调整图片尺寸的实战指南

用ffmpeg高效批量调整图片尺寸的实战指南

2026/9/21 18:41:09

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

2026/9/21 18:36:40

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu…

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

2026/9/21 18:37:26

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup…

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

2026/9/21 18:40:29

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

2026/9/21 18:36:17

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…

远程协作的工作台整理

远程协作的工作台整理

2026/9/22 0:19:28

远程协作的工作台整理远程协作的核心不是再加一个工具,而是让交接信息足够完整。异步任务要写明目标、输入位置、完成标准和需要决策的人。 工作台的最小配置 将日程、待办、代码和沟通入口收拢到少数固定位置;通知按紧急程度分层。工作台不需要模仿办公…

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

2026/9/21 23:38:13

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

2026/9/22 0:48:53

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…