Skip to content

@codesoul-co/hypha-inference / reasoning

模块用法

用于使用该功能边界的公共契约与操作。Reasoning 模块公开 1 类、6 接口、6 类型。

从包入口导入

ts
import {
  ReasoningOrchestrator,
} from '@codesoul-co/hypha-inference';

import type {
  ReasoningBudget,
  ReasoningOptions,
  ReasoningRequest,
  ThoughtEdge,
  ThoughtGraph,
  ThoughtNode,
  ReasoningAggregation,
  ReasoningMethod,
} from '@codesoul-co/hypha-inference';

// 完整导出列表见下方。

使用要点

  • 12 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 1 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。

公共导出

Symbol种类签名说明
ReasoningOrchestratornew ReasoningOrchestrator(provider: InferenceProvider, id?: string, registry?: ReasoningStrategyRegistry): ReasoningOrchestratorReasoning Orchestrator 类,共公开 5 个构造函数或成员;精确签名见本条目的声明与成员表。
ReasoningBudget接口interface ReasoningBudgetReasoning Budget 接口,共包含 3 个公开字段或方法。
ReasoningOptions接口interface ReasoningOptionsReasoning Options 接口,共包含 14 个公开字段或方法。
ReasoningRequest接口interface ReasoningRequest extends InferenceRequest<TInput>Reasoning Request 接口,共包含 19 个公开字段或方法。
ThoughtEdge接口interface ThoughtEdgeThought Edge 接口,共包含 3 个公开字段或方法。
ThoughtGraph接口interface ThoughtGraphThought Graph 接口,共包含 5 个公开字段或方法。
ThoughtNode接口interface ThoughtNodeThought Node 接口,共包含 9 个公开字段或方法。
ReasoningAggregation类型type ReasoningAggregation = 'first' | 'majority_vote' | 'score' | 'llm_judge'Reasoning Aggregation 公共类型别名;完整类型表达式见声明。
ReasoningMethod类型type ReasoningMethod = 'direct' | 'cot' | 'tot' | 'got' | 'self_consistency'Reasoning Method 公共类型别名;完整类型表达式见声明。
ReasoningTraceEvent类型type ReasoningTraceEvent = { type: 'reasoning.strategy.started'; method: ReasoningMethod; strategyId?: string; requestId: string; } | { type: 'reasoning.node.generated'; method: ReasoningMethod; node: ThoughtNode; } | { type: 'reasoning.node.evaluated'; method: ReasoningMethod; node: ThoughtNode; } | { type: 'reasoning.node.selected'; method: ReasoningMethod; node: ThoughtNode; } | { type: 'reasoning.strategy.comp...Reasoning Trace Event 公共类型别名;完整类型表达式见声明。
ReasoningTraceSink类型type ReasoningTraceSink = (event: ReasoningTraceEvent) => Promise<void> | voidReasoning Trace Sink 公共类型别名;完整类型表达式见声明。
ThoughtEdgeType类型type ThoughtEdgeType = 'expand' | 'merge' | 'refine' | 'criticize' | 'validate'Thought Edge Type 公共类型别名;完整类型表达式见声明。
ThoughtNodeStatus类型type ThoughtNodeStatus = 'candidate' | 'evaluated' | 'selected' | 'rejected'Thought Node Status 公共类型别名;完整类型表达式见声明。

ReasoningOrchestrator

Reasoning Orchestrator 类,共公开 5 个构造函数或成员;精确签名见本条目的声明与成员表。

  • 种类: 类
  • 导入: import { ReasoningOrchestrator } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export declare class ReasoningOrchestrator implements InferenceProvider {
    readonly id: string;
    readonly registry: ReasoningStrategyRegistry;
    constructor(provider: InferenceProvider, id?: string, registry?: ReasoningStrategyRegistry);
    infer(request: ReasoningRequest): Promise<InferenceResponse>;
    stream(request: ReasoningRequest): AsyncIterable<InferenceResponse>;
}

公开成员

成员种类签名说明
constructor构造函数(provider: InferenceProvider, id?: string, registry?: ReasoningStrategyRegistry): ReasoningOrchestrator创建该类的实例。
id属性readonly id: string公开属性;类型、只读和可选状态以签名列为准。
infer方法infer(request: ReasoningRequest): Promise<InferenceResponse>公开方法;参数与返回类型以签名列为准。
registry属性readonly registry: ReasoningStrategyRegistry公开属性;类型、只读和可选状态以签名列为准。
stream方法stream(request: ReasoningRequest): AsyncIterable<InferenceResponse>公开方法;参数与返回类型以签名列为准。

ReasoningBudget

Reasoning Budget 接口,共包含 3 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ReasoningBudget } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ReasoningBudget {
    maxModelCalls?: number;
    maxNodes?: number;
    timeoutMs?: number;
}

契约成员

成员种类签名说明
maxModelCalls属性maxModelCalls?: number公开属性;类型、只读和可选状态以签名列为准。
maxNodes属性maxNodes?: number公开属性;类型、只读和可选状态以签名列为准。
timeoutMs属性timeoutMs?: number公开属性;类型、只读和可选状态以签名列为准。

ReasoningOptions

Reasoning Options 接口,共包含 14 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ReasoningOptions } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ReasoningOptions {
    method: ReasoningMethod;
    strategyRef?: string;
    branches?: number;
    maxDepth?: number;
    beamWidth?: number;
    maxNodes?: number;
    revealReasoning?: boolean;
    aggregation?: ReasoningAggregation;
    evaluatorRef?: string;
    strategyVersion?: string;
    budget?: ReasoningBudget;
    evaluator?: (responses: InferenceResponse[]) => Promise<InferenceResponse>;
    scorer?: (response: InferenceResponse, node: ThoughtNode) => Promise<number> | number;
    trace?: ReasoningTraceSink;
}

契约成员

成员种类签名说明
aggregation属性aggregation?: ReasoningAggregation公开属性;类型、只读和可选状态以签名列为准。
beamWidth属性beamWidth?: number公开属性;类型、只读和可选状态以签名列为准。
branches属性branches?: number公开属性;类型、只读和可选状态以签名列为准。
budget属性budget?: ReasoningBudget公开属性;类型、只读和可选状态以签名列为准。
evaluator方法evaluator?(responses: InferenceResponse[]): Promise<InferenceResponse>公开方法;参数与返回类型以签名列为准。
evaluatorRef属性evaluatorRef?: string公开属性;类型、只读和可选状态以签名列为准。
maxDepth属性maxDepth?: number公开属性;类型、只读和可选状态以签名列为准。
maxNodes属性maxNodes?: number公开属性;类型、只读和可选状态以签名列为准。
method属性method: ReasoningMethod公开属性;类型、只读和可选状态以签名列为准。
revealReasoning属性revealReasoning?: boolean公开属性;类型、只读和可选状态以签名列为准。
scorer方法scorer?(response: InferenceResponse, node: ThoughtNode): Promise<number> | number公开方法;参数与返回类型以签名列为准。
strategyRef属性strategyRef?: string公开属性;类型、只读和可选状态以签名列为准。
strategyVersion属性strategyVersion?: string公开属性;类型、只读和可选状态以签名列为准。
trace方法trace?(event: ReasoningTraceEvent): Promise<void> | void公开方法;参数与返回类型以签名列为准。

ReasoningRequest

Reasoning Request 接口,共包含 19 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ReasoningRequest } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ReasoningRequest<TInput = unknown> extends InferenceRequest<TInput> {
    reasoning?: ReasoningOptions;
}

契约成员

成员种类签名说明
agentId属性agentId?: string公开属性;类型、只读和可选状态以签名列为准。
backendId属性backendId?: string公开属性;类型、只读和可选状态以签名列为准。
cachePolicy属性cachePolicy?: InferenceCachePolicy公开属性;类型、只读和可选状态以签名列为准。
cacheScope属性cacheScope?: InferenceCacheScope公开属性;类型、只读和可选状态以签名列为准。
input属性input: TInput公开属性;类型、只读和可选状态以签名列为准。
kvCache属性kvCache?: KvCacheRef公开属性;类型、只读和可选状态以签名列为准。
metadata属性metadata?: Record<string, unknown>公开属性;类型、只读和可选状态以签名列为准。
modelAlias属性modelAlias: string公开属性;类型、只读和可选状态以签名列为准。
options属性options?: InferenceGenerationOptions公开属性;类型、只读和可选状态以签名列为准。
prefix属性prefix?: PrefixCacheRef公开属性;类型、只读和可选状态以签名列为准。
providerId属性providerId?: string公开属性;类型、只读和可选状态以签名列为准。
reasoning属性reasoning?: ReasoningOptions公开属性;类型、只读和可选状态以签名列为准。
resolvedKvCacheValue属性resolvedKvCacheValue?: unknown公开属性;类型、只读和可选状态以签名列为准。
resolvedPrefixContent属性resolvedPrefixContent?: string公开属性;类型、只读和可选状态以签名列为准。
runId属性runId: string公开属性;类型、只读和可选状态以签名列为准。
sessionId属性sessionId?: string公开属性;类型、只读和可选状态以签名列为准。
stepId属性stepId: string公开属性;类型、只读和可选状态以签名列为准。
tools属性tools?: InferenceToolDescriptor[]公开属性;类型、只读和可选状态以签名列为准。
trace属性trace?: boolean公开属性;类型、只读和可选状态以签名列为准。

ThoughtEdge

Thought Edge 接口,共包含 3 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ThoughtEdge } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ThoughtEdge {
    from: string;
    to: string;
    type: ThoughtEdgeType;
}

契约成员

成员种类签名说明
from属性from: string公开属性;类型、只读和可选状态以签名列为准。
to属性to: string公开属性;类型、只读和可选状态以签名列为准。
type属性type: ThoughtEdgeType公开属性;类型、只读和可选状态以签名列为准。

ThoughtGraph

Thought Graph 接口,共包含 5 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ThoughtGraph } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ThoughtGraph {
    id: string;
    method: Extract<ReasoningMethod, 'tot' | 'got'>;
    nodes: ThoughtNode[];
    edges: ThoughtEdge[];
    selectedNodeId?: string;
}

契约成员

成员种类签名说明
edges属性edges: ThoughtEdge[]公开属性;类型、只读和可选状态以签名列为准。
id属性id: string公开属性;类型、只读和可选状态以签名列为准。
method属性method: "tot" | "got"公开属性;类型、只读和可选状态以签名列为准。
nodes属性nodes: ThoughtNode[]公开属性;类型、只读和可选状态以签名列为准。
selectedNodeId属性selectedNodeId?: string公开属性;类型、只读和可选状态以签名列为准。

ThoughtNode

Thought Node 接口,共包含 9 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { ThoughtNode } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export interface ThoughtNode {
    id: string;
    parentIds: string[];
    depth: number;
    branchIndex: number;
    status: ThoughtNodeStatus;
    score?: number;
    outputHash?: string;
    responseId?: string;
    metadata?: Record<string, unknown>;
}

契约成员

成员种类签名说明
branchIndex属性branchIndex: number公开属性;类型、只读和可选状态以签名列为准。
depth属性depth: number公开属性;类型、只读和可选状态以签名列为准。
id属性id: string公开属性;类型、只读和可选状态以签名列为准。
metadata属性metadata?: Record<string, unknown>公开属性;类型、只读和可选状态以签名列为准。
outputHash属性outputHash?: string公开属性;类型、只读和可选状态以签名列为准。
parentIds属性parentIds: string[]公开属性;类型、只读和可选状态以签名列为准。
responseId属性responseId?: string公开属性;类型、只读和可选状态以签名列为准。
score属性score?: number公开属性;类型、只读和可选状态以签名列为准。
status属性status: ThoughtNodeStatus公开属性;类型、只读和可选状态以签名列为准。

ReasoningAggregation

Reasoning Aggregation 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ReasoningAggregation } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ReasoningAggregation = 'first' | 'majority_vote' | 'score' | 'llm_judge';

ReasoningMethod

Reasoning Method 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ReasoningMethod } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ReasoningMethod = 'direct' | 'cot' | 'tot' | 'got' | 'self_consistency';

ReasoningTraceEvent

Reasoning Trace Event 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ReasoningTraceEvent } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ReasoningTraceEvent = {
    type: 'reasoning.strategy.started';
    method: ReasoningMethod;
    strategyId?: string;
    requestId: string;
} | {
    type: 'reasoning.node.generated';
    method: ReasoningMethod;
    node: ThoughtNode;
} | {
    type: 'reasoning.node.evaluated';
    method: ReasoningMethod;
    node: ThoughtNode;
} | {
    type: 'reasoning.node.selected';
    method: ReasoningMethod;
    node: ThoughtNode;
} | {
    type: 'reasoning.strategy.completed';
    method: ReasoningMethod;
    strategyId?: string;
    requestId: string;
    modelCalls: number;
    nodeCount: number;
};

ReasoningTraceSink

Reasoning Trace Sink 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ReasoningTraceSink } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ReasoningTraceSink = (event: ReasoningTraceEvent) => Promise<void> | void;

ThoughtEdgeType

Thought Edge Type 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ThoughtEdgeType } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ThoughtEdgeType = 'expand' | 'merge' | 'refine' | 'criticize' | 'validate';

ThoughtNodeStatus

Thought Node Status 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { ThoughtNodeStatus } from '@codesoul-co/hypha-inference';
  • 源码模块: reasoning

声明

text
export type ThoughtNodeStatus = 'candidate' | 'evaluated' | 'selected' | 'rejected';