推理
推理
推理把一个提示词变成一个结构化输出——一次模型调用,或一小串固定调用。它是 窄能力 窄能力:没有循环、没有工具、没有状态。当工作需要多步推理与工具调用时,那是 Agent,不是推理。
单步推理
一次模型调用返回一个结构化输出——对记录分类、从文档中抽取字段,或总结一行数据。
多步推理
一小串固定的调用链,每一步喂给下一步——最终仍是一个结构化输出。链路由编写者决定,而非模型。
结构化输出
结果对照 Effect Schema schema 校验,调用方拿到的是类型化数据——绝不需要解析的自由文本。
推理实战
一次调用进,一个结构化值出——经过 schema 校验、可直接使用的结果:
import { Schema } from 'effect';
import { defineQueryHandler } from '@norbital-ai/bolt/authoring';
const ReviewOutcome = Schema.Struct({
approved: Schema.Boolean,
reason: Schema.String,
suggested_priority: Schema.Literals('low', 'medium', 'high')
});
export default defineQueryHandler({
description: 'Reviews one purchase request.',
schema: Schema.Struct({ request_id: Schema.String }),
handler: ({ request_id }, api) =>
Effect.gen(function* () {
// One call in, one structured value out — validated, typed, never freeform
return yield* api.infer({
schema: ReviewOutcome,
prompt: 'Review this purchase request.'
});
})
}); ai 设施端口
模型访问经由 ai 设施端口:Bolt 定义契约,宿主在运行时绑定具体提供商,租户代码永远看不到凭据。完整的端口列表见 设施 。
会话即数据
每次对话都是一个租户自有的聚合: chat_session ——其中的顺序消息、嵌套轮次、标题、状态和用量会像其他集合一样原子同步。
推理 vs Agent
推理是输入一个提示词、输出一个结构化结果。 Agents 是 Agentic 工作负载:一个跨多步推理的循环、调用工具、读写集合,还能起草源码。Agent 底层使用推理——但它们是不同的编写面与不同的运行时。