@crvouga/mockingbird-service-llamacloud

中文文档
3.11.0发布于 2026/11/11MITTypeScriptES Module构建来源已验证近 30 天下载 1.6万

LlamaCloud平台 API 的状态仿真器:项目和管线检查,管线文件,以及确定性(标注或期限重叠)取回,对照官方 lama cloud services SDK进行校验.

中文使用文档
文档目录9 节
  1. 安装
  2. 使用量
  3. 路线
  4. 检索
  5. Python 聊天 SDK: 经核实的呼叫序列
  6. 管理员(超过标准合同)
  7. 命名空间
  8. 故意不模拟
  9. API 密码

@crvouga/ mockingbird-service-lamacloud (中文(简体) )

本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .

国家模拟器 拉玛克卢德 用于测试套件的平台 API(LlamaIndex管理索引): 项目和管道查询、管道文件(清单、获取、插入、更新、删除),以及 检索。 检索是决定性的:当测试设定一个时,一个脚本答案,否则就是 周期重叠对编审中文件的排名。 聊天知识工具 (单位:千美元)search_health_knowledge, (中文(简体) ), search_faq)和EMR聊天人-admin 知识 CRUD 运行对手 它没有供应商账户,没有嵌入,也没有决定.

  • 行动范围: 支助
  • 合同openapi.yaml()由Python客户端的官方电线模型手写 我们的后端适配器.

安装

npm install -D @crvouga/mockingbird-service-llamacloud

仅限无害环境管理。 节点 22或 Bun 1.2. 无土生属地. 给它服务 npx mockingbird-llamacloud serve, (中文(简体) ), createServer 从 ./server (节点),或 createRuntime 与 任何获取服务器.

使用量

npx mockingbird-llamacloud serve --port 8805 --index acme-member-kb-v1 --project Default

对准应用程序:

消费者设置
后端 LlamaCloudKnowledgeAdapterLLAMACLOUD_BASE_URL=http://127.0.0.1:8805/api/v1 (接缝) G-L1级:适配器硬码 https://api.cloud.llamaindex.ai/api/v1 今天), 加上 LLAMACLOUD_API_KEY (任何价值)和 LLAMACLOUD_INDEX_NAME 编号 : LLAMACLOUD_PROJECT_NAME 匹配种子管道
Python 聊天服务( S)llama_cloud_services(中文(简体) )LLAMA_CLOUD_BASE_URL=http://127.0.0.1:8805 (无) /api/v1;下面核实,不需要更改代码)
import LlamaCloud from "@llamaindex/llama-cloud"
import { createRuntime } from "@crvouga/mockingbird-service-llamacloud"

// Test setup: a pipeline, and what retrieval answers for queries mentioning "apob".
// Anything else is ranked by term overlap over the documents the app upserted.
const emulator = createRuntime({ pipelines: [{ name: "acme-member-kb-v1", projectName: "Default" }] })
await emulator.fetch(
  new Request("http://llamacloud.test/__admin/retrieval", {
    method: "PUT",
    headers: { "content-type": "application/json" },
    body: JSON.stringify({
      match: { contains: "apob" },
      nodes: [{ text: "ApoB counts atherogenic particles.", score: 0.92, metadata: { file_name: "apob.md" } }],
    }),
  }),
)

// The LlamaCloud SDK your application already uses. Only its fetch changes: requests reach
// the emulator in this process instead of api.cloud.llamaindex.ai.
const llama = new LlamaCloud({
  apiKey: "llx-mockingbird",
  fetch: (url: RequestInfo | URL, init?: RequestInit) => emulator.fetch(new Request(url, init)),
})
const [pipeline] = await llama.pipelines.list({ project_name: "Default", pipeline_name: "acme-member-kb-v1" })
const { retrieval_nodes } = await llama.pipelines.retrieve(pipeline?.id ?? "", { query: "What does ApoB measure?" })
console.log(retrieval_nodes[0]?.node.text, retrieval_nodes[0]?.score) // ApoB counts atherogenic particles. 0.92

路线

全部在 Authorization: Bearer <key> (任何非空密钥,除非 apiKeys 已设定). 错误是 FastAPI 形状 : {"detail": "…"},以及422个 {"detail": [{loc, msg, type}]}。 。 。 .

路线行为
GET /api/v1/projects?project_name=确切名称的项目([] (没有).
GET /api/v1/projects/{id}一个项目,或404个.
GET /api/v1/pipelines?project_name=&project_id=&pipeline_name=&pipeline_type=匹配每个给定过滤器的管道 : [{id, name, project_id, pipeline_type: "MANAGED", embedding_config, status: "CREATED", …}]后端过滤器 project_name 选择 name == LLAMACLOUD_INDEX_NAME。 。 。 .
GET /api/v1/pipelines/{id}一个管道,或404.
POST /api/v1/pipelines/{id}/retrieve{query, dense_similarity_top_k?, …} → {pipeline_id, retrieval_nodes: [{node: {id_, text, metadata, extra_info, …}, score}], …}。上克默认为 5.
GET /api/v1/pipelines/{id}/documents?skip=&limit=[{id, text, metadata, …}],最古老的第一.
PUT /api/v1/pipelines/{id}/documents升级 [{id?, text, metadata}] 由 id(后端使用 sult;缺失的 id 获得UUID. 回答存储的文件.
POST /api/v1/pipelines/{id}/documents与 PUT (SDK ) 相同 insert) (中文(简体) ).
GET /api/v1/pipelines/{id}/documents/{docId}一份文件,或404.
DELETE /api/v1/pipelines/{id}/documents/{docId}204,或为不明文件的404.

检索

  1. 作是语已. PUT /__admin/retrieval {match: {contains?, pipeline?}, nodes: [{text, score?, metadata?}]} 增加一条规则。 最近增加的规则 contains 在查询中显示 (对案件不敏感) pipeline (身份或名称)匹配其 nodes 逐字记录, 被截至上克. 一个没有分数的节点得到1,0.9,0.8,. . scripted_<n>。 。 。 .
  2. 默认: 术语重叠 . 术语是小写字母数字词 2+ 字符减 常见止语. 文档的分数是查询中在它的 文本或内容 metadata.title,四舍五入到4个位置。 不匹配的文件被丢弃并绑定 保持插入顺序。 每个文档都是一个节点(id_: "<docId>_0")及其元数据收益 document_id 财务报告和审定财务报表 pipeline_id,后端读取的字段.

节点元数据在两者下发送 metadata (通过我们的后端阅读)和 extra_info (单位:千美元) 官方客户端模型的字段名). 没有身份证明, 谁是真正的API 发送是未经证实的.

Python 聊天 SDK: 经核实的呼叫序列

目录中将此列为未核实. 现已与安装的SDK核对: 拉玛-云层服务 0.6.88 (中文(简体) )拉玛-云 0.1.45 (中文(简体) ) 和马拉马指数核心 0.14.10 (中文(简体) ),则 版本消费者应用的Python聊天服务针. 车轮被读取 llamacloud.sdk.test.ts 运行服务的真实 LlamaCloudClient 在真实的 SDK 相对 模拟器. LlamaCloudIndex(name, project_name=…, api_key=…) 接下来是 .as_retriever(similarity_top_k=5).aretrieve(q) 发出这些呼吁:

  1. GET /api/v1/projects?project_name=<name>数字 : resolve_project。没有匹配加价 No project found with name …,并且不止一场比赛也提高了.
  2. GET /api/v1/pipelines?project_id=<id>&pipeline_name=<index>&pipeline_type=MANAGED数字 : resolve_pipeline。没有匹配加价 Unknown index name …。 。 。 .
  3. GET /api/v1/pipelines/{id},则 GET /api/v1/projects/{project_id}数字 : as_retriever() 构建一个 LlamaCloudRetriever(project_id=…, pipeline_id=…),它再次通过id解决了两者.
  4. POST /api/v1/pipelines/{id}/retrieve {query, dense_similarity_top_k: 5}。 。 。 .

基础 URL 来源 base_url 或者说 LLAMA_CLOUD_BASE_URL后退为 https://api.cloud.llamaindex.ai (单位:千美元)llama_index.core.ingestion.api_utils.get_client) (中文(简体) ). 这个 客户端没有通过 base_url,所以设置环境变量就够了。 SDK的烟花型号 严格: Pipeline.status 必须是 CREATED 或者说 DELETING,以及 embedding_config 实值 所需经费。 模拟器既能满足两者,而SDK测试如果形状漂移会失败.

差异 : python 客户端 llamacloud_project_name 默认为 "default" (小写. 这个 后端的默认值是 "Default". 项目检查准确,所以需要 LLAMACLOUD_PROJECT_NAME=Default,或种子 default 项目。 否则,客户会退化 以空取结果表示,接受测试涵盖这些结果.

运行 SDK 测试 :

uv venv /tmp/llama && VIRTUAL_ENV=/tmp/llama uv pip install \
  llama-cloud-services==0.6.88 llama-cloud==0.1.45 llama-index-core==0.14.10
MOCKINGBIRD_LLAMACLOUD_PYTHON=/tmp/llama/bin/python \
  MOCKINGBIRD_LLAMACLOUD_PY_CLIENT=/path/to/llamacloud_client.py bun test llamacloud.sdk

管理员(超过标准合同)

路线效果
GET /__admin/pipelines命名空间的项目和管道.
PUT /__admin/pipelines{name, projectName?} 建立管理下的管道,必要时建立其项目。 ids是来自取名空间和取名的稳定的UUID.
GET /__admin/pipelines/:pipeline/documents一个管道的文件, 通过身份或名称.
GET /__admin/retrieval剧本规则,最新第一.
PUT /__admin/retrieval添加一条规则, 或全部替换为 {rules: [...]} (列出的第一个胜出).
DELETE /__admin/retrieval清规取道.
GET/PUT /__admin/settings{apiKeys?: string[], defaultTopK?: number} 呼叫的命名空间.

错误预设( E)POST /__admin/faults {"preset": "<name>", "count"?: n}· ; GET /__admin/faults/presets:

预设效果
index_missing管道搜索答案 []。 。 。 .
retrieval_empty检索解答节点.
documents_unexpected_shape文档列表回答对象而不是数组.
unauthorized每个呼叫都答401.
rate_limited每通通电话答429.
server_error每召答五百个.
slow_retrieval检索延迟 3 s, 或 latencyMs 当给予.

命名空间

消费者都无法添加信头,因此可以选择三个方式:

  • 页:1 x-mockingbird-namespace 页眉;
  • (单位:千美元) /__admin/ns/<name> 基准 URL 前缀;
  • aPI 密钥 : PUT /__admin/credentials {"credentials": {"<LLAMACLOUD_API_KEY>": "<namespace>"}}。 。 。 .

每个命名空间从种子管道开始,默认情况下 acme-member-kb-v1 在项目中 Default。请求的日记记录了操作编号、状态和管道及文件编号。 这个 从不记录查询、文档文本或标题.

故意不模拟

  • 真实的检索质量:没有嵌入,分块,混合搜索,重新排序,元数据过滤器, 图像或页面图节点,或 retrieval_mode 出行路线. 文件总是一个节点.
  • 管道摄入状态和同步任务. 可立即取回上层文档.
  • 文件上传( E)/api/v1/files, (中文(简体) ), pipeline_files),数据源,解析(LlamaParse)和 提取.
  • 通过API创建项目或管道. 使用种子或 PUT /__admin/pipelines。 。 。 .
  • 每个命名空间一个以上的组织.

API 密码

导出仁爱说明
LlamaCloudAPI类进程模拟器 : fetch(request), (中文(简体) ), reset(), (中文(简体) ), documents(pipeline), (中文(简体) ), addRule(rule), (中文(简体) ), rules(), (中文(简体) ), clearRules(), (中文(简体) ), state选项: sqlite, (中文(简体) ), now, (中文(简体) ), namespace, (中文(简体) ), pipelines, (中文(简体) ), settings。 。 。 .
createRuntime函数全面服务合同的仿真器(保健、管理员、命名空间、证书、预设)。 选项 : pipelines, (中文(简体) ), settings, (中文(简体) ), clock, (中文(简体) ), seed, (中文(简体) ), adminKey, (中文(简体) ), onLog, (中文(简体) ), sqlite。 。 。 .
LLAMACLOUD_PRESETS对象每个命名的断层预设.
LLAMACLOUD_NAMESPACE字符串服务名称, "llamacloud"。 。 。 .
DEFAULT_PIPELINES, (中文(简体) ), DEFAULT_PIPELINE_NAME, (中文(简体) ), DEFAULT_PROJECT_NAME, (中文(简体) ), DEFAULT_SETTINGS数值种子: acme-member-kb-v1 内 Default-k5,任何钥匙.
rank, (中文(简体) ), terms函数默认的名词重叠排名及其标注符.
uuidFrom函数用于项目、管道和文件编号的稳定UUID衍生物.
document, (中文(简体) ), operationIds, (中文(简体) ), supportedOperationIds数值销售商为OpenAPI合同及其业务代号.
createServer, (中文(简体) ), serveTarget, (中文(简体) ), DEFAULT_PORT (单位:千美元)./server(中文(简体) )节点服务过来 node:http; 数据 serve CLI目标(--index, (中文(简体) ), --project, (中文(简体) ), --api-key; 第8805号口.

部分 嘲笑鸟。 。 。 .

版本与发布记录

@crvouga/mockingbird-service-llamacloud 共发布 42 个版本,首次发布于 2026/09/23;过去 12 个月发布了 42 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
3.11.0latest2026/11/11今天
3.10.92026/11/038 天前
3.10.82026/11/038 天前
3.10.72026/11/038 天前
3.10.62026/11/038 天前
3.10.52026/11/038 天前

关于 @crvouga/mockingbird-service-llamacloud 的常见问题

@crvouga/mockingbird-service-llamacloud 是什么?

LlamaCloud平台 API 的状态仿真器:项目和管线检查,管线文件,以及确定性(标注或期限重叠)取回,对照官方 lama cloud services SDK进行校验.

如何安装 @crvouga/mockingbird-service-llamacloud?

在项目目录运行 npm install @crvouga/mockingbird-service-llamacloud,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 mockingbird-llamacloud,可以用 npx mockingbird-llamacloud 直接运行。

@crvouga/mockingbird-service-llamacloud 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@crvouga/mockingbird-service-llamacloud 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@crvouga/mockingbird-service-llamacloud 可以商用吗?

@crvouga/mockingbird-service-llamacloud 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@crvouga/mockingbird-service-llamacloud 的下载量有多少?

根据 npm 官方下载统计,@crvouga/mockingbird-service-llamacloud 在 2026/10/11 – 2026/11/09 这 30 天内被下载 16,221 次,日均约 541 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@crvouga/mockingbird-service-llamacloud 还在维护吗?

最新版本 3.11.0 发布于 2026/11/11(今天);至今共发布 42 个版本,其中过去 12 个月发布了 42 个;首次发布于 2026/09/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。