跳转至

CG_RAG 文档

在线版本:https://cg-rag-docs.yjx.me/

CG_RAG 是一个施工法规问答服务。 你给它一个问题或一张工地照片,它返回可核验的法规条文。

「检索哪些法规、怎么排序、让模型从中选哪几条」这些事全部封装在服务端,你只需要发一个 HTTP 请求。模型 API key、上游地址、索引路径都留在服务端,调用方拿不到,也不需要知道。

curl -sS -X POST http://127.0.0.1:8864/cg-rag/rag \
  -H 'Content-Type: application/json' \
  -d '{"query":"脚手架搭设完毕后,验收应当由谁组织?","scope":"usual","topk":5}'
{
  "generation": {
    "ok": true,
    "answer_text": "我根据在线检索与候选筛选结果,整理出以下最相关条文:\n1. 《建筑施工竹脚手架安全技术规范》(JGJ254-2011)第7.2.3条:竹脚手架应由单位工程负责人组织技术、安全人员进行检查验收。",
    "pred_indices": [3]
  }
}

我该用哪个接口?

先想清楚要什么,再对号入座。

你想要 用这个 是否调用大模型
一批相关条文,自己拿去处理 POST /cg-rag/retrieve-rerank 否,纯检索
直接要答案(检索 + 选条文) POST /cg-rag/rag
同上,但要边出结果边显示 POST /cg-rag/rag/stream 是,SSE
已有候选条文,只要模型挑 POST /cg-rag/constrained-generate
分析工地照片,快速看有什么隐患 POST /cg-rag/vision/answer 是,不检索
分析工地照片,并要求给出法规依据 POST /cg-rag/vision/agentic 是,模型自行检索
在 Agent / Claude / Cursor 里当工具用 MCP 取决于调用的工具

没想好就从 /cg-rag/rag 开始,它是最常用的一条。

五分钟上手

快速开始 是一条从健康检查到第一个答案、第一张图片的可复制路径,每一步都给了预期输出。

想直接抄能跑的代码,去 常见任务,那里有 curl、Python、JavaScript 三种写法。

报错了先看 问题排查,按现象查原因。

三个需要先知道的概念

scope(检索范围) 决定在哪个语料库里找。usual 是常用规范,最快;full 是全库,最全;usual_plus_law 额外包含常用法律。不确定就用 full

constrained generation(受约束生成) 是 CG_RAG 的默认回答方式:模型不自由写作,只从检索到的候选条文里挑序号,服务端再按序号拼出答案。这样答案里的每一条都能追回原文,模型编不出不存在的条款。

profile fingerprint 是语料 + 索引 + 模型配置的指纹,它进入缓存 key。换了索引或配置之后,旧缓存不会被误命中。

完整文档

默认地址

HTTP: http://127.0.0.1:8864/cg-rag
MCP:  http://127.0.0.1:8864/cg-rag/mcp/

端口是仓库启动脚本的默认值。生产环境应通过内网或反向代理访问 CG_RAG;不要把它直接暴露到公网,也不要让调用方直连模型 provider。