给应用加个大语言模型,通常意味着重复造轮子:为每个工具写JSON schema、调度工具调用、驱动智能体循环、接入向量数据库、管理嵌入请求、处理会话状态。等你忙完这些 plumbing,真正的业务功能还没开始写。
Daimon 是个用 Go 写的 sidecar,思路完全不同。把二进制文件丢到应用旁边,写一个 YAML 配置,你就得到一个完整可用的 LLM 端点——向量搜索、图查询、会话记忆、完整的智能体循环——全部自动连好,不用自己写任何胶水代码。
![]()
核心设计:当你在配置里声明一个向量库或图数据库,Daimon 会自动生成对应的 LLM 工具({name}_search、{name}_cypher 等),并注入到每次 LLM 调用中。模型立刻就能用。你命名了组件,就得到了工具。
为了展示端到端的效果,我们来搭建一个医疗病历 ICD-10 编码流水线。输入一份医疗转录文本,系统会:
• 用语义搜索在 4.6 万条 ICD-10 编码向量库中找出候选
• 用 Neo4j 分类图谱验证每个候选
• 只返回经图谱确认的编码,置信度基于图谱而非模型
整个 LLM + 工具的配置塞进一个 YAML 文件。Python 客户端大概 60 行。开始动手。
你需要准备:Docker、Python 3.11+、Anthropic API key(或完全本地模型,文末会讲)、Daimon 二进制文件。
第一步,克隆仓库。git clone https://github.com/sonicboom15/medchart,然后 cd medchart。仓库里什么都有:Daimon 配置、ICD-10 加载器、编码流水线。目录结构如下:
daimon-config/config.yaml —— 整个 LLM + 工具配置
docker-compose.yml —— Neo4j、Qdrant、Ollama
icd10/loader.py —— CMS XML 解析器 → Qdrant + Neo4j
pipeline/coder.py —— Daimon 客户端 → CodeAssignment[]
pipeline/ingest.py —— MTSamples CSV 批处理器
第二步,安装 Daimon。根据你的平台选择方式:
macOS / Linux 用 Homebrew:brew tap sonicboom15/tap,然后 brew install daimon。
Windows 用 winget:winget install sonicboom15.daimon。
Windows 用 Scoop:先 scoop bucket add sonicboom15 https://github.com/sonicboom15/scoop-bucket,再 scoop install daimon。
Debian / Ubuntu:从 GitHub releases 下载 .deb,sudo dpkg -i daimon_*_linux_amd64.deb。
RHEL / Fedora:从 GitHub releases 下载 .rpm,sudo rpm -i daimon_*_linux_amd64.rpm。
或者从源码构建(需要 Go 1.23+):git clone https://github.com/sonicboom15/daimon.git,cd daimon && make build,二进制在 ./bin/daimon。
装完验证:daimon --version。
第三步,启动基础设施。docker compose up -d。这会启动三个服务:
• Qdrant 在 6333 端口 —— ICD-10 编码嵌入的向量库
• Neo4j 在 7474(浏览器)和 7687(Bolt)端口 —— 分类图谱
• Ollama 在 11434 端口 —— 本地嵌入模型
如果没有 NVIDIA GPU,把 docker-compose.yml 里的 deploy: GPU 块删掉。然后拉取嵌入模型。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.