本文来自社区投稿,作者Miley Fu,WasmEdge Runtime 创始成员。
本文将介绍如何通过 WasmEdge 将书生·浦语(InternLM)大模型部署在本地,并与 Obsidian 笔记软件集成,从而在笔记软件中直接利用大模型实现文本总结、续写等功能,提升笔记的智能化处理能力,让使用者更高效地管理和利用知识。
1.相关介绍
InternLM 介绍
由上海人工智能实验室发布的书生·浦语(InternLM)系列大语言模型,作为该系列的最新版本,书生·浦语3.0 (InternLM3)通过精炼数据框架,大幅提升了数据效率,并实现思维密度的跃升。仅使用 4T 训练数据的 InternLM3-8B-Instruct,其综合性能超过了同量级开源模型,节约训练成本 75% 以上;同时,书生·浦语3.0 首次在通用模型中实现了常规对话与深度思考能力融合,可应对更多真实使用场景。
体验页面:
https://chat.intern-ai.org.cn
GitHub 链接:
https://github.com/InternLM/InternLM
HuggingFace 链接:
https://huggingface.co/collections/internlm/internlm3-67875827c377690c01a9131d
WasmEdge 介绍
一个开源的 WebAssembly 运行时/容器,支持多种语言编写的 AI 应用跨平台运行,包括跨 CPU、GPU 和操作系统。支持各大开源大模型,包括多模态模型;支持多种底层架构/硬件。
GitHub 链接:
https://github.com/WasmEdge/WasmEdge
Gaia 介绍
基于 WasmEdge 的一套软件,允许一键在本地设备或云端运行大模型节点,生成兼容 OpenAI API 的 URL,支持自定义知识库。
GitHub 链接:
https://github.com/GaiaNet-AI/gaianet-node/blob/main/README.md
2.准备工作
安装环境
- 下载并安装 Gaia https://docs.gaianet.ai/node-guide/quick-start/
- 从 Hugging Face 下载 InternLM 模型 https://huggingface.co/second-state/internlm2_5-7b-chat-GGUF/resolve/main/internlm2_5-7b-chat-Q5_K_M.gguf
- 下载并安装 Obsidian 笔记软件 https://obsidian.md/download
硬件配置
- 推荐配置: Mac 16GB 内存、英伟达 GPU、华为昇腾 NPU 等。 最低配置: 16GB 内存的机器。
3.使用 Gaia 部署 InternLM
安装 Gaia 节点
运行以下命令行安装 Gaia 节点:
curl -sSfL 'https://github.com/GaiaNet-AI/gaianet-node/releases/latest/download/install.sh' | bash
这个命令行会下载向量数据库、 LlamaEdge API server 和默认的大模型
初始化 Gaia 节点
初始化节点:gaianet init
启动节点:gaianet start
启动后,将生成一个公开的 OpenAI 兼容的 API URL。 https://0x8d2643381194979502cb2b542c7bd8bb5418408C.us.gaianet.network
测试 API
使用 curl
命令测试 API 是否正常运行:
curl -X POST https://0x8d2643381194979502cb2b542c7bd8bb5418408c.us.gaianet.network/v1/models
确认返回的模型信息是否正确:
{“object”:“list”,“data”:[{“id”:“Llama-3.2-3B-Instruct”,“created”:1716383261,“object”:“model”,“owned_by”:“Not specified”},{“id”:“nomic-embed-text-v1.5.f16”,“created”:1716383261,“object”:“model”,“owned_by”:“Not specified”}]}
把默认模型替换为 InternLM 大模型
A 打开并修改 config.json
文件,将默认模型替换为 InternLM: vi gaianet/config.json
config.json 文件中默认文件要修改三个地方:
- 大模型下载链接:
https://huggingface.co/second-state/internlm2_5-7b-chat-GGUF/resolve/main/internlm2_5-7b-chat-Q5_K_M.gguf
chat_name: "internlm"
prompt_template: "chatml"
B. 停止当前运行的默认模型:gaianet stop
C. 下载 InternLM 模型:gaianet init
D. 重新启动节点:gaianet start
E. 确认 InternLM 模型已成功在本地运行了,得到了与 OpenAI API 兼容的 URL👇 https://0x8d2643381194979502cb2b542c7bd8bb5418408c.us.gaianet.network
4.配置 Obsidian 并集成 InternLM
原始文档请查看 docs.gaianet.ai/user-guide/apps/obsidian/
安装 Obsidian Local GPT 插件
打开 Obsidian,进入设置 → 社区插件。
搜索并安装 Obsidian Local GPT
插件。
安装完成后,启用插件:Enable
配置 Local GPT 插件
在插件设置中,选择 OpenAI compatible
作为 API provider。
- 在
OpenAI compatible server URL
中输入第三步最后生成的 API URL。 - 在
API key
中输入LlamaEdge
。 - 刷新模型列表,选择
InternLM
作为默认模型。
使用快捷键调用 InternLM
- 默认快捷键为
Command + M
。 - 选中一段文本,按下
Command + M
,选择“Summarize”功能。 - InternLM 将自动被调用,从而生成文本总结。还可以选择其他选项,如续写文本或者纠正语法错误。
总结
本文主要介绍了如何通过 WasmEdge 将 InternLM 部署在本地,并与 Obsidian 笔记软件集成,从而在笔记软件中直接利用大模型实现文本总结、续写等功能,提升笔记的智能化处理能力,让使用者更高效地管理和利用知识。大家还可以根据需求,将 InternLM 集成到其他 AI 应用中。
参考文档
https://wasmedge.org/docs/ https://docs.gaianet.ai/node-guide/quick-start/