toolgarden.xyz
EN

Needle 2 结构化数据

调用 Needle 2,按 JSON Schema 将自然语言提取为结构化数据,结果由受约束的工具调用返回。

输入文本

0 个字符

结构化 Schema

JSON Schema object

开发环境默认通过同源代理连接本机 playground;远程服务请填写兼容 /complete 的地址。

生成结果

生成结果将显示在这里

文本会发送到你填写的 endpoint;请确认该服务的隐私和跨域配置。

工具说明

Needle 2 把结构化提取建模为一次工具调用:页面将记录 Schema 包装成唯一工具,把原文作为 query 发送给兼容 endpoint,再从 function_calls[].arguments 读取结果。这样输出结构由 Schema 约束,而不是先生成自由文本再尝试修复 JSON。

本页连接的是外部 Needle 2 服务,默认地址是本机 Needle playground。文本不会经过 ToolGarden 自己的服务器,但会发送到你填写的 endpoint;正式使用前请确认服务部署、CORS、访问控制和敏感数据策略。

使用步骤

  1. 定义记录形状

    在 Schema 面板声明根 type 为 object,并为要提取的字段填写 properties、类型、枚举和描述。

  2. 提供原始文本

    把订单、邮件、表单或日志粘贴到输入区;只写原文中确实出现的信息,避免让模型猜测。

  3. 生成并复核结果

    确认 endpoint 可访问后点击生成,查看 arguments、置信度和推理说明;低置信度或缺失字段应回到原文人工复核。

输入与输出示例

Schema 只声明需要的字段;Needle 2 会把输入文本映射到这个记录,而不是返回聊天答案。

输入文本
订单 A-1042 属于李明,总额 328 元,已支付。
结构化结果
{
  "order_id": "A-1042",
  "customer": "李明",
  "total": 328,
  "status": "paid"
}

支持范围与限制

请求契约
POST 到兼容的 /complete endpoint,发送 query 和 tools。
工具形状
页面把记录 Schema 包装为名为 structured_data 的唯一工具。
结果字段
结构化数据来自 function_calls[0].arguments。
约束方式
Needle 2 使用 schema 编译的字节级 grammar 约束工具调用。
离线能力
模型本身可在端侧运行,但本页面的默认连接依赖你启动的 playground 服务。
安全边界
endpoint、CORS、认证和数据留存由所连接的服务负责,页面不代替服务端鉴权。

典型使用场景

  • 订单与收据抽取

    从客服邮件、收据或订单描述中抽取编号、金额、币种、客户和明细,交给后续业务流程。

  • 表单与邮件归档

    把半结构化的报名、预约或通知文本统一成固定记录,减少手工录入。

  • 设备指令与工具路由

    将自然语言设备请求映射为受约束的函数参数;真正执行动作前仍应加入权限检查和人工确认。

使用前需要知道的事

  • Needle 2 的提取契约是单工具调用,不是通用聊天模型;没有匹配工具时可能返回空的 function_calls。
  • Schema 越明确越容易得到稳定结果,建议补充字段 description、enum、required、范围和数组 items。
  • 置信度是辅助信号,不等于业务正确性;金额、身份、权限和其他高风险字段仍要保留原文并人工复核。
  • 本地 playground 默认监听 127.0.0.1:7860;浏览器跨端口请求还需要 endpoint 服务返回允许当前来源的 CORS 响应头。

相关概念

function call
模型选中的工具及其参数对象;本工具从第一个调用的 arguments 读取结构化结果。
confidence
Needle 2 返回的置信度辅助指标,用于决定是否接受结果或升级到更强的处理流程。

常见问题

为什么这里需要 JSON Schema?
Needle 2 将结构化提取实现为唯一工具调用,Schema 同时定义字段、类型和可选约束,模型只能在这个结构里填充 arguments。
生成结果会上传到 ToolGarden 吗?
不会经过 ToolGarden 自己的服务器;浏览器会直接请求页面中填写的 endpoint。默认 endpoint 是本机服务,但远程地址会收到文本,请先确认对方的隐私策略。